Re: [TLS] Making post-handshake messages optional in TLS 1.3 (#676)

Mike Bishop <Michael.Bishop@microsoft.com> Tue, 11 October 2016 18:21 UTC

Return-Path: <Michael.Bishop@microsoft.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 395DF12956E for <tls@ietfa.amsl.com>; Tue, 11 Oct 2016 11:21:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.021
X-Spam-Level:
X-Spam-Status: No, score=-2.021 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=microsoft.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 ON-IjgYwh_E5 for <tls@ietfa.amsl.com>; Tue, 11 Oct 2016 11:21:12 -0700 (PDT)
Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0101.outbound.protection.outlook.com [104.47.32.101]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E006E12952D for <TLS@ietf.org>; Tue, 11 Oct 2016 11:21:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=+memZ4IXjDWhmYyE8R+1RH2VItHo00uCQfA8szFk/0w=; b=NRa4AlYG+dNaxdDKYMVe4jMocduiPlsTfTEACmBtAnJelp/YTkwRLEIEmiPL+o5RIGgHRfuFXhnRrYiJIDM71+woBaZR8cCirlh5Fzze+E/qFIbyVTBbJuDZdmVKSmgvgJM0HQxNcfaLZsX2CqXWGqISWJE9AuTzry0eEXpLL3c=
Received: from BN6PR03MB2708.namprd03.prod.outlook.com (10.173.144.15) by DM2PR0301MB0846.namprd03.prod.outlook.com (10.160.215.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.659.11; Tue, 11 Oct 2016 18:21:08 +0000
Received: from BN6PR03MB2708.namprd03.prod.outlook.com ([10.173.144.15]) by BN6PR03MB2708.namprd03.prod.outlook.com ([10.173.144.15]) with mapi id 15.01.0659.020; Tue, 11 Oct 2016 18:21:08 +0000
From: Mike Bishop <Michael.Bishop@microsoft.com>
To: Andrei Popov <Andrei.Popov@microsoft.com>, Eric Rescorla <ekr@rtfm.com>, Hannes Tschofenig <hannes.tschofenig@gmx.net>
Thread-Topic: [TLS] Making post-handshake messages optional in TLS 1.3 (#676)
Thread-Index: AQHSIP/SPFMLyEzrU065iUHGJctjPaCjeWoAgAAMfQCAAAzmoIAAAEzA
Date: Tue, 11 Oct 2016 18:21:07 +0000
Message-ID: <BN6PR03MB2708347484ED81B842ADE93487DA0@BN6PR03MB2708.namprd03.prod.outlook.com>
References: <CAOjisRznhk-Fww=EnRg7zXO-zaHWyNgi0g+reRBj+y3ZOhwMhw@mail.gmail.com> <d267aa85-56fc-b7b0-dc1f-3373f3b0c563@gmx.net> <CABcZeBPooVXfF_fG8-QOfS+tkJDmGJ8uHioOkMo-GbUKOmNO0Q@mail.gmail.com> <CY1PR0301MB0842DBBF261CAF19F16896898CDA0@CY1PR0301MB0842.namprd03.prod.outlook.com>
In-Reply-To: <CY1PR0301MB0842DBBF261CAF19F16896898CDA0@CY1PR0301MB0842.namprd03.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=Michael.Bishop@microsoft.com;
x-originating-ip: [2001:4898:80e8:2::390]
x-ms-office365-filtering-correlation-id: 8f784c90-40cf-4095-eddc-08d3f2035ef4
x-microsoft-exchange-diagnostics: 1; DM2PR0301MB0846; 7:8H+Ke3iO2f0V39NzPw6x+NvjgxWdRgPf3CQHatimbJyG3Wi/lBOXHsyi9hZfoIn2+1JEqgLJrRRNoxeawq6llhnlT6MOycvFO4HEMud8LQ5UGJeiU30/8/TFoT38X8bYuZqxAU7+ahbj/z0qVIaxgf9ai7xxhz1lX8j/8h0pcWI2lHAkgKf1qfNWFctk+YOdQCLpRtjY7+2HRS5l3x2Zx65j6LWys97eZ6cgTLYScRXjJxfHGnx6a3IHqstPyrhD0l0gNl9iG1FDd0bwWLF7f11Vzrh3ovNP5D+w3fxyaC10tceHzHDjonA4z2SgUc/FdjE9PBgfuzIQi+/+cHK43IP/M6TAgu+hhTE/HQR4WZQeFCF3p88KRblKIndYyQkH
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DM2PR0301MB0846;
x-microsoft-antispam-prvs: <DM2PR0301MB0846B8E0E2B432FF2E7A0E9687DA0@DM2PR0301MB0846.namprd03.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(158342451672863)(166708455590820)(248736688235697)(21748063052155);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(61425038)(6040176)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026)(61426038)(61427038); SRVR:DM2PR0301MB0846; BCL:0; PCL:0; RULEID:; SRVR:DM2PR0301MB0846;
x-forefront-prvs: 00922518D8
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(7916002)(377454003)(199003)(189002)(24454002)(105586002)(101416001)(106356001)(99286002)(93886004)(33656002)(106116001)(19625215002)(19300405004)(76176999)(561944003)(54356999)(16236675004)(11100500001)(76576001)(2561002)(86612001)(2421001)(5001770100001)(19617315012)(97736004)(2906002)(19580395003)(8676002)(81166006)(19580405001)(81156014)(4326007)(7736002)(7906003)(50986999)(586003)(7846002)(6116002)(74316002)(10710500007)(102836003)(3660700001)(68736007)(3280700002)(8936002)(2420400007)(15650500001)(9686002)(7110500001)(189998001)(86362001)(10090500001)(87936001)(2950100002)(77096005)(2900100001)(5002640100001)(3900700001)(122556002)(7696004)(15975445007)(92566002)(5005710100001)(1511001)(10400500002)(10290500002)(8990500004)(5660300001)(19609705001)(790700001)(3826002); DIR:OUT; SFP:1102; SCL:1; SRVR:DM2PR0301MB0846; H:BN6PR03MB2708.namprd03.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
received-spf: None (protection.outlook.com: microsoft.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_BN6PR03MB2708347484ED81B842ADE93487DA0BN6PR03MB2708namp_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Oct 2016 18:21:07.9733 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0301MB0846
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/ZAfRF3yxGmrrLuqGoZciBzCHt2o>
Cc: "tls@ietf.org" <TLS@ietf.org>
Subject: Re: [TLS] Making post-handshake messages optional in TLS 1.3 (#676)
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, 11 Oct 2016 18:21:15 -0000

There are a couple of scenarios we need to keep in mind:

1.       Existing HTTP/1.1 exchanges over upgraded TLS clients.  If we need a brief RFC that says post-handshake client auth is allowed for HTTP/1.1 over TLS 1.3, that’s fine.

2.       Client authentication in HTTP/2.  Slightly longer RFC for this (but possibly the same one) that says post-handshake client auth is allowed for HTTP/2, then describing how to use the context (and new HTTP/2 frames, if needed) to bind the PHA exchange to one or more streams.

3.       Secondary server authentication in HTTP/2.  This approach still doesn’t give a clean way to do this, unless we use exporters and roll our own.  That has proven to be a little hazardous to everyone’s peace of mind, but remains something we can refine in the future.

What concerns me more, though, is the prospect that a lot of TLS implementations would simply omit support.  Obviously, it’s not used in most HTTP sessions, and you may be an implementation whose niche doesn’t require supporting it – but since the application profile allows it, you still need to know how to decline if asked.  If it’s allowed in HTTP, which I assume is a supported workload for most implementations, then it’s allowed in your application profile and therefore prohibiting it by default doesn’t seem like it buys you much.  Having a simple way to disclaim support, either at connection time or upon receiving a challenge, seems like it provides more simplicity for the implementations that want to omit it.

From: Andrei Popov
Sent: Tuesday, October 11, 2016 11:09 AM
To: Eric Rescorla <ekr@rtfm.com>;; Hannes Tschofenig <hannes.tschofenig@gmx.net>;; Mike Bishop <Michael.Bishop@microsoft.com>;
Cc: tls@ietf.org
Subject: RE: [TLS] Making post-handshake messages optional in TLS 1.3 (#676)

+ Mike who has additional concerns with this.

Cheers,

Andrei

From: TLS [mailto:tls-bounces@ietf.org] On Behalf Of Eric Rescorla
Sent: Tuesday, October 11, 2016 10:22 AM
To: Hannes Tschofenig <hannes.tschofenig@gmx.net<mailto:hannes.tschofenig@gmx.net>>
Cc: tls@ietf.org<mailto:tls@ietf.org>
Subject: Re: [TLS] Making post-handshake messages optional in TLS 1.3 (#676)

I think it would be simpler (and deal with most cases) to only allow this for specific application
profiles (we would then allow it in HTTP/H2, perhaps with some small -bis RFC).

Here is a PR for this:
https://github.com/tlswg/tls13-spec/pull/680

Andrei, would this cause you any problem? My impression was that this use case was only
about HTTP/H2.

Thanks,
-Ekr



On Tue, Oct 11, 2016 at 9:37 AM, Hannes Tschofenig <hannes.tschofenig@gmx.net<mailto:hannes.tschofenig@gmx.net>> wrote:
Hi Nick,

given my discussion with Martin in this thread
https://www.ietf.org/mail-archive/web/tls/current/msg21481.html I like
your idea of making the post-handshake messages optional since it allows
me to develop a TLS 1.3 client that is smaller in code size.

Ciao
Hannes


On 10/08/2016 03:03 AM, Nick Sullivan wrote:
> There has been a lot of discussion lately about post-handshake messages
> that do not contain application data and how to handle them. This PR is
> an attempt to make the story more explicit by adding a new
> post_handshake extension to TLS 1.3.
>
> Supporting all types of post-handshake messages can require extra
> complexity and logic, even when the features that these messages enable
> are not needed. Some types of connections/implementations don't need to
> support key updates (some unidirectional connections), session tickets
> (pure PSK implementations) and post-handshake client auth (most
> browsers). These are all currently SHOULDs in the spec and they don't
> need to be.
>
> In order to simplify the logic around dealing with post-handshake
> messages, this proposal makes support for each of these modes explicit
> via a new handshake extension. This change also makes the path to
> introducing other types of post-handshake messages in future drafts more
> explicit.
>
> PR:
> https://github.com/tlswg/tls13-spec/pull/676
>
> Nick
>
>
> _______________________________________________
> TLS mailing list
> TLS@ietf.org<mailto:TLS@ietf.org>
> https://www.ietf.org/mailman/listinfo/tls
>

_______________________________________________
TLS mailing list
TLS@ietf.org<mailto:TLS@ietf.org>
https://www.ietf.org/mailman/listinfo/tls