Subject: [TLS] Buffering handshake messages for verify_data in the TLS 1.2 I-D

From: Wan-Teh Chang <[email-masked]>
Date: Wed, 27 Sep 2006 07:02:40 -0700

I have a question about verify_data in the current TLS 1.2 I-D
(draft-ietf-tls-rfc4346-bis-01.txt).

        struct {
            opaque verify_data[12];
        } Finished;

        verify_data
            PRF(master_secret, finished_label, MD5(handshake_messages) +
            SHA-1(handshake_messages)) [0..11];

I understand that verify_data is incorrectly specified -- we're
going to feed in the handshake messages directly.  But this
forces a TLS implementation to save the handshake messages until
the master secret has been computed.  In TLS 1.0/1.1, we can feed
in the handshake messages to MD5 and SHA-1 immediately and only
need to keep the "contexts" for the running MD5 and SHA-1 hash
operations around.  I didn't compared the memory usage of the two
schemes, but it's more programming work to buffer the handshake
messages until the master secret is available.

(In the NSS crypto library, the MD5 operation context is 88 bytes
and SHA-1 operation context is 160 or 248 bytes.)

Wan-Teh

_______________________________________________
TLS mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/tls