Re: [TLS] Security review of TLS1.3 0-RTT

Colm MacCárthaigh <colm@allcosts.net> Fri, 19 May 2017 20:10 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 93C74129AB6 for <tls@ietfa.amsl.com>; Fri, 19 May 2017 13:10:32 -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 iq019IRf3oMY for <tls@ietfa.amsl.com>; Fri, 19 May 2017 13:10:31 -0700 (PDT)
Received: from mail-yw0-x22e.google.com (mail-yw0-x22e.google.com [IPv6:2607:f8b0:4002:c05::22e]) (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 30DCB127867 for <tls@ietf.org>; Fri, 19 May 2017 13:10:31 -0700 (PDT)
Received: by mail-yw0-x22e.google.com with SMTP id p73so28988293ywp.0 for <tls@ietf.org>; Fri, 19 May 2017 13:10:31 -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:from:date:message-id:subject:to :cc; bh=G/We2CXvLDEwa/pWnCZn7P9kZJDzk5iyFntAoDImjMY=; b=AMQpW1N6luh0mtgBMqXN0APi8W4QXZiOXktYfrSfMsw3frPgwmjPiuiSY5jYQN9jOm tjcvNA1290AE+DisTuR4snv339piLPjyH4aRM7k+8v6g7mSliP4CzJ6QB6D1k2f9B5w2 V0xQlewqdjlDj4g3GgmU+2BamItVddP6H7Y9YDd2Keoa657+V3r0hqL7scMDAnCPi/ZH TAgkf0Kk/jgJ6CW8I0Em3M+HFs1D+NAh8KbkAFl4r1b3iJpd0irHPHrbuptSxvKYLyDQ Pe1Rw+M7tDo9SOhjZwqjEd5vuNjjcR+WvJyt7rm+Jdgv6/bONST1wVR8pMqXLdVNynCN q/Ww==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=G/We2CXvLDEwa/pWnCZn7P9kZJDzk5iyFntAoDImjMY=; b=WcijNaW0fdoItkIyW7p09ku5rixgMSKv7ng93Tvd1CxYzlz9qeb3/TvKorUQLGFfEE prqrNHKAoLyccTheZx6Mp/b2kOxOrRYyht1/ESwkXnHeF3B+0QOB7OO8DMgj1+U5RaFq 8vTymDACz5QEwhTXN1fbx+Yg06fX13j08G4Cj/BwYSqEYi07TkEaYBLsmgfWa4Cg6Eiw GMxg8L8yyB/hTxQGwrQ5jSNQs4VO8OQZLn5giL4WMLUwG3+3rGss0xhdp03Ht0BfyGrz 4KOUNItEkm4aLHdcQtI0BVzSKdvATMwQ1ronLhFzH0a7/J52v8ndo0xx9U2VQwIIr9Of jwSg==
X-Gm-Message-State: AODbwcBfpqmlfJ0G3ilX5gHOryAQeplsmn1eEC2VULqso1Qo8cuXU1To aaMdoSjZp1qpjk1MzVe1ukqV4vBxrtHF
X-Received: by 10.129.152.68 with SMTP id p65mr9312498ywg.1.1495224630437; Fri, 19 May 2017 13:10:30 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.129.57.67 with HTTP; Fri, 19 May 2017 13:10:29 -0700 (PDT)
In-Reply-To: <20170519184051.GA31741@LK-Perkele-V2.elisa-laajakaista.fi>
References: <CAAF6GDcKZj9F-eKAeVj0Uw4aX_EgQ4DuJczL4=fsaFyG9Yjcgw@mail.gmail.com> <CABcZeBNcnW9zEPZ4mEje1_ejR3npNFz65rw-6qUPn7cQt1Nz9w@mail.gmail.com> <CAAF6GDe1_ih1aUShrzAHUuTzbLx6+0BdVexpGnq90RZsST8GvA@mail.gmail.com> <CABcZeBOX5NXuhgfap2S0naO9PFXv+K-+fZVPbgck6yciVnrYbQ@mail.gmail.com> <CABcZeBPuOupLTNKOtuCgOjYNdiuw571HM-pq1vNZz_8x-XX5mg@mail.gmail.com> <CABcZeBMqALJ10cU7FMUhv8k5Q=tw3yu1-5pdrKzOBM3=g5PHJw@mail.gmail.com> <20170519095316.GA30080@LK-Perkele-V2.elisa-laajakaista.fi> <CAAF6GDeuRMZx9MRynrxMp1fCvRS2jjr0vcqt0R89cJEkD6u=rQ@mail.gmail.com> <20170519184051.GA31741@LK-Perkele-V2.elisa-laajakaista.fi>
From: Colm MacCárthaigh <colm@allcosts.net>
Date: Fri, 19 May 2017 13:10:29 -0700
Message-ID: <CAAF6GDcP3_+WOB1xsc7JecpCo2-MfeuHgkN7PVrUiLweeurv2g@mail.gmail.com>
To: Ilari Liusvaara <ilariliusvaara@welho.com>
Cc: Eric Rescorla <ekr@rtfm.com>, "tls@ietf.org" <tls@ietf.org>
Content-Type: multipart/alternative; boundary="94eb2c0ba6caf50b36054fe61c47"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/j_FNHrmOfyQq1n8F723CV3NW1HA>
Subject: Re: [TLS] Security review of TLS1.3 0-RTT
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.22
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: Fri, 19 May 2017 20:10:32 -0000

On Fri, May 19, 2017 at 11:40 AM, Ilari Liusvaara <ilariliusvaara@welho.com>
wrote:

> > * In order to fully reason about when that message may later get
> received,
> > there needs to be an agreed upon time-cap for 0-RTT receipt. Agreed by
> all
> > potential middle-boxes in the pipe that may be using 0-RTT.
>
> Isn't that potentially multi-party problem if middleboxes are involved?
>

Yes; but if we can agree on a hard maximum time-window for the 0RTT
section, and all of the parties agree, it's possible for a careful client
to negotiate its way around it. Even if it's 10 seconds, this still has
some value I think.


> > And then separate to all of the above, and lower priority:
> >
> > * There's a contradiction between the obfuscated ticket age add parameter
> > and the desire to use tickets multiple times in other (non-0RTT) cases.
> We
> > can't do one without defeating the point of the other. Either remove the
> > obfuscation because it is misleading, or move it into an encrypted
> message
> > so that it is robust.
>
> The purpose of obfustication is not to hide sibling sessions. The
> client already blows its cover by using the same session ID twice. The
> purpose of obfustication is to hide the parent session.


> Are you talking about attackers being able to determine the rate of
> client clock?
>

Right now if a ticket is used multiple times, then the ticket age can be
derived (trivial cryptanalysis due to re-using the same obfuscated offset,
and because the progression of time between the ticket uses is public);
that means the parent session can be identified. So the point is defeated.

Either the one-time-pad can be used just one time (which means the ticket
can be used just once) or we should move it to an encrypted message. Or
just get rid of it and not be so misleading. But the current state is
weird, to say the least.

-- 
Colm