Re: [TLS] Cleaning up 0-RTT Signaling (ciphersuites, replays, PSK context)

Colm MacCárthaigh <colm@allcosts.net> Mon, 28 March 2016 17:13 UTC

Return-Path: <colm@allcosts.net>
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 03CDD12DC0A for <tls@ietfa.amsl.com>; Mon, 28 Mar 2016 10:13:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=allcosts-net.20150623.gappssmtp.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 HK68VdrQL6iS for <tls@ietfa.amsl.com>; Mon, 28 Mar 2016 10:13:30 -0700 (PDT)
Received: from mail-qk0-x236.google.com (mail-qk0-x236.google.com [IPv6:2607:f8b0:400d:c09::236]) (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 7F3FA12DBED for <tls@ietf.org>; Mon, 28 Mar 2016 10:13:30 -0700 (PDT)
Received: by mail-qk0-x236.google.com with SMTP id s5so120516574qkd.0 for <tls@ietf.org>; Mon, 28 Mar 2016 10:13:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=allcosts-net.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=4Mu4QGAy1CAY7xUXAAmFiCoynmWxxU3yBqRuLnN9Hqk=; b=m7cQSiMQbadn4MgLZ9mlS9zmAN5OnKSFyZBSQlb4r5E9UJTPDR+1M5c3lszKKxaDzj ckRaZ2D8/2NMieu7yDetDtKgBkHNVbWPv1iIr9nNLvD/D1Um80lSbH44gC1S9iwnaN+F YKwLllPZua/bYUh7oPLCgcFIpq9wP7HVDJvs3Hq++xFRwQh977wR9r4IWt7PPvNkk2YI ulhDMMTzPV0I4NbrNRyC1shH6AzLXwxeModXqXvE2+6+4bqRRtPoe6CCUi4GRoF9OpsV fl91m8+hTVjDHXxwoGvayCatqQ9qzuC298jkxM2ttuxg/mIZMTf0usVQMiUuJnkdtUTF foqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=4Mu4QGAy1CAY7xUXAAmFiCoynmWxxU3yBqRuLnN9Hqk=; b=MZXmZxOMMXr1S6f8pkpVdtIjTNIWwkEdQYzNt+oK1+oPsI8OY3bVZp6bZxh8Wt0l6h Cb/Aey+jKQwKMVm5XaSiSpdLqiwTr/RLWBUS9d0s4FHelMSDoELOANGrYqOv4nsysrsO NfR/PfTae898M7np7unp29lCaVQaq5Y/xK4KbbvlmrODSD+oP4KHLIDTit4nQxwHIGqR Hseyj5594JEdVghRfma/0bfW8qg0s1xHxYs2iHfDL6+VMxTICulzyVSadYYBLR49+FNa t1++fKqLEDxBbv4cgB/A6NUMsxCQl1j0zzfxQnp74fb8iSnO70QOz5Fu0G5Fc3CQNhFP OjOg==
X-Gm-Message-State: AD7BkJIijdjqQ7QfqxFfeiPFMFjwd6dOH9zdm7ytpTAXS5D8/ylQ85NZqAnU44uT1+4qlLzQJhdHvqQHXBIERA==
MIME-Version: 1.0
X-Received: by 10.13.252.197 with SMTP id m188mr14043171ywf.281.1459185209595; Mon, 28 Mar 2016 10:13:29 -0700 (PDT)
Received: by 10.129.88.137 with HTTP; Mon, 28 Mar 2016 10:13:29 -0700 (PDT)
In-Reply-To: <56F95797.2070206@akamai.com>
References: <BC748097-6833-4BEB-9282-AF278B00FB96@inria.fr> <CAAF6GDefiSCnggjgQJT3NG0DJMC2SDJ=r__npg5L6ycicuzpJQ@mail.gmail.com> <4B85487A-850B-4347-80A7-A3A4D92593E6@inria.fr> <CAAF6GDcW9aP6eYZMLCDBz=XYTOky0r+WiYWnY_Q+GVetojv0AQ@mail.gmail.com> <56F95797.2070206@akamai.com>
Date: Mon, 28 Mar 2016 10:13:29 -0700
Message-ID: <CAAF6GDd3+MJwHjzag9HzV-_aQMwBxmLcPZ3zFk-P66OjfXbWqg@mail.gmail.com>
From: Colm MacCárthaigh <colm@allcosts.net>
To: Benjamin Kaduk <bkaduk@akamai.com>
Content-Type: multipart/alternative; boundary="94eb2c06c2401493af052f1f08cf"
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/eje5-xhTcbkeLHrZwot2y0gc4AI>
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Cleaning up 0-RTT Signaling (ciphersuites, replays, PSK context)
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, 28 Mar 2016 17:13:36 -0000

On Mon, Mar 28, 2016 at 9:11 AM, Benjamin Kaduk <bkaduk@akamai.com> wrote:
>
> I understand there are good reasons to want to make the default behavior
> of a single-physical-server TLS server as secure as possible, but I think
> it's also well-understood that the more "exciting" portions of 0-RTT happen
> in a distributed setup, where there are different physical (well, maybe
> virtual) machines sharing a session ticket key, potentially in different
> data centers.  I don't think we've seen a real description of how this
> proposal for "single-use" session tickets would behave in the distributed
> setup yet.  Are you proposing to require a distributed replay cache shared
> by all machines sharing the session-ticket key?  I expect a lot of pushback
> from operators in that case, since distributed replay caches are really
> annoying to get right, let alone performant.  So then the "single-use"
> property would come with a caveat, that it's only "single use" per replay
> cache instance, and some limited number of replays become possible.
>
> Can you say more about how you envision your proposal working for these
> distributed environments?
>

> In a more general sense, it's starting to seem like we should consider the
> spectrum from "actually no replays possible" to "some small number of
> replays possible [on the order of the number of machines sharing the
> session ticket key]" and ending at "nearly unlimited (millions+) of replays
> possible".  I think avoiding the last case is a reasonable goal, but I'm
> as-yet unconvinced that the first case is achievable. Perhaps the middle
> ground is good enough...
>

I've come to the same conclusion: I don't think it's possible to eliminate
all possibility of replay - but it is possible to reduce it to a small
window, and I think there are pragmatic design steps that can be made that
reduce the idempotency risks too. I'm working on a small write-up now; will
send out later today.


-- 
Colm