Re: [TLS] Separate APIs for 0-RTT

Benjamin Kaduk <bkaduk@akamai.com> Tue, 13 June 2017 18:47 UTC

Return-Path: <bkaduk@akamai.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 BC09F129409 for <tls@ietfa.amsl.com>; Tue, 13 Jun 2017 11:47:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 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, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=akamai.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 QVpja3FluXtO for <tls@ietfa.amsl.com>; Tue, 13 Jun 2017 11:47:46 -0700 (PDT)
Received: from mx0b-00190b01.pphosted.com (mx0b-00190b01.pphosted.com [IPv6:2620:100:9005:57f::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E3904128B44 for <tls@ietf.org>; Tue, 13 Jun 2017 11:47:45 -0700 (PDT)
Received: from pps.filterd (m0050096.ppops.net [127.0.0.1]) by m0050096.ppops.net-00190b01. (8.16.0.21/8.16.0.21) with SMTP id v5DIlDlr008560; Tue, 13 Jun 2017 19:47:43 +0100
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akamai.com; h=subject : to : cc : references : from : message-id : date : mime-version : in-reply-to : content-type; s=jan2016.eng; bh=ugMM0dctHeQSro64oKofo13PEUWsDdGVsyVXthTFpzI=; b=eZpj1FrOa0j0HhOQ2RPWRGQD8L6d2Z0O7yeiQjc1gX7O5kbWeipViYw0qVpEa8xBICFd jhxyK0vjRveIm6L06A9LEqojdBZ5knGxJOEcdS9DVb+7DWtmbmEJOkscQJ76vPwu8tvn 0YaDEuUI5ZPh2MkqkGZKryTzG6qXNhmPo/27D+QbQ8show7wrcrOVXslWDwcUbSytbwo qdrCs4AITIj98t1N8RMC152qkR5OClMBJUCKGMYLp7Isc494oPTiarvTdioz4udGtas5 Hv9ORNmJE15faDtcd6qlwivcU9sfpBzj/g0WxwUq88v1nvmjPOnesEipIR5HC5RZJfMA qw==
Received: from prod-mail-ppoint4 ([96.6.114.87]) by m0050096.ppops.net-00190b01. with ESMTP id 2b2ndv82h1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 13 Jun 2017 19:47:43 +0100
Received: from pps.filterd (prod-mail-ppoint4.akamai.com [127.0.0.1]) by prod-mail-ppoint4.akamai.com (8.16.0.17/8.16.0.17) with SMTP id v5DIjqKu014547; Tue, 13 Jun 2017 14:47:42 -0400
Received: from prod-mail-relay15.akamai.com ([172.27.17.40]) by prod-mail-ppoint4.akamai.com with ESMTP id 2b0c3vqw1y-1; Tue, 13 Jun 2017 14:47:42 -0400
Received: from [172.19.17.86] (bos-lpczi.kendall.corp.akamai.com [172.19.17.86]) by prod-mail-relay15.akamai.com (Postfix) with ESMTP id 8B2C720061; Tue, 13 Jun 2017 12:47:41 -0600 (MDT)
To: Ilari Liusvaara <ilariliusvaara@welho.com>, Colm MacCárthaigh <colm@allcosts.net>
Cc: "tls@ietf.org" <tls@ietf.org>
References: <CABcZeBPkRhjLNT2QKO+DgfjE8-e-KrJ5XOLbA9bR24R1Fd96MQ@mail.gmail.com> <0a4f3f85fa80423ea72d3eec4c7710aa@usma1ex-dag1mb1.msg.corp.akamai.com> <CABcZeBMpeBhcKoJYuMwLyER0VBh+RtVr6amWMPos3CJipXYHcA@mail.gmail.com> <DM2PR21MB00916718A71749E5D2CB19C38CC20@DM2PR21MB0091.namprd21.prod.outlook.com> <CABcZeBO+Qprg4DTwNJrFU1PXDPyKbbdakMrF9fhe02jRL50cow@mail.gmail.com> <8e206c83-645f-6389-a7bd-ddd51e747ea2@akamai.com> <CAAF6GDfyqMndibTujY83_Xha2dZn7qvaCpZJw7xZ--b=-EOaYA@mail.gmail.com> <bf4506e7-13ce-ce7f-d20e-67a0d73c642a@akamai.com> <CAAF6GDePg9FL0JgzrWrTcrK7X=J0_fKjHVCj9EScvyQobJWTKA@mail.gmail.com> <20170613183536.GA12760@LK-Perkele-V2.elisa-laajakaista.fi>
From: Benjamin Kaduk <bkaduk@akamai.com>
Message-ID: <63c8ac33-489c-0ace-d4ba-b960cd965281@akamai.com>
Date: Tue, 13 Jun 2017 13:47:41 -0500
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1
MIME-Version: 1.0
In-Reply-To: <20170613183536.GA12760@LK-Perkele-V2.elisa-laajakaista.fi>
Content-Type: multipart/alternative; boundary="------------0ED2886034D9F9C36607C235"
Content-Language: en-US
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2017-06-13_09:, , signatures=0
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1703280000 definitions=main-1706130320
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2017-06-13_09:, , signatures=0
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1703280000 definitions=main-1706130321
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/vvzsCc4bFND9xWxj2E5KscogeNc>
Subject: Re: [TLS] Separate APIs for 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: Tue, 13 Jun 2017 18:47:48 -0000

On 06/13/2017 01:35 PM, Ilari Liusvaara wrote:
> On Tue, Jun 13, 2017 at 11:07:35AM -0700, Colm MacCárthaigh wrote:
>> On Tue, Jun 13, 2017 at 11:04 AM, Benjamin Kaduk <bkaduk@akamai.com> wrote:
>>
>>> I have been operating under the impression that at least some application
>>> profiles for early data will require that certain application protocol
>>> requests (e.g., something like HTTP POST) must be rejected at the
>>> application layer as "not appropriate for 0-RTT data", which requires the
>>> application to know if the request was received over 0-RTT data.
>>>
>>
>> That's a really good point; you've changed my mind. It's obviously a good
>> idea to return a 5XX to a POST over 0-RTT and that would need this.
> I think the proper code to send is 400. The request is client error,
> nor server error, so it is 4XX. And there does not seem to be suitable
> 4XX code, so it goes to catch-all client error code 400.
>
> For HTTP/2, refusing the stream (sending stream error 7 without sending
> server headers)  is also a good choice, as this should trigger a
> retransmission of the offending request (POST requests failed by
> refusing the stream are retryable).
>

At least the http 0-RTT profile that I started writing was going to
allocate a new 4XX error code for this purpose.  I am under no pretense
that my version of such a document will resemble anything that finally
gets published, though.

-Ben