Re: [TLS] New drafts: adding input to the TLS master secret

Marsh Ray <> Wed, 03 February 2010 16:22 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id C302628C119 for <>; Wed, 3 Feb 2010 08:22:37 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id XkCxtFlIUcmM for <>; Wed, 3 Feb 2010 08:22:37 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 02DD53A6B30 for <>; Wed, 3 Feb 2010 08:22:37 -0800 (PST)
Received: from ([]) by with esmtpa (Exim 4.68) (envelope-from <>) id 1Nci0d-000PY6-6K; Wed, 03 Feb 2010 16:23:19 +0000
Received: from [] (localhost []) by (Postfix) with ESMTP id 0AA2064F2; Wed, 3 Feb 2010 16:23:17 +0000 (UTC)
X-Mail-Handler: MailHop Outbound by DynDNS
X-Report-Abuse-To: (see for abuse reporting information)
X-MHO-User: U2FsdGVkX18nwlbxkxzzm0/G+zySlX+BSAIHsz1eJ8c=
Message-ID: <>
Date: Wed, 03 Feb 2010 11:23:17 -0500
From: Marsh Ray <>
User-Agent: Thunderbird (Windows/20090812)
MIME-Version: 1.0
To: Paul Hoffman <>
References: <p0624089bc78922bdaddd@[]> <> <p06240813c78e116da3f6@[]> <001001caa442$beefbde0$3ccf39a0$@org> <p06240829c78e37e5a850@[]> <001101caa44b$35f6f540$a1e4dfc0$@org> <p06240831c78e4f0e15ee@[]> <> <p0624083bc78e8c1563cc@[]> <> <p0624083ec78eaacd96fa@[]> <> <p06240804c78f4cfc4ce4@[]>
In-Reply-To: <p06240804c78f4cfc4ce4@[]>
X-Enigmail-Version: 0.96.0
OpenPGP: id=1E36DBF2
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: "" <>
Subject: Re: [TLS] New drafts: adding input to the TLS master secret
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 03 Feb 2010 16:22:37 -0000

Paul Hoffman wrote:
> At 10:19 AM -0500 2/3/10, Marsh Ray wrote:
>> I was thinking of TLS 1.0, since that's what seems to be mostly
>> used.
> draft-hoffman-tls-master-secret-input explicitly says it is modifies
> TLS 1.2.

Oh, sorry I didn't see that wording.
I guess it's the "Updates: 4347, 5246" part.

> Please say whether or not you think that there is a
> cryptographic flaw in draft-hoffman-tls-master-secret-input that
> applies to TLS 1.2. If there is, then there is probably an underlying
> flaw in TLS 1.2 by itself, and that should be discussed seriously. I
> suspect that there is not.

I know of no flaw in TLS 1.2.

>> Well, you could check for duplicated extension IDs with a hash
>> table data structure that is O(1) in space and time.
> The proposal in draft-hoffman-tls-master-secret-input does not change
> this; the one-use-of-each-extension rule comes from the TLS 1.2 spec,
> not from the draft.

Hmm, I wonder how many implementations actually do it that way?

> If there are thousands of extensions that do master secret input, and
> you have an implementation that is able to do all those thousands,
> then I would agree with you. However, I believe that the complexity
> of adding the code for those thousands of extensions is probably
> higher than the complexity of your algorithm that sorts two-byte
> numbers

Good point, we only need to sort the extensions that we successfully
negotiate and that modify PRF.

> It is justified because the two sides need to know what order to add
> in the values to the master secret PRF calculation. If the spec had
> said "in the order that the extensions came in", then you would be
> complaining that you need to add a new data structure to remember the
> order that they came in. Sorting on a value that is already in the
> extension data seemed like a better choice, yes?

Oh yes, I see the need for the proposal to specify the order.

I'm just not sure I see how the proposal helps all that much if the real
bottleneck on entropy lies deeper in the protocol.

- Marsh