Re: [TLS] Pull request for session hash

Ilari Liusvaara <> Fri, 07 November 2014 22:35 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id A4E5D1A1B3B for <>; Fri, 7 Nov 2014 14:35:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id E0jMYPCZZKtr for <>; Fri, 7 Nov 2014 14:35:12 -0800 (PST)
Received: from ( []) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 0E3EA1A00CF for <>; Fri, 7 Nov 2014 14:35:11 -0800 (PST)
Received: from LK-Perkele-VII ( []) by (Postfix) with ESMTP id 591DA188772; Sat, 8 Nov 2014 00:35:08 +0200 (EET)
Date: Sat, 8 Nov 2014 00:35:08 +0200
From: Ilari Liusvaara <>
To: Eric Rescorla <>
Message-ID: <20141107223508.GA23136@LK-Perkele-VII>
References: <>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <>
User-Agent: Mutt/1.5.23 (2014-03-12)
Sender: Ilari Liusvaara <>
Cc: "" <>
Subject: Re: [TLS] Pull request for session hash
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: Fri, 07 Nov 2014 22:35:14 -0000

On Fri, Nov 07, 2014 at 02:01:27PM -0800, Eric Rescorla wrote:
> I've created a preliminary pull request to adapt the session hash fix for
> TLS 1.3
> for feedback from the WG.

Quick comment: I presume "{ServerKeyShare}" in figure 2 should be
"ServerKeyShare" (i.e. not encrypted).
> Points to note:
> - IMPORTANT: Because the initial handshake messages are encrypted
>   under separate keys from the application data traffic, it seems like we
> need
>   to have 2 sets of CCS messages or none. In anticipation of removing
>   renegotiation (see PR
>   Based on conversations with Alfredo and Martin, it seemed easier
>   to remove them. Warning: analysis needed here.

I would say that from implementation safety perspective (at least for
non-D TLS) it is better to do the state transitions implicitly.

Except this could cause fun issues if ContentType is encrypted.

I favor "do it wrong and blow up at runtime" over "do it wrong and
get a security hole". Even if the first would be more complex.

(This can also be used to argue that session hash should not be
restarted on retry, not that I think repeating data is a good idea

> - I created a separate resumption master secret that is fed into the
>   key hierarchy. This makes the description of that simpler but will
>   need revisiting if we adopt either Rich's unification of session hash
>   and tickets or Karthik's PSK-as-tickets unification, but that seemed
>   like a separate issue.

Oh, on topic of multiple master secrets, which one does TLS-Extractor
get? :-)