[TLS] Re: New Version Notification for draft-sullivan-tls-xo f-ciphers-00.txt
Nick Sullivan <[email protected]> Fri, 31 Jul 2026 10:26:42 +0400
| Newsgroups | gmane.ietf.tls |
|---|---|
| Message-ID | <CAOjisRyNkJLnMcZHPb8K2_1Q0y_FH=+ZfMnUExN5CRQ0mpJ5VQ@mail.gmail.com> |
--===============4530246866738395241== Content-Type: multipart/alternative; boundary="0000000000004d75440657e2462e" --0000000000004d75440657e2462e Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi John, I=E2=80=99ve been thinking recently about how best to generalize HKDF-to-XO= F key schedule updates across any protocol and I don=E2=80=99t think we=E2=80=99r= e there yet. As discussed here, there are a variety of ways to instantiate these intermediate representation-style key schedule functions (Derive, Hash, Ratchet, etc.) as functions of a XOF (duplex, OD, with/without KMAC, etc.). Choosing the right one depends on the shape of the key schedule and other factors. For now, I=E2=80=99d suggest we start by trying to apply this tran= slation exercise for two or more protocols before generalizing or splitting out new documents. MLS is a great example of a second protocol that could use this exercise. As specified, MLS depends on the same HKDF-based primitives as TLS but it piggybacks on HPKE for the definition of the key schedule=E2=80=99s Derive = and Hash/Expand/Extract. When HPKE-PQ introduced (Turbo)SHAKE as a one-stage KDF, it didn=E2=80=99t define the equivalent Expand/Extract functions becau= se they were not needed in HPKE. This left MLS, dependent on HPKE for its KDF definitions, functionally unable to use the new single-stage KDFs in its key schedule. This is probably a good thing because a direct mapping would be inefficient. A version of this TLS-XOF draft written for MLS would be a good test of the generalizability of the approach beyond TLS and a step worth taking before considering splitting this document up. Nick On Tue, Jul 28, 2026 at 2:28=E2=80=AFPM John Mattsson <john.mattsson=3D [email protected]> wrote: > Hi, > > Would it make sense to specify the deck function in a separate draft and > then reference that from the TLS draft? > > For example: > > draft-sullivan-tls-deck-schedule + draft-sullivan-deck, or > draft-sullivan-tls-deck-schedule + draft-keccakteam-flightdeck. > > I think this would make the architecture cleaner, simplify discussions > within the TLS WG, allow the security analysis of the deck to be performe= d > independently of TLS, make it easier for TLS to support different deck > functions, allow deck functions not based on an XOF API, and a generic > deck-function specification would clearly have value beyond TLS. > > Cheers, > John Preu=C3=9F Mattsson > _______________________________________________ > TLS mailing list -- [email protected] > To unsubscribe send an email to [email protected] > --0000000000004d75440657e2462e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div><div dir=3D"auto">Hi John,</div><div dir=3D"auto"><br></div><div dir= =3D"auto">I=E2=80=99ve been thinking recently about how best to generalize = HKDF-to-XOF key schedule updates across any protocol and I don=E2=80=99t th= ink we=E2=80=99re there yet. As discussed here,=C2=A0<span>there are a vari= ety of ways to instantiate these intermediate representation-style key sche= dule functions (Derive, Hash, Ratchet, etc.) as functions of a XOF (duplex,= OD, with/without KMAC, etc.). Choosing the right one depends on the shape = of the key schedule and other factors. For now, I=E2=80=99d suggest we=C2= =A0start by trying to apply this translation exercise for two or more proto= cols before generalizing or splitting out new documents.</span></div><div d= ir=3D"auto"><br></div><div dir=3D"auto">MLS is a great example of a second = protocol that could use this exercise. As specified, MLS depends on the sam= e HKDF-based primitives as TLS but it piggybacks on HPKE for the definition= of the key schedule=E2=80=99s Derive and Hash/Expand/Extract. When HPKE-PQ= introduced (Turbo)SHAKE as a one-stage KDF, it didn=E2=80=99t define the e= quivalent Expand/Extract functions because they were not needed in HPKE. Th= is left=C2=A0<span>MLS, dependent on HPKE for its KDF definitions, function= ally unable to use the new single-stage KDFs in its key schedule.=C2=A0</sp= an><span>This is probably a good thing because a direct mapping would be=C2= =A0inefficient. A version of=C2=A0this TLS-XOF draft written for MLS would = be a good test of the generalizability of the approach beyond TLS and a ste= p worth taking before considering splitting this document up.</span></div><= /div><div><div dir=3D"auto"><br></div><div dir=3D"auto">Nick</div><div><br>= <div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Ju= l 28, 2026 at 2:28=E2=80=AFPM John Mattsson <john.mattsson=3D<a href=3D"= mailto:[email protected]" target=3D"_blank">40ericsson.com@dmar= c.ietf.org</a>> wrote:<br></div><blockquote class=3D"gmail_quote" style= =3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding= -left:1ex"> <div> <div style=3D"direction:ltr;font-family:Aptos,Arial,Helvetica,sans-serif;fo= nt-size:12pt;color:rgb(0,0,0)"> Hi,</div> <div style=3D"direction:ltr;font-family:Aptos,Arial,Helvetica,sans-serif;fo= nt-size:12pt;color:rgb(0,0,0)"> <br> </div> <div style=3D"font-family:Aptos,Arial,Helvetica,sans-serif;font-size:12pt;c= olor:rgb(0,0,0)"> Would it make sense to specify the deck function in a separate draft and th= en reference that from the TLS draft?</div> <div style=3D"direction:ltr;font-family:Aptos,Arial,Helvetica,sans-serif;fo= nt-size:12pt;color:rgb(0,0,0)"> <br> </div> <div style=3D"font-family:Aptos,Arial,Helvetica,sans-serif;font-size:12pt;c= olor:rgb(0,0,0)"> For example:</div> <div style=3D"direction:ltr;font-family:Aptos,Arial,Helvetica,sans-serif;fo= nt-size:12pt;color:rgb(0,0,0)"> <br> </div> <div style=3D"font-family:Aptos,Arial,Helvetica,sans-serif;font-size:12pt;c= olor:rgb(0,0,0)"> draft-sullivan-tls-deck-schedule + draft-sullivan-deck, or</div> <div style=3D"font-family:Aptos,Arial,Helvetica,sans-serif;font-size:12pt;c= olor:rgb(0,0,0)"> draft-sullivan-tls-deck-schedule + draft-keccakteam-flightdeck.</div> <div style=3D"direction:ltr;font-family:Aptos,Arial,Helvetica,sans-serif;fo= nt-size:12pt;color:rgb(0,0,0)"> <br> </div> <div style=3D"font-family:Aptos,Arial,Helvetica,sans-serif;font-size:12pt;c= olor:rgb(0,0,0)"> I think this would make the architecture cleaner, simplify discussions with= in the TLS WG, allow the security analysis of the deck to be performed inde= pendently of TLS, make it easier for TLS to support different deck function= s, allow deck functions not based on an XOF API, and a generic deck-function specification would clearly hav= e value beyond TLS.</div> <div style=3D"direction:ltr;font-family:Aptos,Arial,Helvetica,sans-serif;fo= nt-size:12pt;color:rgb(0,0,0)"> <br> </div> <div style=3D"font-family:Aptos,Arial,Helvetica,sans-serif;font-size:12pt;c= olor:rgb(0,0,0)"> Cheers,</div> <div style=3D"font-family:Aptos,Arial,Helvetica,sans-serif;font-size:12pt;c= olor:rgb(0,0,0)"> John Preu=C3=9F Mattsson</div> </div> _______________________________________________<br> TLS mailing list -- <a href=3D"mailto:[email protected]" target=3D"_blank">tls@i= etf.org</a><br> To unsubscribe send an email to <a href=3D"mailto:[email protected]" targe= t=3D"_blank">[email protected]</a><br> </blockquote></div></div> </div> --0000000000004d75440657e2462e-- --===============4530246866738395241== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVExTIG1haWxp bmcgbGlzdCAtLSB0bHNAaWV0Zi5vcmcKVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byB0 bHMtbGVhdmVAaWV0Zi5vcmcK --===============4530246866738395241==--