Re: [TLS] PRF in 1.3

Henrik Grubbström <> Wed, 06 August 2014 11:43 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id E56131A0048 for <>; Wed, 6 Aug 2014 04:43:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.7
X-Spam-Status: No, score=-1.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, MIME_8BIT_HEADER=0.3, SPF_PASS=-0.001] autolearn=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id J6p3b_acr9Gq for <>; Wed, 6 Aug 2014 04:43:17 -0700 (PDT)
Received: from ( [IPv6:2a00:1450:4010:c03::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 052741A0046 for <>; Wed, 6 Aug 2014 04:43:16 -0700 (PDT)
Received: by with SMTP id mc6so1842451lab.34 for <>; Wed, 06 Aug 2014 04:43:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=/0YEku1Te149DbVmG9BD2RSn6zeQZFmcXKrIZ3H8ZE4=; b=ad1oE6/T54FpWV9vVRsea+8Q/djlV6UvDIjJrxwG18whS5dk4oFWNL8WUQApiIxQSi wSyhzz4oKNW7nOzkeuszaI4IgZ92J2nL6c7SfetITIHH6SZ3b9iKcSQqEGg4xn/g/hTE WWEaud7hFGTRjCN04oeq3bbQslZCEMeM/VI+L0WzHOKgxg/l5qzrETKtoJuCxpLfvLHt vSwJWS4mvPMLlCrzI2NV4s/7y1FbeYEvPczX67AiweGX/BIc3AF9JbwRk7h15hp9IZxu zF+ZM+g86RUUrFvbUxfzdPD3V9RqFZpSoUI16g6J/Bnqkae1H7DYV4CNKutliXGouPYC 0h9w==
MIME-Version: 1.0
X-Received: by with SMTP id rg7mr10036311lbc.52.1407325395234; Wed, 06 Aug 2014 04:43:15 -0700 (PDT)
Received: by with HTTP; Wed, 6 Aug 2014 04:43:15 -0700 (PDT)
In-Reply-To: <>
References: <> <>
Date: Wed, 6 Aug 2014 13:43:15 +0200
Message-ID: <>
From: =?UTF-8?Q?Henrik_Grubbstr=C3=B6m?= <>
To: Michael StJohns <>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Subject: Re: [TLS] PRF in 1.3
X-Mailman-Version: 2.1.15
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, 06 Aug 2014 11:43:19 -0000

On Wed, Jul 30, 2014 at 5:51 PM, Michael StJohns <> wrote:
> On 7/28/2014 4:24 PM, Dave Garrett wrote:
> I don't believe this is the right place to start asking the questions.
> Instead, let's look at where the PRF is used and in what context, and then
> figure out whether or not what we have is good enough.


> So breaking it down:
> Is (1) secure enough to derive keys?   The construct used in TLS is similar
> to the section 5.2 construct of NIST SP800-108.  But the SP800 construct has
> one extra piece missing from this one - the L parameter which ensures that
> the key stream changes if the number of output bits change.  There's also
> expanded guidance on the context field - the equivalent values in TLS are
> currently just the client and server random.   I've got some issues with
> that - see
>, and I
> would add information about the types and lengths of the keys to be derived
> from the key stream to the context.  With those changes, a recursive based
> HMAC PRDG at the heart of the KDF is probably sufficiently secure for key
> derivation going forward.

I'd like to hear from the people that rejected P_SHA256 for the AES256
suites in RFC 5289 (which instead use P_SHA384). I suspect that it is
to avoid leaking the entire state of the PRF in the AES256 keys and/or
to avoid correlation between the client-side and server-side keys.

> The requirements for (2) (key not available until later) argues that the TLS
> PRF has to continue to be built on a hash function unless the data signed by
> (2) changes.  The discussion for (4) suggests that we can't just say that
> SHA256 will always be the value.



Henrik Grubbström                             
Roxen Internet Software AB