Re: [TLS] Simpler backward compatibility rules for 0-RTT

Ilari Liusvaara <ilariliusvaara@welho.com> Tue, 21 June 2016 17:54 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 97CAB12D74A for <tls@ietfa.amsl.com>; Tue, 21 Jun 2016 10:54:15 -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 4g086N8TnGyz for <tls@ietfa.amsl.com>; Tue, 21 Jun 2016 10:54:14 -0700 (PDT)
Received: from welho-filter4.welho.com (welho-filter4.welho.com [83.102.41.26]) by ietfa.amsl.com (Postfix) with ESMTP id 6BD0012DB79 for <tls@ietf.org>; Tue, 21 Jun 2016 10:54:14 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by welho-filter4.welho.com (Postfix) with ESMTP id BDBDC4EFE; Tue, 21 Jun 2016 20:54:13 +0300 (EEST)
X-Virus-Scanned: Debian amavisd-new at pp.htv.fi
Received: from welho-smtp3.welho.com ([IPv6:::ffff:83.102.41.86]) by localhost (welho-filter4.welho.com [::ffff:83.102.41.26]) (amavisd-new, port 10024) with ESMTP id rgbNbwHmyoSn; Tue, 21 Jun 2016 20:54:13 +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-smtp3.welho.com (Postfix) with ESMTPSA id 873622310; Tue, 21 Jun 2016 20:54:13 +0300 (EEST)
Date: Tue, 21 Jun 2016 20:54:13 +0300
From: Ilari Liusvaara <ilariliusvaara@welho.com>
To: Ryan Hamilton <rch@google.com>
Message-ID: <20160621175413.GB2989@LK-Perkele-V2.elisa-laajakaista.fi>
References: <CABkgnnVgD2rTgdWkTEhd1b6CUpj_i7wD4-_E2Dd2=nJf1eW5RQ@mail.gmail.com> <CAJ_4DfQ1ttyF0z9vwmuq-yEvbHrh+93k3rkJ7gzgDQZoQnuUpQ@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAJ_4DfQ1ttyF0z9vwmuq-yEvbHrh+93k3rkJ7gzgDQZoQnuUpQ@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/WEWxsXz-fp2Qcn6pdaCtwM16w6o>
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Simpler backward compatibility rules for 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: Tue, 21 Jun 2016 17:54:15 -0000

On Tue, Jun 21, 2016 at 10:07:17AM -0700, Ryan Hamilton wrote:
> On Mon, Jun 20, 2016 at 6:15 PM, Martin Thomson <martin.thomson@gmail.com>
> wrote:
> 
> > David Benjamin wrote our section on 0-RTT backward compatibility to be
> > a little bit lenient about server deployment.  On consideration, I
> > think that a simpler set of rules are better:
> >
> > 1. If the server advertises support for 0-RTT, then it implies a
> > commitment to support TLS 1.3 for the duration of that advertisement.
> > 2. Therefore, if the client attempts 0-RTT, then it should reject a
> > ServerHello with TLS 1.2 or older.
> >
> 
> ​How does this affect the situation where a server might attempt to deploy
> TLS 1.3, discover a bug, and need to rollback? Does it just magically work?​

AFAIU, if one has 0-RTT-capable dynamic PSKs out there, one can only roll
back 0-RTT support, but has to wait for all the PSKs to expire beefore
being able to roll back TLS 1.3.

Of course, the period between deploying TLS 1.3 and deploying 0-RTT
should test how things work without 0-RTT (but it does not test 0-RTT
failing, which is _critical_ to work correctly).


-Ilari