From nobody Wed Apr  5 12:50:37 2023
Return-Path: <sayrer@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 83F20C14CF15
 for <tls@ietfa.amsl.com>; Wed,  5 Apr 2023 12:50:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level: 
X-Spam-Status: No, score=-2.095 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001,
 RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001,
 URIBL_ZEN_BLOCKED_OPENDNS=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 ([50.223.129.194])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id vpIhHIHKyW5L for <tls@ietfa.amsl.com>;
 Wed,  5 Apr 2023 12:50:33 -0700 (PDT)
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com
 [IPv6:2a00:1450:4864:20::52b])
 (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id B4183C14CF1F
 for <TLS@ietf.org>; Wed,  5 Apr 2023 12:50:33 -0700 (PDT)
Received: by mail-ed1-x52b.google.com with SMTP id
 4fb4d7f45d1cf-5002bb40596so765818a12.1
 for <TLS@ietf.org>; Wed, 05 Apr 2023 12:50:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20210112; t=1680724232; x=1683316232;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=ONR4XfcRc5DxWiLa6N/EC44PkJAX1o46FCxJjOUZ/Bg=;
 b=QCedbel9qD00KJN3dTrPo3dq1jpF5TV4/x4y0IYg6pjfQrVyJ8/8DiYAos8+wYFGPD
 jwgLL7wadT4cQRgDAkt3wydys+Ph80ZoRa8rPy2BKs2WwDNLLe6ajX0QJcNFAPuRfwXR
 JkQlHG3v2ttPxkguk5WGktetpnQ273GK/CBYkhsrlPsSXNlFMayJwJTAn9e/zq0Hu8Ky
 AmcfjCtGfRI0IRuFeRO8R+0ahVO1ao9GwSHyUDSqN1wU1QBLtSd6xkxzCvSOlQDEfW8P
 hLVqChqmRF1m5rp0b01cgA3faTIo9ZhjRu4q/Du2eVaGnEk8CpTVsD7OzhhXHMD9+8pZ
 iBYQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112; t=1680724232; x=1683316232;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=ONR4XfcRc5DxWiLa6N/EC44PkJAX1o46FCxJjOUZ/Bg=;
 b=cxRAkBuFc6dPM9ht0ZIsQZwKDt4v12pGb7hni/HVY4pMYYI8+skjri9LVtT7KNZBOR
 IurfxjtrtPw4+fJGlYI9It5uPUMpcWZDINhwu5Q0DGW7annZzb98jVhJLaSZFbOoplm2
 pIfSY0PYgJ0ioAg1pAvMT0kBOuSForKm3hrN40wNqS8Mno1O+fFRF+J1MC0t84ZL6aOF
 seh9Lq01jW6dfNoqEtCggvFCqdI0j5t+wlXN+pPCOUM0jQKEGBFUeh9kRZmPdRcewUcy
 hOGiINzcJSe2BTNmQE+dvuU/H5PKrvD0Ih10n1lMua41ohFzap07hLQj995Uij7d36nO
 tY4A==
X-Gm-Message-State: AAQBX9e35lY8WSLhHWc7VYGaHKQYxiSufhfm0+bGJGPSdTMdBCg4wY3f
 OsIvfZ58r7w3tgI1Dd79nK+Pyw9M5Vja17aU6no4GAl1kQQ=
X-Google-Smtp-Source: AKy350ZcA0HAmMEATE4OV42cK7DOd1zoTux6L59LOdmdvRyNnxUcKHEtgGNGhuqPuGxD0wMS3N+f2VnelsJV/Autnjs=
X-Received: by 2002:a50:d782:0:b0:501:d2f5:7da9 with SMTP id
 w2-20020a50d782000000b00501d2f57da9mr1834494edi.0.1680724231849; Wed, 05 Apr
 2023 12:50:31 -0700 (PDT)
MIME-Version: 1.0
References: <E7A22BA0-4EDD-4B0D-B5D1-6FA7AF466398@heapingbits.net>
 <5CBA62B3-CFD0-4062-B66D-AFA6F887128B@sn3rd.com>
 <d3ccffd1-2f92-f2e2-0e96-32ee6f5cd7b3@cs.tcd.ie>
 <CAChr6SwCeWMbPuuPCX7_=JiWe+6712tsXyva+eEB=GpCbQxX4w@mail.gmail.com>
 <CABcZeBMiZLfBbJSB48hL2Mot+6S1FVNpLH7HfLAJQRKfOqf2uA@mail.gmail.com>
In-Reply-To: <CABcZeBMiZLfBbJSB48hL2Mot+6S1FVNpLH7HfLAJQRKfOqf2uA@mail.gmail.com>
From: Rob Sayre <sayrer@gmail.com>
Date: Wed, 5 Apr 2023 12:50:20 -0700
Message-ID: <CAChr6SzRBNfacz5z6WQxvmVwNEnkf-LU4xsyJqV16Devh7qHjQ@mail.gmail.com>
To: Eric Rescorla <ekr@rtfm.com>
Cc: Stephen Farrell <stephen.farrell@cs.tcd.ie>, TLS List <TLS@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000ce0fa005f89c1adc"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/GcJkYX2f8p3ha7XpBhl1W02WwSQ>
Subject: Re: [TLS] WGLC for draft-ietf-tls-rfc8446bis and
 draft-ietf-tls-rfc8447bis
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.39
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, 05 Apr 2023 19:50:37 -0000

--000000000000ce0fa005f89c1adc
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Apr 5, 2023 at 12:26=E2=80=AFPM Eric Rescorla <ekr@rtfm.com> wrote:

> Thanks for your feedback. Most of these are editorial comments and
> so I think they're my decision as editor about which ones to take
> absent some instruction from the chairs.
>

I agree concerning most of them. One just finds nitpicks if you read the
whole thing carefully.

The one thing I think is really substantive is the deprecation of TLS 1.0 /
1.1, since you have a strange nesting of MUSTs.

I think a descriptive "NOT RECOMMENDED" approach would be better here.
Then, describe that servers might choose to accept 1.0/1.1 if they don't
actually care whether the traffic is secure. This is a very common pattern.
I found a survey that showed popular public sites were likely to accept
almost anything (SSL3, unencrypted traffic, etc).*

I think this approach is more accurate, but also more critical in terms of
security than what you have now.

thanks,
Rob

*
"In fact, the top 100 sites were more likely to still support SSL 3, TLS
1.0, and TLS 1.1 than servers with much less traffic."
<
https://www.f5.com/labs/articles/threat-intelligence/the-2021-tls-telemetry=
-report
>



> On Tue, Apr 4, 2023 at 10:43=E2=80=AFPM Rob Sayre <sayrer@gmail.com> wrot=
e:
>
>> Hi,
>>
>> I'm still not sure about the list/vector rename. Aside from that, here's
>> what I found:
>>
>> > It tightens some requirements and contains
>> > updated text in areas which were found to be unclear as well as other
>> > editorial improvements.
>>
>> "It contains clarifications and tightened requirements." [let's assume
>> some things were unclear and that editorial improvements are clarificati=
ons]
>>
>
> Not all editorial improvements are clarifications.
>
>
>>
>> > Forbid negotiating TLS 1.0 and 1.1 as they are now deprecated by
>> [RFC8996].
>>
>> I know what's meant here, but deprecated does not mean forbidden. I thin=
k
>> you want to say "NOT RECOMMENDED" in RFC 2119 words, and give a brief
>> reason for that. [but keep reading]
>>
>
> This isn't normative text. However 8996 is entitled "Deprecating TLS 1.0
> and TLS 1.1" so I think this
> is fine.
>
>
>
>> > The protocol does not provide any forward secrecy guarantees for this
>> data.
>> > The server's behavior determines what forward secrecy
>> > guarantees, if any, apply (see Section 8.1). This behavior is
>> > not communicated to the client as part of the protocol.
>> > Therefore, absent out-of-band knowledge of the server's behavior,
>> > the client should assume that this data is not forward secret.
>>
>> Here, you use the term "out-of-band", but the PSK text replaced
>> "out-of-band" with "external[ly]". I can't tell whether this usage is
>> intentional.
>>
>
> It is. The PSKs here are resumption PSKs. They're not external. The out o=
f
> band in
> question is knowledge about the server behavior.
>
>
>
>>
>> > Because TLS 1.3 forbids renegotiation, if a server has negotiated TLS
>> > 1.3 and receives a ClientHello at any other time, it MUST terminate
>>
>> "TLS 1.3 forbids renegotiation. If a server has negotiated TLS 1.3 and
>> receives a ClientHello at any other time, it MUST terminate..."
>>
>> [No starting sentences with "Because"]
>>
>
> I believe this is editor discretion.
>
>
>>
>> > Note that [RFC8996] and Appendix E.5 forbid the negotation of TLS
>> > versions below 1.2; implementations which do not follow that guidance
>> > MUST behave as described above.
>>
>> I think this makes my "NOT RECOMMENDED" suggestion above correct. A
>> forbidden "MUST NOT" wouldn't need this text.
>>
>
> I don't understand this argument. The point of this text is that people
> are forbidden
> to do previous versions by 8996, but we know some people won't so this is
> backup guidance. I think this is fine.
>
>
>
>
>>
>> > Unless otherwise specified, trailing data is forbidden.
>> > That is, senders MUST NOT include data after the structure in the
>> > "extension_data" field.
>>
>> This doesn't seem like "MUST NOT", since it could be "otherwise
>> specified". I think there needs to be a harsher choice made here, or jus=
t
>> leave it out.
>>
>
> This is actually fairly standard language.
>
>
>
>> > When processing an extension, receivers MUST
>> > abort the handshake with a "decode_error" alert if there is data left
>> > over after parsing the structure. This does not apply if the
>> > receiver does not implement or is configured to ignore an extension.
>>
>> Again, doesn't seem like a "MUST". But the following text says "This doe=
s
>> not apply", without clarifying what "this" is.
>>
>
> I don't follow your argument here either. It's a MUST for any extension
> you understand.
> Obviously, if you don't understand it, you can't comply with this. I'll
> attempt to clarify.
>
>
>> > After checking ServerHello.random to determine if the server
>> > handshake message is a ServerHello or HelloRetryRequest, clients MUST
>> > check for this extension prior to processing the rest of the
>> > ServerHello.  This will require clients to parse the ServerHello in ..=
.
>>
>> Another "this". Here, I think the text means "This requirement...", but
>> usually a rewrite can fix these ambiguities.
>>
>
> I don't think this one is unclear.
>
>
>> > In the absence of some other specification to the
>> > contrary, servers which are authenticating with an external PSK MUST
>> > NOT send the CertificateRequest message either in the main handshake
>> > or request post-handshake authentication.  [RFC8773] provides an
>> > extension to permit this, but has not received the level of analysis
>> > as this specification.
>>
>> Another one of these "In the absence of..." paragraphs. Maybe these are
>> intentional? They still sound really redundant to me.
>>
>
> They're intentional because we know there is actually such an RFC, but yo=
u
> have to
> actually use it.
>
>
>> > With a 128-bit key as in AES-128, rekeying 2^64 times has a high
>> > probability of key reuse within a given connection.  Note that even...
>>
>> It's almost always possible to drop "Note that..."
>>
>
> It is possible, but I prefer to leave it as-is.
>
>
>> The rest of this paragraph is really heavy on em dashes, and needs to be
>> rewritten. Some of them seem to be parentheticals, but I would try to
>> rewrite it as short sentences.
>>
>
> I'll take a look.
>
>
>
>> > Note that it is common practice in some protocols to use the same
>>
>> Another "Note that"
>>
>
> See above.
>
>
>>
>> > Note that purely deterministic ECC signatures such as deterministic
>> ECDSA and EdDSA ...
>>
>> ...
>>
>> > If the resumption_master_secret has been
>> > compromised, a resumption handshake with EC(DHE) gives protection
>> > against passive attackers and a full handshake with EC(DHE) gives
>> > protection against active attackers.
>>
>> Here, you mean "resumption_secret".
>>
>
> Thanks. Good catch.
>
>
>>
>> > Note: This specification does not currently permit the server to send
>>
>> The old text was better. No "Note:".
>>
>> The "currently" part seems like the wrong thing to write in an immutable
>> document. Maybe "TLS 1.3 does not currently..."?
>>
>
> I don't think this is a problem.
>
>
>>
>> > In the absence of some other specification to the contrary,
>> implementations...
>>
>> I must be missing the conversation on this stuff. How could anyone write
>> a spec if every requirement was prefaced with "in the absence of some ot=
her
>> specification to the contrary..."
>>
>
> The purpose of this text is to signpost that we know that there might be =
or
> in fact is is such a specification, as opposed to other requirements whic=
h
> we don't have any reason to think that about.
>
>
>>
>> > Amplifying existing information leaks caused by side effects like
>> > caching.  An attacker...
>>
>> Not a complete sentence here. I think it's just a typo.
>>
>
> Thanks. Will fix.
>
> -Ekr
>
>
>>
>> thanks,
>> Rob
>>
>>
>>
>> On Tue, Apr 4, 2023 at 7:32=E2=80=AFPM Stephen Farrell <stephen.farrell@=
cs.tcd.ie>
>> wrote:
>>
>>>
>>> Hiya,
>>>
>>> On 05/04/2023 02:47, Sean Turner wrote:
>>> > A post IETF 116 bump to make sure folks get their reviews in. If you
>>> > look at the diffs from RFC 8446 you can see not that much has
>>> > changed. We will also take =E2=80=9CI read it and it looks good=E2=80=
=9D response.
>>>
>>> I looked at the diff between 8446bis-07 and 8446 and it seems
>>> fine to me. My only comment is that C.4 says one "SHOULD NOT
>>> reuse a key share" - I'd be happier if that was a "MUST NOT"
>>> but understand if we stick with SHOULD NOT. If there were a
>>> good reference showing that it's quite feasible to never
>>> deliberately re-use a key share, even at scale, that'd be a fine
>>> addition. (I don't have such a reference to offer,
>>> sorry;-)
>>>
>>> Cheers,
>>> S.
>>> _______________________________________________
>>> TLS mailing list
>>> TLS@ietf.org
>>> https://www.ietf.org/mailman/listinfo/tls
>>>
>> _______________________________________________
>> TLS mailing list
>> TLS@ietf.org
>> https://www.ietf.org/mailman/listinfo/tls
>>
>

--000000000000ce0fa005f89c1adc
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">On Wed, Apr 5, 2023 at 12:26=E2=80=AFPM E=
ric Rescorla &lt;<a href=3D"mailto:ekr@rtfm.com" target=3D"_blank">ekr@rtfm=
.com</a>&gt; wrote:<br></div><div class=3D"gmail_quote"><blockquote class=
=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;bo=
rder-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">=
<div dir=3D"ltr"><div dir=3D"ltr"><div>Thanks for your feedback. Most of th=
ese are editorial comments and</div><div>so I think they&#39;re my decision=
 as editor about which ones to take</div><div>absent some instruction from =
the chairs.<br></div></div></div></blockquote><div><br></div><div>I agree c=
oncerning most of them. One just finds nitpicks if you read the whole thing=
 carefully.</div><div><br></div><div>The one thing I think is really substa=
ntive is the deprecation of TLS 1.0 / 1.1, since you have a strange nesting=
 of MUSTs.</div><div><br></div><div>I think a descriptive &quot;NOT RECOMME=
NDED&quot; approach would be better here. Then, describe that servers might=
 choose to accept 1.0/1.1 if they don&#39;t actually care whether the traff=
ic is secure. This is a very common pattern. I found a survey that showed p=
opular public sites were likely to accept almost anything (SSL3, unencrypte=
d traffic, etc).*</div><div><br></div><div>I think this approach is more ac=
curate, but also more critical in terms of security than what you have now.=
</div><div><br></div><div>thanks,</div><div>Rob</div><div><br></div><div>*<=
/div><div>&quot;In fact, the top 100 sites were more likely to still suppor=
t SSL 3, TLS 1.0, and TLS 1.1 than servers with much less traffic.&quot;</d=
iv><div>&lt;<a href=3D"https://www.f5.com/labs/articles/threat-intelligence=
/the-2021-tls-telemetry-report">https://www.f5.com/labs/articles/threat-int=
elligence/the-2021-tls-telemetry-report</a>&gt;</div><div><br></div><div>=
=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0=
.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(20=
4,204,204);padding-left:1ex"><div dir=3D"ltr"><div class=3D"gmail_quote"><d=
iv dir=3D"ltr" class=3D"gmail_attr">On Tue, Apr 4, 2023 at 10:43=E2=80=AFPM=
 Rob Sayre &lt;<a href=3D"mailto:sayrer@gmail.com" target=3D"_blank">sayrer=
@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;=
border-left-color:rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div>=
Hi,</div><div><br></div>I&#39;m still not sure about the list/vector rename=
. Aside=C2=A0from that, here&#39;s what I found:<div><br></div><div>&gt; It=
 tightens some requirements and contains	<br>&gt; updated text in areas whi=
ch were found to be unclear as well as other	<br>&gt; editorial improvement=
s.<br><br>&quot;It contains clarifications and tightened requirements.&quot=
; [let&#39;s assume some things were unclear and that editorial improvement=
s are clarifications]<br></div></div></blockquote><div><br></div><div>Not a=
ll editorial improvements are clarifications.</div><div><br></div><blockquo=
te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-widt=
h:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-le=
ft:1ex"><div dir=3D"ltr"><div><br><br>&gt; Forbid negotiating TLS 1.0 and 1=
.1 as they are now deprecated by [RFC8996].<br><br>I know what&#39;s meant =
here, but deprecated does not mean forbidden. I think you want to say &quot=
;NOT RECOMMENDED&quot; in RFC 2119 words, and give a brief reason for that.=
 [but keep reading]<br></div></div></blockquote><div><br></div><div>This is=
n&#39;t normative text. However 8996 is entitled &quot;Deprecating TLS 1.0 =
and TLS 1.1&quot; so I think this</div><div>is fine.</div><div><br></div><d=
iv><br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px =
0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(2=
04,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; The protocol d=
oes not provide any forward secrecy guarantees for this data.<br>&gt; The s=
erver&#39;s behavior determines what forward secrecy	<br>&gt; guarantees, i=
f any, apply (see Section 8.1). This behavior is	<br>&gt; not communicated =
to the client as part of the protocol.	<br>&gt; Therefore, absent out-of-ba=
nd knowledge of the server&#39;s behavior,	<br>&gt; the client should assum=
e that this data is not forward secret.	<br><br>Here, you use the term &quo=
t;out-of-band&quot;, but the PSK text replaced &quot;out-of-band&quot; with=
 &quot;external[ly]&quot;. I can&#39;t tell whether this usage is intention=
al.<br></div></div></blockquote><div><br></div><div>It is. The PSKs here ar=
e resumption PSKs. They&#39;re not external. The out of band in</div><div>q=
uestion is knowledge about the server behavior.<br></div><div><br></div><di=
v>=C2=A0<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px=
 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:=
rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; Because T=
LS 1.3 forbids renegotiation, if a server has negotiated TLS	<br>&gt; 1.3 a=
nd receives a ClientHello at any other time, it MUST terminate<br><br>&quot=
;TLS 1.3 forbids renegotiation. If a server has negotiated TLS 1.3 and rece=
ives a ClientHello at any other time, it MUST terminate...&quot;<br><br>[No=
 starting sentences with &quot;Because&quot;]<br></div></div></blockquote><=
div><br></div><div>I believe this is editor discretion.<br></div><div>=C2=
=A0<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px =
0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(2=
04,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; Note that [RFC=
8996] and Appendix E.5 forbid the negotation of TLS	<br>&gt; versions below=
 1.2; implementations which do not follow that guidance	<br>&gt; MUST behav=
e as described above.<br><br>I think this makes my &quot;NOT RECOMMENDED&qu=
ot; suggestion above correct. A forbidden &quot;MUST NOT&quot; wouldn&#39;t=
 need this text.<br></div></div></blockquote><div><br></div><div>I don&#39;=
t understand this argument. The point of this text is that people are forbi=
dden</div><div>to do previous versions by 8996, but we know some people won=
&#39;t so this is <br></div><div>backup guidance. I think this is fine.<br>=
</div><div><br></div><div><br></div><div>=C2=A0<br></div><blockquote class=
=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;bo=
rder-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">=
<div dir=3D"ltr"><div><br>&gt; Unless otherwise specified, trailing data is=
 forbidden.	<br>&gt; That is, senders MUST NOT include data after the struc=
ture in the	<br>&gt; &quot;extension_data&quot; field. <br><br>This doesn&#=
39;t seem like &quot;MUST NOT&quot;, since it could be &quot;otherwise spec=
ified&quot;. I think there needs to be a harsher choice made here, or just =
leave it out.<br></div></div></blockquote><div><br></div><div>This is actua=
lly fairly standard language. <br></div><div><br></div><div><br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-=
width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);paddin=
g-left:1ex"><div dir=3D"ltr"><div><br>&gt; When processing an extension, re=
ceivers MUST	<br>&gt; abort the handshake with a &quot;decode_error&quot; a=
lert if there is data left	<br>&gt; over after parsing the structure. This =
does not apply if the	<br>&gt; receiver does not implement or is configured=
 to ignore an extension.<br><br>Again, doesn&#39;t seem like a &quot;MUST&q=
uot;. But the following text says &quot;This does not apply&quot;, without =
clarifying what &quot;this&quot; is.<br></div></div></blockquote><div><br><=
/div><div>I don&#39;t follow your argument here either. It&#39;s a MUST for=
 any extension you understand.</div><div>Obviously, if you don&#39;t unders=
tand it, you can&#39;t comply with this. I&#39;ll attempt to clarify.</div>=
<div><br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0p=
x 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb=
(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; After checki=
ng ServerHello.random to determine if the server<br>&gt; handshake message =
is a ServerHello or HelloRetryRequest, clients MUST<br>&gt; check for this =
extension prior to processing the rest of the<br>&gt; ServerHello.=C2=A0 Th=
is will require clients to parse the ServerHello in ...<br><br>Another &quo=
t;this&quot;. Here, I think the text means &quot;This requirement...&quot;,=
 but usually a rewrite can fix these ambiguities.<br></div></div></blockquo=
te><div><br></div><div>I don&#39;t think this one is unclear.</div><div><br=
></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;=
border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204=
,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; In the absence of so=
me other specification to the	<br>&gt; contrary, servers which are authenti=
cating with an external PSK MUST	<br>&gt; NOT send the CertificateRequest m=
essage either in the main handshake	<br>&gt; or request post-handshake auth=
entication. =C2=A0[RFC8773] provides an	<br>&gt; extension to permit this, =
but has not received the level of analysis	<br>&gt; as this specification.<=
br><br>Another one of these &quot;In the absence of...&quot; paragraphs. Ma=
ybe these are intentional? They still sound really redundant to me.</div></=
div></blockquote><div>=C2=A0</div><div>They&#39;re intentional because we k=
now there is actually such an RFC, but you have to</div><div>actually use i=
t.<br></div><div><br></div><blockquote class=3D"gmail_quote" style=3D"margi=
n:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-le=
ft-color:rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; =
With a 128-bit key as in AES-128, rekeying 2^64 times has a high	<br>&gt; p=
robability of key reuse within a given connection.=C2=A0 Note that even...<=
br><br>It&#39;s almost always possible to drop &quot;Note that...&quot;<br>=
</div></div></blockquote><div><br></div><div>It is possible, but I prefer t=
o leave it as-is.</div><div>=C2=A0<br></div><blockquote class=3D"gmail_quot=
e" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-styl=
e:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir=3D"lt=
r"><div>The rest of this paragraph is really heavy on em dashes, and needs =
to be rewritten. Some of them seem to be parentheticals, but I would try to=
 rewrite it as short sentences.<br></div></div></blockquote><div><br></div>=
<div>I&#39;ll take a look.</div><div><br></div><div>=C2=A0<br></div><blockq=
uote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-wi=
dth:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-=
left:1ex"><div dir=3D"ltr"><div>&gt; Note that it is common practice in som=
e protocols to use the same<br><br>Another &quot;Note that&quot;<br></div><=
/div></blockquote><div><br></div><div>See above.</div><div>=C2=A0<br></div>=
<blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-=
left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);p=
adding-left:1ex"><div dir=3D"ltr"><div><br>&gt; Note that purely determinis=
tic ECC signatures such as deterministic ECDSA and EdDSA ...<br><br>...<br>=
<br>&gt; If the resumption_master_secret has been	<br>&gt; compromised, a r=
esumption handshake with EC(DHE) gives protection	<br>&gt; against passive =
attackers and a full handshake with EC(DHE) gives	<br>&gt; protection again=
st active attackers.<br><br>Here, you mean &quot;resumption_secret&quot;.<b=
r></div></div></blockquote><div><br></div><div>Thanks. Good catch.</div><di=
v>=C2=A0<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px=
 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:=
rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; Note: Thi=
s specification does not currently permit the server to send<br><br>The old=
 text was better. No &quot;Note:&quot;.</div><div><br></div><div>The &quot;=
currently&quot; part seems like the wrong thing to=C2=A0write in an immutab=
le document. Maybe &quot;TLS 1.3 does not currently...&quot;?<br></div></di=
v></blockquote><div><br></div><div>I don&#39;t think this is a problem.</di=
v><div>=C2=A0<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0p=
x 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-c=
olor:rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>&gt; In t=
he absence of some other specification to the contrary, implementations...<=
br><br>I must be missing the conversation on this stuff. How could anyone w=
rite a spec if every requirement was prefaced with &quot;in the absence of =
some other specification to the contrary...&quot;<br></div></div></blockquo=
te><div><br></div><div>The purpose of this text is to signpost that we know=
 that there might be or</div><div>in fact is is such a specification, as op=
posed to other requirements which</div><div>we don&#39;t have any reason to=
 think that about.<br></div><div>=C2=A0<br></div><blockquote class=3D"gmail=
_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left=
-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir=
=3D"ltr"><div><br>&gt; Amplifying existing information leaks caused by side=
 effects like<br>&gt; caching.=C2=A0 An attacker...<br><br>Not a complete s=
entence here. I think it&#39;s just a typo.<br></div></div></blockquote><di=
v><br></div><div>Thanks. Will fix.</div><div><br></div><div>-Ekr</div><div>=
=C2=A0<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0=
px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rg=
b(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><br>thanks,</div><di=
v>Rob</div><div><br><br></div></div><br><div class=3D"gmail_quote"><div dir=
=3D"ltr" class=3D"gmail_attr">On Tue, Apr 4, 2023 at 7:32=E2=80=AFPM Stephe=
n Farrell &lt;<a href=3D"mailto:stephen.farrell@cs.tcd.ie" target=3D"_blank=
">stephen.farrell@cs.tcd.ie</a>&gt; wrote:<br></div><blockquote class=3D"gm=
ail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-l=
eft-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><br>
Hiya,<br>
<br>
On 05/04/2023 02:47, Sean Turner wrote:<br>
&gt; A post IETF 116 bump to make sure folks get their reviews in. If you<b=
r>
&gt; look at the diffs from RFC 8446 you can see not that much has<br>
&gt; changed. We will also take =E2=80=9CI read it and it looks good=E2=80=
=9D response.<br>
<br>
I looked at the diff between 8446bis-07 and 8446 and it seems<br>
fine to me. My only comment is that C.4 says one &quot;SHOULD NOT<br>
reuse a key share&quot; - I&#39;d be happier if that was a &quot;MUST NOT&q=
uot;<br>
but understand if we stick with SHOULD NOT. If there were a<br>
good reference showing that it&#39;s quite feasible to never<br>
deliberately re-use a key share, even at scale, that&#39;d be a fine <br>
addition. (I don&#39;t have such a reference to offer,<br>
sorry;-)<br>
<br>
Cheers,<br>
S.<br>
_______________________________________________<br>
TLS mailing list<br>
<a href=3D"mailto:TLS@ietf.org" target=3D"_blank">TLS@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/tls" rel=3D"noreferrer" ta=
rget=3D"_blank">https://www.ietf.org/mailman/listinfo/tls</a><br>
</blockquote></div>
_______________________________________________<br>
TLS mailing list<br>
<a href=3D"mailto:TLS@ietf.org" target=3D"_blank">TLS@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/tls" rel=3D"noreferrer" ta=
rget=3D"_blank">https://www.ietf.org/mailman/listinfo/tls</a><br>
</blockquote></div></div>
</blockquote></div></div>

--000000000000ce0fa005f89c1adc--

