Re: [TLS] PRF in 1.3

Henrik Grubbström <grubba@gmail.com> Wed, 06 August 2014 11:43 UTC

Return-Path: <grubba@gmail.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E56131A0048 for <tls@ietfa.amsl.com>; Wed, 6 Aug 2014 04:43:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.7
X-Spam-Level:
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 mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J6p3b_acr9Gq for <tls@ietfa.amsl.com>; Wed, 6 Aug 2014 04:43:17 -0700 (PDT)
Received: from mail-la0-x22f.google.com (mail-la0-x22f.google.com [IPv6:2a00:1450:4010:c03::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 052741A0046 for <tls@ietf.org>; Wed, 6 Aug 2014 04:43:16 -0700 (PDT)
Received: by mail-la0-f47.google.com with SMTP id mc6so1842451lab.34 for <tls@ietf.org>; Wed, 06 Aug 2014 04:43:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; 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 10.112.225.7 with SMTP id rg7mr10036311lbc.52.1407325395234; Wed, 06 Aug 2014 04:43:15 -0700 (PDT)
Received: by 10.112.16.70 with HTTP; Wed, 6 Aug 2014 04:43:15 -0700 (PDT)
In-Reply-To: <53D9147B.1080203@nthpermutation.com>
References: <201407281624.10986.davemgarrett@gmail.com> <53D9147B.1080203@nthpermutation.com>
Date: Wed, 06 Aug 2014 13:43:15 +0200
Message-ID: <CALuAYvbW3X4TGzhzxsaj_L_90ZR0Q6+-J4-w2QLeFaX5xC9KOg@mail.gmail.com>
From: Henrik Grubbström <grubba@gmail.com>
To: Michael StJohns <msj@nthpermutation.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/YzWkZ49yrEEY5ua12MIe_piWEJU
Cc: tls@ietf.org
Subject: Re: [TLS] PRF in 1.3
X-BeenThere: tls@ietf.org
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." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Aug 2014 11:43:19 -0000

On Wed, Jul 30, 2014 at 5:51 PM, Michael StJohns <msj@nthpermutation.com> wrote:
> On 7/28/2014 4:24 PM, Dave Garrett wrote:
>>
>> https://github.com/tlswg/tls13-spec/issues/26
>>
[...]
> 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.

Agreed.

[...]
> 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
> http://tools.ietf.org/html/draft-stjohns-tls-tls13-crypto-infra-00, 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.

Agreed.

/grubba

-- 
Henrik Grubbström                                       grubba@grubba.org
Roxen Internet Software AB                              grubba@roxen.com