[TLS] 0RTT and HelloRetryRequest (Re: Narrowing the replay window)

Martin Thomson <martin.thomson@gmail.com> Wed, 30 March 2016 22:57 UTC

Return-Path: <martin.thomson@gmail.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 EFB9C12D10E for <tls@ietfa.amsl.com>; Wed, 30 Mar 2016 15:57:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 BECaSj14-dvA for <tls@ietfa.amsl.com>; Wed, 30 Mar 2016 15:57:52 -0700 (PDT)
Received: from mail-io0-x22b.google.com (mail-io0-x22b.google.com [IPv6:2607:f8b0:4001:c06::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 75A5F12D0FF for <tls@ietf.org>; Wed, 30 Mar 2016 15:57:52 -0700 (PDT)
Received: by mail-io0-x22b.google.com with SMTP id a129so86165999ioe.0 for <tls@ietf.org>; Wed, 30 Mar 2016 15:57:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:cc; bh=NQ0QHsf/jKN0710p0fZTrM5FDVL3l3jPHYSdRmYQ+z4=; b=sAjWW/cM764EoW6b0fm75P1y5WebZD5gQE6sSTZHw013fNskDUHkLVCmbtDsWrbKl2 L8+4U8U/vYn2QkBP5dBu9aU5cyZ8TVWaspzySVdpzpeJ6MIblZ6iUJFkHu6WvIlkLpoQ ZVYrE7LZ7gyVxBmWzt/qGEBJOGPF9lftgtFvvK80/Rbxluvph5YAWU2/fQ7eXMAQ8vXi pG5OHV772p/uG73I3r11RAAwdo98724OexFs21/r+TMz1PRaM3UXY5RlhXzN1stYBZus 8AHF10VVa9cBl/BomI5fYkfFiv3uFa9zVhXQumWpwP/y+fnLhfk15bSBLOjF1UaS8Vz6 8EXw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to:cc; bh=NQ0QHsf/jKN0710p0fZTrM5FDVL3l3jPHYSdRmYQ+z4=; b=J09MGcG/D+YlRpW0o+f63qs3R/W4QMF2GWAWjHruwnqV3fICjMmCme+5WoV2nLDtkp KG2aSwFVEUdFqVYJIkC0+HmVwBNE8mR/GzfmCLvuatke+AEV3VqWEdMksiay6zS6rW07 flPvrlXxfpKxO36EeStxydP3pGI0IAqxA+Zdv7gyA3kUEl4JiPz0D5C6fNguL+O2OcbP WN4kAQvzoGet8nUBsLG6NvYUf6YiezB+wa/MKasBffeTlyzuQNar6Wr7+DsP+98vA+mc m3CaidLN44jcx9rytne++U6ZFKJ+39uFZ4kvfCvKpQ3oGLQc9U57Xa1WHV/b/aYplxfO gz2A==
X-Gm-Message-State: AD7BkJLlRqvIHz6aSk7tkFiKC7pi+z66qsUBM2bTqFaXF/Ts8dgMbxz6ayO5GQJJFWTCamTUsaNVCAt5CXbfNg==
MIME-Version: 1.0
X-Received: by 10.107.34.139 with SMTP id i133mr11482031ioi.108.1459378671879; Wed, 30 Mar 2016 15:57:51 -0700 (PDT)
Received: by 10.36.43.142 with HTTP; Wed, 30 Mar 2016 15:57:51 -0700 (PDT)
Received: by 10.36.43.142 with HTTP; Wed, 30 Mar 2016 15:57:51 -0700 (PDT)
Date: Thu, 31 Mar 2016 09:57:51 +1100
Message-ID: <CABkgnnWVvpiUJMvUfMehdPC3T5ovF=ooOzP0=-TwK=L1v5SpOQ@mail.gmail.com>
From: Martin Thomson <martin.thomson@gmail.com>
To: Ilari Liusvaara <ilariliusvaara@welho.com>
Content-Type: multipart/alternative; boundary="001a11402b2454ad14052f4c13a4"
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/P5jamrrU_NVGxPHk9x0ipEdWAQY>
Cc: tls@ietf.org
Subject: [TLS] 0RTT and HelloRetryRequest (Re: Narrowing the replay window)
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: Wed, 30 Mar 2016 22:57:54 -0000

On 31 Mar 2016 5:56 AM, "Ilari Liusvaara" <ilariliusvaara@welho.com> wrote:
> Then on topic of 0-RTT, how does 0-RTT key hashes behave if
> handshake is restarted (main handshake hash continues, but
> 0-RTT hash context currently needs to be separate from the
> main context)?

Good question. I don't recall that being discussed. I see three options :

1. Continue the hash, just like in 1-RTT

2. Treat HelloRetryRequest as a denial of the entire first flight.

3. Signal the choice.

Option 2 suits best if we consider HelloRetryRequest to be a DoS feature
exclusively or at least primarily. But we have other reasons for it and I
don't think that DoS mitigation is a big factor for TCP.

I think that option 1 is easy enough, since both sides have to extend the
hash in any case. 3 is just complexity.