Re: [TLS] Remove EncryptedExtensions from 0-RTT

Ilari Liusvaara <ilariliusvaara@welho.com> Mon, 04 July 2016 12:51 UTC

Return-Path: <ilariliusvaara@welho.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BCD6812D0F7 for <tls@ietfa.amsl.com>; Mon, 4 Jul 2016 05:51:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.326
X-Spam-Level:
X-Spam-Status: No, score=-3.326 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-1.426] autolearn=ham autolearn_force=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 Y-if8EuthaCG for <tls@ietfa.amsl.com>; Mon, 4 Jul 2016 05:51:32 -0700 (PDT)
Received: from welho-filter4.welho.com (welho-filter4.welho.com [83.102.41.26]) by ietfa.amsl.com (Postfix) with ESMTP id 696F912D108 for <tls@ietf.org>; Mon, 4 Jul 2016 05:51:32 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by welho-filter4.welho.com (Postfix) with ESMTP id 241E4586E; Mon, 4 Jul 2016 15:51:31 +0300 (EEST)
X-Virus-Scanned: Debian amavisd-new at pp.htv.fi
Received: from welho-smtp2.welho.com ([IPv6:::ffff:83.102.41.85]) by localhost (welho-filter4.welho.com [::ffff:83.102.41.26]) (amavisd-new, port 10024) with ESMTP id 6r5zom2Yrnvj; Mon, 4 Jul 2016 15:51:30 +0300 (EEST)
Received: from LK-Perkele-V2 (87-100-177-32.bb.dnainternet.fi [87.100.177.32]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by welho-smtp2.welho.com (Postfix) with ESMTPSA id CB704287; Mon, 4 Jul 2016 15:51:30 +0300 (EEST)
Date: Mon, 04 Jul 2016 15:51:28 +0300
From: Ilari Liusvaara <ilariliusvaara@welho.com>
To: Eric Rescorla <ekr@rtfm.com>
Message-ID: <20160704125128.GA4287@LK-Perkele-V2.elisa-laajakaista.fi>
References: <CABkgnnVFg2iCc8eWX40+25ATE=dAw3WmndReO0ky2j1K_soLPQ@mail.gmail.com> <20160623103546.GA5287@LK-Perkele-V2.elisa-laajakaista.fi> <CAF8qwaB6EiP-O3s+pCw9wGHvAH1iFZRQ_GbNJOXwiO2LW4iCvg@mail.gmail.com> <CAF8qwaA-XVz-t8G5mos4mm9LfrVjEbh1TKy8n3uKi416t7e_MA@mail.gmail.com> <CABkgnnWEg31RrD+9-NJAg_R4oC9oPz4wWKFoxvhNJEi=9_o-Og@mail.gmail.com> <974CF78E8475CD4CA398B1FCA21C8E995655BEB2@PRN-MBX01-4.TheFacebook.com> <20160626163416.GA24381@LK-Perkele-V2.elisa-laajakaista.fi> <CABkgnnX-8p+-2jLs-ZSOA7p+4B23v3Sror5nztOsyHUtOsLs6Q@mail.gmail.com> <CABcZeBMCx21O3mk45u7SiXXutSohG15atuVrk-H9f+jE1LeDeg@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
In-Reply-To: <CABcZeBMCx21O3mk45u7SiXXutSohG15atuVrk-H9f+jE1LeDeg@mail.gmail.com>
User-Agent: Mutt/1.6.0 (2016-04-01)
Sender: ilariliusvaara@welho.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/WzJR1vnydhNDnhbLMKOU4j4YfpQ>
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Remove EncryptedExtensions from 0-RTT
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 04 Jul 2016 12:51:35 -0000

On Sun, Jul 03, 2016 at 06:00:25PM -0700, Eric Rescorla wrote:
> I believe that this is the right design.
> 
> The primary proposed use for EncryptedExtensions in the 0-RTT flight is for
> EncryptedSNI. However, I don't believe that they are actually that useful in
> this case because the design constraints for EncryptedSNI are intended to
> allow the client to encrypt the SNI to a gateway but encrypt the traffic to
> the hidden server, which means that you want the SNI to be protected with
> gateway keys, not the terminal traffic keys.
> 
> This design still allows two fairly elegant EncryptedSNI designs:
> 
> - Stuff a self-encrypted value of the SNI into the ticket label (due to
> Cedric Fournet).

Just beware of replay on the server side (figured out recently why
encrypted SNI is actually so nontrivial...)

> - Establish a ticket to the gateway server and then encrypt the ClientHello
>   that is destined for the hidden server in the 0-RTT early data flight to
> the
>   gateway, which deciphers it and passes it to the hidden server, which
>   responds with the ServerHello (due to Martin Thomson)
> 
> Both of these are more flexible than SNI in EE.

This seems to assume that the final server supports TLS 1.3 + that TLS 1.3
has hidden record types... At least if one wants to avoid double encrypt/
decrypt.

Extending to case where the final server is TLS 1.2 (or if TLS 1.3 removes
hidden record types) and not doing full second encryption/decryption seems
at least a bit harder..



-Ilari