<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.30 (Ruby 3.4.8) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-tls-mlkem-06" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="ietf-tls-mlkem">ML-KEM Post-Quantum Key Agreement for TLS 1.3</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-tls-mlkem-06"/>
    <author fullname="Deirdre Connolly">
      <organization>SandboxAQ</organization>
      <address>
        <email>durumcrustulum@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="February" day="12"/>
    <area>Security</area>
    <workgroup>Transport Layer Security</workgroup>
    <keyword>kems</keyword>
    <keyword>tls</keyword>
    <abstract>
      <?line 108?>

<t>This memo defines ML-KEM-512, ML-KEM-768, and ML-KEM-1024 as <tt>NamedGroup</tt>s
and and registers IANA values in the TLS Supported Groups registry for use
in TLS 1.3 to achieve post-quantum (PQ) key establishment.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-tls-mlkem/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Transport Layer Security Working Group mailing list (<eref target="mailto:tls@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/tls/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/tls/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/tlswg/draft-ietf-tls-mlkem"/>.</t>
    </note>
  </front>
  <middle>
    <?line 114?>

<section anchor="introduction">
      <name>Introduction</name>
      <section anchor="motivation">
        <name>Motivation</name>
        <t>FIPS 203 (ML-KEM) <xref target="FIPS203"/> is a FIPS standard for post-quantum <xref target="RFC9794"/>
key establishment via a lattice-based key encapsulation mechanism (KEM). This
document defines key establishment options for TLS 1.3 that use solely
post-quantum algorithms, without a hybrid construction that also includes a
traditional cryptographic algorithm. Use cases include regulatory frameworks
that require standalone post-quantum key establishment, constrained
environments where smaller key sizes or less computation are needed, and
deployments where legacy middleboxes reject larger hybrid key shares.</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="kems">
      <name>Key encapsulation mechanisms</name>
      <t>This document models key establishment as key encapsulation mechanisms
(KEMs), which consist of three algorithms:</t>
      <ul spacing="normal">
        <li>
          <t><tt>KeyGen() -&gt; (pk, sk)</tt>: A probabilistic key generation algorithm,
which generates a public encapsulation key <tt>pk</tt> and a secret
decapsulation key <tt>sk</tt>.</t>
        </li>
        <li>
          <t><tt>Encaps(pk) -&gt; (ct, shared_secret)</tt>: A probabilistic encapsulation
algorithm, which takes as input a public encapsulation key <tt>pk</tt> and
outputs a ciphertext <tt>ct</tt> and shared secret <tt>shared_secret</tt>.</t>
        </li>
        <li>
          <t><tt>Decaps(sk, ct) -&gt; shared_secret</tt>: A decapsulation algorithm, which takes as
input a secret decapsulation key <tt>sk</tt> and ciphertext <tt>ct</tt> and outputs
a shared secret <tt>shared_secret</tt>.</t>
        </li>
      </ul>
      <t>ML-KEM-512, ML-KEM-768 and ML-KEM-1024 conform to this interface:</t>
      <ul spacing="normal">
        <li>
          <t>ML-KEM-512 has encapsulation keys of size 800 bytes, expanded decapsulation
keys of 1632 bytes, decapsulation key seeds of size 64 bytes, ciphertext
size of 768 bytes, and shared secrets of size 32 bytes</t>
        </li>
        <li>
          <t>ML-KEM-768 has encapsulation keys of size 1184 bytes, expanded
decapsulation keys of 2400 bytes, decapsulation key seeds of size 64 bytes,
ciphertext size of 1088 bytes, and shared secrets of size 32 bytes</t>
        </li>
        <li>
          <t>ML-KEM-1024 has encapsulation keys of size 1568 bytes, expanded
decapsulation keys of 3168 bytes, decapsulation key seeds of size 64 bytes,
ciphertext size of 1568 bytes, and shared secrets of size 32 bytes</t>
        </li>
      </ul>
    </section>
    <section anchor="construction">
      <name>Construction</name>
      <t>The KEMs are defined as <tt>NamedGroup</tt>s, sent in the <tt>supported_groups</tt>
extension. <xref section="4.2.7" sectionFormat="of" target="RFC8446"/></t>
      <section anchor="negotiation">
        <name>Negotiation</name>
        <t>Each parameter set of ML-KEM is assigned an identifier, registered by IANA in
the TLS Supported Groups registry:</t>
        <artwork><![CDATA[
    enum {

         ...,

          /* ML-KEM Key Establishment Methods */
          mlkem512(0x0200),
          mlkem768(0x0201),
          mlkem1024(0x0202)

         ...,

    } NamedGroup;
]]></artwork>
      </section>
      <section anchor="construction-transmitting">
        <name>Transmitting encapsulation keys and ciphertexts</name>
        <t>The public encapsulation key and ciphertext values are each
directly encoded with fixed lengths as in <xref target="FIPS203"/>.</t>
        <t>In TLS 1.3 a KEM public encapsulation key <tt>pk</tt> or ciphertext <tt>ct</tt> is
represented as a <tt>KeyShareEntry</tt> <xref section="4.2.8" sectionFormat="of" target="RFC8446"/>:</t>
        <artwork><![CDATA[
    struct {
        NamedGroup group;
        opaque key_exchange<1..2^16-1>;
    } KeyShareEntry;
]]></artwork>
        <t>These are transmitted in the <tt>extension_data</tt> fields of
<tt>KeyShareClientHello</tt> and <tt>KeyShareServerHello</tt> extensions:</t>
        <artwork><![CDATA[
    struct {
        KeyShareEntry client_shares<0..2^16-1>;
    } KeyShareClientHello;

    struct {
        KeyShareEntry server_share;
    } KeyShareServerHello;
]]></artwork>
        <t>The client's shares are listed in descending order of client preference;
the server selects one algorithm and sends its corresponding share.</t>
        <t>For the client's share, the <tt>key_exchange</tt> value contains the <tt>pk</tt>
output of the corresponding ML-KEM parameter set's <tt>KeyGen</tt> algorithm.</t>
        <t>For the server's share, the <tt>key_exchange</tt> value contains the <tt>ct</tt>
output of the corresponding ML-KEM parameter set's <tt>Encaps</tt> algorithm.</t>
        <t>For all parameter sets, the server <bcp14>MUST</bcp14> perform the encapsulation key check
described in Section 7.2 of <xref target="FIPS203"/> on the client's encapsulation key,
and abort with an <tt>illegal_parameter</tt> alert if it fails.</t>
        <t>For all parameter sets, the client <bcp14>MUST</bcp14> check if the ciphertext length
matches the selected parameter set, and abort with an <tt>illegal_parameter</tt>
alert if it fails.</t>
        <t>If ML-KEM decapsulation fails for any other reason, the connection <bcp14>MUST</bcp14> be
aborted with an <tt>internal_error</tt> alert.</t>
      </section>
      <section anchor="construction-shared-secret">
        <name>Shared secret calculation</name>
        <t>The shared secret output from the ML-KEM <tt>Encaps</tt> and <tt>Decaps</tt> algorithms
over the appropriate keypair and ciphertext results in the same shared secret
<tt>shared_secret</tt> as its honest peer, which is inserted into the TLS 1.3 key
schedule in place of the (EC)DHE shared secret, as shown in
<xref target="fig-key-schedule"/>.</t>
        <figure anchor="fig-key-schedule">
          <name>Key schedule for key establishment</name>
          <artwork><![CDATA[
                                    0
                                    |
                                    v
                      PSK ->  HKDF-Extract = Early Secret
                                    |
                                    +-----> Derive-Secret(...)
                                    +-----> Derive-Secret(...)
                                    +-----> Derive-Secret(...)
                                    |
                                    v
                              Derive-Secret(., "derived", "")
                                    |
                                    v
             shared_secret -> HKDF-Extract = Handshake Secret
             ^^^^^^^^^^^^^          |
                                    +-----> Derive-Secret(...)
                                    +-----> Derive-Secret(...)
                                    |
                                    v
                              Derive-Secret(., "derived", "")
                                    |
                                    v
                         0 -> HKDF-Extract = Master Secret
                                    |
                                    +-----> Derive-Secret(...)
                                    +-----> Derive-Secret(...)
                                    +-----> Derive-Secret(...)
                                    +-----> Derive-Secret(...)
]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="standalone-versus-hybrid-key-establishment">
        <name>Standalone versus hybrid key establishment</name>
        <t>This document defines standalone ML-KEM key establishment for TLS 1.3.
Hybrid key establishment mechanisms, which combine a post-quantum algorithm
with a traditional algorithm such as ECDH, are supported generically via
<xref target="HYBRID"/> with some concrete definitions in <xref target="ECDHE-MLKEM"/>. Hybrid mechanisms
provide security as long as at least one of the component algorithms remains
unbroken, combining both a lattice-based and a traditional cryptographic
assumption. Standalone ML-KEM relies on lattice-based and hash function
cryptographic assumptions for its security.</t>
      </section>
      <section anchor="ind-cca">
        <name>IND-CCA</name>
        <t>The main security property for KEMs is indistinguishability under adaptive
chosen ciphertext attack (IND-CCA), which means that shared secret values
should be indistinguishable from random strings even given the ability to
have other arbitrary ciphertexts decapsulated.  IND-CCA corresponds to
security against an active attacker, and the public encapsulation key /
secret decapsulation key pair can be treated as a long-term key or
reused. ML-KEM satisfies IND-CCA security in the random oracle model
<xref target="KYBERV"/>.</t>
      </section>
      <section anchor="key-reuse">
        <name>Key reuse</name>
        <t>ML-KEM is explicitly designed to be secure in the event that the keypair is
reused, satisfying IND-CCA security via a variant of the Fujisaki-Okamoto
(FO) transform <xref target="FO"/><xref target="HHK"/>.</t>
        <t>While it is recommended that implementations avoid reuse of ML-KEM keypairs
to ensure forward secrecy, implementations that do reuse <bcp14>MUST</bcp14> ensure that the
number of reuses abides by bounds in <xref target="FIPS203"/> or subsequent security
analyses of ML-KEM.</t>
        <t>Implementations <bcp14>MUST NOT</bcp14> reuse randomness in the generation of ML-KEM
ciphertexts.</t>
        <t><xref target="NIST-SP-800-227"/> includes guidelines and requirements for implementations
on using KEMs securely. Implementers are encouraged to use implementations
resistant to side-channel attacks, especially those that can be applied by
remote attackers.</t>
      </section>
      <section anchor="binding-properties">
        <name>Binding properties</name>
        <t>TLS 1.3's key schedule commits to the ML-KEM encapsulation key and the
ciphertext as the <tt>key_exchange</tt> field of the <tt>key_share</tt> extension is
populated with those values, which are included as part of the handshake
messages. This provides resilience against re-encapsulation attacks against
KEMs used for key establishment <xref target="CDM23"/>.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requests/registers three new entries to the TLS Named Group (or
Supported Group) registry, according to the procedures in <xref section="6" sectionFormat="of" target="tlsiana"/>.</t>
      <dl>
        <dt>Value:</dt>
        <dd>
          <t>0x0200</t>
        </dd>
        <dt>Description:</dt>
        <dd>
          <t>MLKEM512</t>
        </dd>
        <dt>DTLS-OK:</dt>
        <dd>
          <t>Y</t>
        </dd>
        <dt>Recommended:</dt>
        <dd>
          <t>N</t>
        </dd>
        <dt>Reference:</dt>
        <dd>
          <t>This document</t>
        </dd>
        <dt>Comment:</dt>
        <dd>
          <t>FIPS 203 version of ML-KEM-512</t>
        </dd>
        <dt>Value:</dt>
        <dd>
          <t>0x0201</t>
        </dd>
        <dt>Description:</dt>
        <dd>
          <t>MLKEM768</t>
        </dd>
        <dt>DTLS-OK:</dt>
        <dd>
          <t>Y</t>
        </dd>
        <dt>Recommended:</dt>
        <dd>
          <t>N</t>
        </dd>
        <dt>Reference:</dt>
        <dd>
          <t>This document</t>
        </dd>
        <dt>Comment:</dt>
        <dd>
          <t>FIPS 203 version of ML-KEM-768</t>
        </dd>
        <dt>Value:</dt>
        <dd>
          <t>0x0202</t>
        </dd>
        <dt>Description:</dt>
        <dd>
          <t>MLKEM1024</t>
        </dd>
        <dt>DTLS-OK:</dt>
        <dd>
          <t>Y</t>
        </dd>
        <dt>Recommended:</dt>
        <dd>
          <t>N</t>
        </dd>
        <dt>Reference:</dt>
        <dd>
          <t>This document</t>
        </dd>
        <dt>Comment:</dt>
        <dd>
          <t>FIPS 203 version of ML-KEM-1024</t>
        </dd>
      </dl>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="FIPS203">
          <front>
            <title>Module-lattice-based key-encapsulation mechanism standard</title>
            <author>
              <organization/>
            </author>
            <date month="August" year="2024"/>
          </front>
          <seriesInfo name="DOI" value="10.6028/nist.fips.203"/>
          <refcontent>National Institute of Standards and Technology (U.S.)</refcontent>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="AVIRAM" target="https://mailarchive.ietf.org/arch/msg/tls/F4SVeL2xbGPaPB2GW_GkBbD_a5M/">
          <front>
            <title>[TLS] Combining Secrets in Hybrid Key Exchange in TLS 1.3</title>
            <author initials="" surname="Nimrod Aviram">
              <organization/>
            </author>
            <author initials="" surname="Benjamin Dowling">
              <organization/>
            </author>
            <author initials="" surname="Ilan Komargodski">
              <organization/>
            </author>
            <author initials="" surname="Kenny Paterson">
              <organization/>
            </author>
            <author initials="" surname="Eyal Ronen">
              <organization/>
            </author>
            <author initials="" surname="Eylon Yogev">
              <organization/>
            </author>
            <date year="2021" month="September" day="01"/>
          </front>
        </reference>
        <reference anchor="CDM23" target="https://eprint.iacr.org/2023/1933.pdf">
          <front>
            <title>Keeping Up with the KEMs: Stronger Security Notions for KEMs and automated analysis of KEM-based protocols</title>
            <author initials="C." surname="Cremers" fullname="Cas Cremers">
              <organization>CISPA Helmholtz Center for Information Security</organization>
            </author>
            <author initials="A." surname="Dax" fullname="Alexander Dax">
              <organization>CISPA Helmholtz Center for Information Security</organization>
            </author>
            <author initials="N." surname="Medinger" fullname="Niklas Medinger">
              <organization>CISPA Helmholtz Center for Information Security</organization>
            </author>
            <date year="2023"/>
          </front>
        </reference>
        <reference anchor="DOWLING">
          <front>
            <title>A Cryptographic Analysis of the TLS 1.3 Handshake Protocol</title>
            <author fullname="Benjamin Dowling" initials="B." surname="Dowling">
              <organization/>
            </author>
            <author fullname="Marc Fischlin" initials="M." surname="Fischlin">
              <organization/>
            </author>
            <author fullname="Felix Günther" initials="F." surname="Günther">
              <organization/>
            </author>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization/>
            </author>
            <date month="July" year="2021"/>
          </front>
          <seriesInfo name="Journal of Cryptology" value="vol. 34, no. 4"/>
          <seriesInfo name="DOI" value="10.1007/s00145-021-09384-1"/>
          <refcontent>Springer Science and Business Media LLC</refcontent>
        </reference>
        <reference anchor="ECDHE-MLKEM">
          <front>
            <title>Post-quantum hybrid ECDHE-MLKEM Key Agreement for TLSv1.3</title>
            <author fullname="Kris Kwiatkowski" initials="K." surname="Kwiatkowski">
              <organization>PQShield</organization>
            </author>
            <author fullname="Panos Kampanakis" initials="P." surname="Kampanakis">
              <organization>AWS</organization>
            </author>
            <author fullname="Bas Westerbaan" initials="B." surname="Westerbaan">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization>University of Waterloo</organization>
            </author>
            <date day="8" month="February" year="2026"/>
            <abstract>
              <t>   This draft defines three hybrid key agreement mechanisms for TLS 1.3
   - X25519MLKEM768, SecP256r1MLKEM768, and SecP384r1MLKEM1024 - that
   combine the post-quantum ML-KEM (Module-Lattice-Based Key
   Encapsulation Mechanism) with an ECDHE (Elliptic Curve Diffie-
   Hellman) exchange.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-ecdhe-mlkem-04"/>
        </reference>
        <reference anchor="FO">
          <front>
            <title>Secure Integration of Asymmetric and Symmetric Encryption Schemes</title>
            <author fullname="Eiichiro Fujisaki" initials="E." surname="Fujisaki">
              <organization/>
            </author>
            <author fullname="Tatsuaki Okamoto" initials="T." surname="Okamoto">
              <organization/>
            </author>
            <date month="December" year="2011"/>
          </front>
          <seriesInfo name="Journal of Cryptology" value="vol. 26, no. 1, pp. 80-101"/>
          <seriesInfo name="DOI" value="10.1007/s00145-011-9114-1"/>
          <refcontent>Springer Science and Business Media LLC</refcontent>
        </reference>
        <reference anchor="HHK">
          <front>
            <title>A Modular Analysis of the Fujisaki-Okamoto Transformation</title>
            <author fullname="Dennis Hofheinz" initials="D." surname="Hofheinz">
              <organization/>
            </author>
            <author fullname="Kathrin Hövelmanns" initials="K." surname="Hövelmanns">
              <organization/>
            </author>
            <author fullname="Eike Kiltz" initials="E." surname="Kiltz">
              <organization/>
            </author>
            <date year="2017"/>
          </front>
          <seriesInfo name="Lecture Notes in Computer Science" value="pp. 341-371"/>
          <seriesInfo name="DOI" value="10.1007/978-3-319-70500-2_12"/>
          <seriesInfo name="ISBN" value="[&quot;9783319704999&quot;, &quot;9783319705002&quot;]"/>
          <refcontent>Springer International Publishing</refcontent>
        </reference>
        <reference anchor="HPKE">
          <front>
            <title>Hybrid Public Key Encryption</title>
            <author fullname="R. Barnes" initials="R." surname="Barnes"/>
            <author fullname="K. Bhargavan" initials="K." surname="Bhargavan"/>
            <author fullname="B. Lipp" initials="B." surname="Lipp"/>
            <author fullname="C. Wood" initials="C." surname="Wood"/>
            <date month="February" year="2022"/>
            <abstract>
              <t>This document describes a scheme for hybrid public key encryption (HPKE). This scheme provides a variant of public key encryption of arbitrary-sized plaintexts for a recipient public key. It also includes three authenticated variants, including one that authenticates possession of a pre-shared key and two optional ones that authenticate possession of a key encapsulation mechanism (KEM) private key. HPKE works for any combination of an asymmetric KEM, key derivation function (KDF), and authenticated encryption with additional data (AEAD) encryption function. Some authenticated variants may not be supported by all KEMs. We provide instantiations of the scheme using widely used and efficient primitives, such as Elliptic Curve Diffie-Hellman (ECDH) key agreement, HMAC-based key derivation function (HKDF), and SHA2.</t>
              <t>This document is a product of the Crypto Forum Research Group (CFRG) in the IRTF.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9180"/>
          <seriesInfo name="DOI" value="10.17487/RFC9180"/>
        </reference>
        <reference anchor="HYBRID">
          <front>
            <title>Hybrid key exchange in TLS 1.3</title>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization>University of Waterloo</organization>
            </author>
            <author fullname="Scott Fluhrer" initials="S." surname="Fluhrer">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Shay Gueron" initials="S." surname="Gueron">
              <organization>University of Haifa and Meta</organization>
            </author>
            <date day="7" month="September" year="2025"/>
            <abstract>
              <t>   Hybrid key exchange refers to using multiple key exchange algorithms
   simultaneously and combining the result with the goal of providing
   security even if a way is found to defeat the encryption for all but
   one of the component algorithms.  It is motivated by transition to
   post-quantum cryptography.  This document provides a construction for
   hybrid key exchange in the Transport Layer Security (TLS) protocol
   version 1.3.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-hybrid-design-16"/>
        </reference>
        <reference anchor="KYBERV" target="https://eprint.iacr.org/2024/843.pdf">
          <front>
            <title>Formally verifying Kyber Episode V: Machine-checked IND-CCA security and correctness of ML-KEM in EasyCrypt</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="LUCKY13" target="https://ieeexplore.ieee.org/iel7/6547086/6547088/06547131.pdf">
          <front>
            <title>Lucky Thirteen: Breaking the TLS and DTLS record protocols</title>
            <author initials="N. J." surname="Al Fardan">
              <organization/>
            </author>
            <author initials="K. G." surname="Paterson">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="NIST-SP-800-227">
          <front>
            <title>Recommendations for key-encapsulation mechanisms</title>
            <author fullname="Gorjan Alagic" initials="G." surname="Alagic">
              <organization/>
            </author>
            <author fullname="Elaine Barker" initials="E." surname="Barker">
              <organization/>
            </author>
            <author fullname="Lily Chen" initials="L." surname="Chen">
              <organization/>
            </author>
            <author fullname="Dustin Moody" initials="D." surname="Moody">
              <organization/>
            </author>
            <author fullname="Angela Robinson" initials="A." surname="Robinson">
              <organization/>
            </author>
            <author fullname="Hamilton Silberg" initials="H." surname="Silberg">
              <organization/>
            </author>
            <author fullname="Noah Waller" initials="N." surname="Waller">
              <organization/>
            </author>
            <date month="September" year="2025"/>
          </front>
          <seriesInfo name="DOI" value="10.6028/nist.sp.800-227"/>
          <refcontent>National Institute of Standards and Technology (U.S.)</refcontent>
        </reference>
        <reference anchor="RACCOON" target="https://raccoon-attack.com/">
          <front>
            <title>Raccoon Attack: Finding and Exploiting Most-Significant-Bit-Oracles in TLS-DH(E)</title>
            <author initials="R." surname="Merget">
              <organization/>
            </author>
            <author initials="M." surname="Brinkmann">
              <organization/>
            </author>
            <author initials="N." surname="Aviram">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky">
              <organization/>
            </author>
            <author initials="J." surname="Mittmann">
              <organization/>
            </author>
            <author initials="J." surname="Schwenk">
              <organization/>
            </author>
            <date year="2020" month="September"/>
          </front>
        </reference>
        <reference anchor="RFC9794">
          <front>
            <title>Terminology for Post-Quantum Traditional Hybrid Schemes</title>
            <author fullname="F. Driscoll" initials="F." surname="Driscoll"/>
            <author fullname="M. Parsons" initials="M." surname="Parsons"/>
            <author fullname="B. Hale" initials="B." surname="Hale"/>
            <date month="June" year="2025"/>
            <abstract>
              <t>One aspect of the transition to post-quantum algorithms in cryptographic protocols is the development of hybrid schemes that incorporate both post-quantum and traditional asymmetric algorithms. This document defines terminology for such schemes. It is intended to be used as a reference and, hopefully, to ensure consistency and clarity across different protocols, standards, and organisations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9794"/>
          <seriesInfo name="DOI" value="10.17487/RFC9794"/>
        </reference>
        <reference anchor="tlsiana">
          <front>
            <title>IANA Registry Updates for TLS and DTLS</title>
            <author fullname="Joseph A. Salowey" initials="J. A." surname="Salowey">
              <organization>Venafi</organization>
            </author>
            <author fullname="Sean Turner" initials="S." surname="Turner">
              <organization>sn3rd</organization>
            </author>
            <date day="21" month="July" year="2025"/>
            <abstract>
              <t>   This document updates the changes to TLS and DTLS IANA registries
   made in RFC 8447.  It adds a new value "D" for discouraged to the
   Recommended column of the selected TLS registries and adds a
   "Comment" column to all active registries that do not already have a
   "Comment" column.  Finally, it updates the registration request
   instructions.

   This document updates RFC 8447.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-rfc8447bis-15"/>
        </reference>
      </references>
    </references>
    <?line 412?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Douglas Stebila for consultation on the
draft-ietf-tls-hybrid-design design, and to Scott Fluhrer, Eric Rescorla, and
Rebecca Guthrie for reviews.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1a63IbN5b+30+BlX+MlFVTJCVLspJ4RhYpS6NrRNsp19SM
BXaDJMJmowN0U2a0zrPss+yT7XcANNlNUlGSyU7VVo2qbJK4nnNwLt85QBiG
QS7zRByxjavL8KJ7xW6VycPvCp7mxYRdiBk7HmohJiLN2UBp9u6yx1qN3Y2A
9/taTI+YFPkgzBMTTpKxmAQRz8VQ6Rk60oEKglhFKZ9g/VjzQR7WR4fN/cAU
/Yk0Rqo0n2UYd959dxqkxaQv9FEQY7WjIFKpEakpzBHLdSEC7LobjMXsQen4
KGAhw1KGPrFwEHAtONjpiajQMp9tBBg2HmpVZGh9p3lqMqVzdslnQrPFqKlI
C+zF2PNDGXOkbnyPlWU6ZG9pCrVPuEzQDjr+Qpw2lB5SM9fRCM2jPM/M0c4O
jaImORWNctgONez0tXowYgfzd2jeUOajou8WfBjurBPhBhgu8pHSJAhMYWxQ
JIkTeUdIHWvBTlSaqiSZ2W7sxVP5E88h8SPW42ncV5+Pv7N9wtEfF7qYRLow
eZEUk78MqbURqUkQpEpPMHNqBXV6fttrN3exz815o9Vs7DfbhzvX5713Depp
oCsISAkqU44/nN8dXx3ZzXKuhyI/Ys9LZWKGViSne70P4rL9uf/2lt++ab/9
/tPb8Zt+5xN/ebXjlvSq/Ddo6d/B9qQvUzofHJ0WuYFKsrNZX8vYKnb3czTi
6VBQ81ytaRmrdazdbLfC5quw2bKNcynbv9B/MkyGWl7LiVYxO55KzSfrh7wR
6Q98gq066iEBUetHnSc8ZRdqAtmo2Izl+lEXIk1n7BZkaqPS9WO6M56wO5WK
J/sTlbKPaiim6DjpXLV3j2pCvBAiI+G9z9gD9JDlI8HgIDC1l2sFuS1Mgl0r
UidjPQSNYVArkhgYyQW+pTyZGWmYGlB32OcGrZlWuYpUYjbW6oPItEzzhuSR
tqqA89jdab3a3W1k8aB+TrvPn9BJg51ouDFt5u3OSE64WenBdug4790eszOR
TEYqyX9iJ3CB4JlYPC+1GhIsZbB+2+MG6/DPS1seJ+IzBITFqn1/3KbXDXYl
YklHtLTztRwn4Hel93ftjdmdm+8vz6/fzl1Aq9k82DHNZmvvZejMZ/dwLyQD
6p50zrrh1SWOH1oedhpzNyaieCR89IBTuVm/WKsVvmq13FpnZxf1Qa8ODsPd
cLf1Kjxovmw2w/anVpvG3V50j9jd6cmr1mGTfn98c3feWdp+ZB1CGAsjh2Qq
Fx/fdO8+rHdRa1Ryb+dwb6GRpe2ckrTgcdlUaDmYkRldzBDRWDeTRsWCfThi
Vxy+LhVhNBLRGOZwft0JT06OmSmNimwoUlqLKE+FscbjYzS8SJeb2YmeZTkZ
z+X7k4uPrd31REshxOcsUZrcqhCWcCmSg539l3sHzcN9/3m406Qvrd3WCjeX
RTSesXcjqXMhEDTeIMLauEcugTwnUdqhL6AVMXnZsquGWapqqah/bcAc2CnX
MU9XB1w02NtG1dFReAl7t+EhnXL7YE3s6d02fCeG3x2fnNzcXK8XjOZRpFQa
8jzn0ZgCXD2K3Ll+dmz7j9ipTMlsLLddkqjM6ecVAaYelEcOZATYFL6ReXiD
xRNhfGgJO2eb3a1nhHFHVksUrnZdNSBzmY4nPF0jJEixEnhqXZBuT02UVlMz
nq3tvpJ5vn5ZmhuNHkQ6rjvbJqyaRAuzOni1R4zAjCRc/JJh6UF0uLd30JfA
ZGEYMt43OaSSBwE0ybCJmCgWiwFMwHi9Dl+22tvl94P9w20rav+7BVtj8F33
1/BksUVc9yawcQb/tBhKQ1rCzo+vj9mUJ4WTfqmivSIjLAc7s1ONn6Fn1r8V
RgQLFMByxcg4xVSwjE73Rw+HN2+/2wLYnDFhct5PpBkRLm44/iYyjhMRBC/g
LREg4yIid4nfL6AiAEDc/SRsBDHusk3H2BZ7fPRI6ssXBsFwC6wYdkhjmIWl
r0bF46OX/ZcvwQoxbCo5lkig1DISPtLaUWnEM1MkzolPBGEfacAT0dAg6zYE
1gu7SHkuq8urbBHp5+Ia8ZxEyIxKBGBmjVqeIB0AfpiYbYsjVJGDPud1GSF7
QHorKbcMT4zCuUVJAY/MeACViSV1A81E5O/UUPNsJKPFwg32HntH4NSUM+l0
iVVF5wvLEJQDmMDuoMWPhQQqdgIGCFo65BWetz2ZHCKJA5HC1lRKHYY9jASt
RL4ezp1mGvkTyIBwEnLZ8ClZkTuRIy9hqRCxiK1eB7GAC5lV10nEkEczr0hA
5YK09Ae4fxynJrzlpWb3GWE90yB1A7xH8uKOxXpiOjwrM0O2Jux4ypUMkrz3
vXcb2+6TXd/Y73fd796f33U79L13dnx5Of8S+BG9s5v3l53Ft8XMk5urq+51
x01GK6s1BRtXxx83nBlv3Ny+O7+5Pr7ccGYJTZ+rG4kGNtcnKA4jzgDWCTVC
IYWJtOzjB+a8Obn9n/9u7UH//wMG0G61XsFg3I/D1gGsgcSYut1UiuDrfsID
zAKeZYJrWgVHBV3JZA5N2yaHYkbqIWV0AJDmV38jyfz9iH3Tj7LW3mvfQAzX
GkuZ1RqtzFZbViY7Ia5pWrPNXJq19iVJ1+k9/lj7Xcq90vjNn5GBCBa2Dv/8
OiAVunjaQRj2+ILy6y/eb88PbQIck6xzEdz8ksMxAXkcswVvACseWduCIyZ0
k4+0EBWHcQTHyu5B21uRbm6x8DXbzMbbzIy37gGiCWX0eV9iX7g6u+VQpEJ7
aytX2UaAcjv5XnIrLCtAb7REIy1xn43vXfZCQEzbaByLlVFmfN8g4rp2AZDl
yIvgLKxlxp/c7HWU1jal6sCcVE9ozsdEJHmzzHrLZ6nFKvCrGEy8RTKDNufi
c87uo9xx44jyLIH8Ko2Ok45lctNAwFFuuakPIj7qgniS7oDNKfcbrpegQ7hr
qPW8kGyeozwI1mOHFegAPaMchvyMdT7W0wx4JKyWLRZhIwh+RdIWfZNvZwCX
rD+DFm0zwGpK4+I6e6C6nNDa322Xg1dFYBAMFuvu75UjFxLBUrYPY4gl379y
notFyu0qLNHEZ1hqtQ73lnlap/Z2RntvIYBfzRNWq5xzyVMLWcfvY8qe6HNc
vVyI7FmudluLwf8sVy9/41HZCL6AQY8vqqjoiwvhrqiCMOmQWbyChOF3yPd6
xHtvSrj7yZYzzX0AEkVKZdYGYiZyeLvXXqPdOCCSbBDd29sHpCTAei2GgKzc
05MufqG7C2jMMk6oisoDRuTVzJTsnzJpW/VhMiZgMpBCb88hOnr6MwfTZRo8
i89hnj///LMrT6aEfoN51YI1Go3tyk+281VJh63v1aLSlQD2xCl+tVOZYKsO
MPrN5mckNs2t7eU+WI/ra632kRK6zvbWWqK+sMUJfW25sMK1heUJ8i7KHtco
cN0rmiWFCPPKdK8dT8aHJQfr0yLSI4FTDGJJxYXExmpFjswW+gbyM74mIh3m
Ix+GqjkKfO75IlXipJrPBCig4WUvj2RDC+A8UlqnzdxG+h4ZSxf50+x+SU0P
62paUQsnGihGeQILqbti/teLOlfGfywsIP4kfPX3m1aj0f5Haz9svf7an1qN
Dn9wEDOSDAtUS/k7VGrNbW5cn5Am83uIUCTWYwRzpk4SCV7PRJIoF+TmPT2h
p0L7nvlK5pc4rFHIIrv0J5cSfNN8kp8KCV8Hv2ZhYylzCy8vVqF6ISJPyp+M
z0+swAj2OFkRnBeuiIJ0BM4DR+pmACKJAXxDGmEjEqnbGh8JdACSTCvA0LlV
LATVzI2rkZlMuYXtxtDRU2hdvkLRtjuvqgLcO7MggJAjxTNuBPQ2cDDEIVOx
tI33MzU/iE08Wr2vZKcLUhxPv5kU2MvvIsVh01VSKAOqDTbbFfKYzXcyYCOL
ltC+atW2ZFlPzkpTPWi0icpqTUOl9YNYWW/blXH6dNdmPRAix71MKB1OPs0p
JUbgQpgc4NTZgMvEPMOQVy3LkCWZ5tqOhTdybi6Y8BwjjJcD6RxdUFTXdMH8
WSKDdUSez+NjHVvYfltK4emMKWyuEfe4UalnQKWpl6tloi8CS0DpqS0JhGNT
0CC0VqWQGjbQ9GrQOeJJVG68FFIcRAndQB9T6rjb699AK6cTnp2FjpFDcylE
ReFMoEijaAIScK0yDRRh3W/GpV6OTlDpIsnnVTsDidapCJbQv41NmDCCd0AG
mQmCGS4VsQDfCO0cj8X8Yh6zsH9gcNxxkdjLvyxBGlDa1mb3ZKtz1q3vXCkU
ALM8Pg7kMMQqYbmKjYo/l+76ub/mrxr1X79q1PSJUbe9C8rh2NlF5zTsfraV
V/Yt63KNcN8rM9s/ior/DOnvNesILacidOtvAglt/T+Y/s8Juvxb2nybbcS2
JabK2Mb/ISU1m6AzXzryM5gZxozF2mP/R/Xvt1Ly73P7gyhprjm3K07Z0r9t
9ddOt+738Yi9WHbO7kLv2w3KCedtFHRXSpcblP0uXjVQWo4M1lUUKQ8rr2bD
qNbjcube4j4BQc8Uplqur22zXEktb1sqNxI+vq4WVyv3Lo3g7IkNKtXWRZmV
HsMIKiauvZ0JHKBg1fuWBeA2BZZACKRb/G0L6ucFBldWlZG77pYc0dHds1M9
ntY0amKRDJ2Ur1+4ywmXV1YeBiCKlu9zKuVi4IYpZF25FzcMMhrapJEAHKfq
cSoW4HiS0bOXvIJDgC0mBKiDIu1rNaZrgWj+OqivLOf1KzNXAn7y9ingxhQT
exfWqJ68PzctAD0pa1mz6ogb5NhF6q4Hl+605qs6WEjopuTbYTr/SsBhNOJp
IRcCWEA8s8UrHIuCYqo6p8MCumFr0BhQ2McnPOYZPcwKopFCNlWFYu5KnG36
3ebF+ongNiuB3Ov40FUWAkCkIondRU5tX7I4wo7InWN8AHqiC6nAFPsOJf1v
QaKnL1fBiE+FR8Rc9yUOghLdSlVkgaRF3GDz1xOL1MjQMgulGdL55wSZ4V6x
o+eRICOdSv5LZZSd4Mk6tgWyEVbtU2VA8Hk1g1Q0hAN3F4pKB1oUhkj1KmKw
hhmQlqw8/PAA2MtK2acE7roFxuXep1jA+cJd3NiFyzo4nTk995CRpMKOe9YC
mtz1mt1ClBuQ9HN3mvloActtbYZo3fZE2vcrK1S6i+YpB6ZP55npafGDNHws
w5sxnygcwObpzZYrmdh8EnnhzZcvcBFnF5aF70eSMHhOZNPjkQncFxWiLFFy
kiX25al3wHyqZOzYrZQcPdkmAIv0SlRb5/5AV+f21KLZ9spKdvlY+bVsbuWn
ltLwT1BpHzvIkHLSlXR/BodR2NpDWk9zkSYWfSN+LEiqpZgC9/ZNVJ7vUEK4
RE95x+gJcidvH/34o6rcbM3XCSrmgDUfH5cex9BzgvIiHWYI9bFRxj2XsHfg
7vLZOpo6QQH2KYx9tkR+xKlNMmuwOeH01MLWEdNIFZoPnYoR8ctLwRwlRbac
BlDUDMm1pyLxFkjleZOJSNoIkpMvcqfgrQqZI5wpFY2xFHRqYbnG2cAb/y7H
+z9JNXUfIv/kriLnUZ8UjHyqTwi9Bq2vm5ISVF2iWVevsYW+Uvltn/WLlToe
mVOmMueoypeUxKNzmaVn5dYs7WlZB5JxPTeqUYnggwlUArI27r0G86GRTMdI
KnYgjS0dnRZhnS8v7XJAYE+WzHw9FoJu20ehztO4en0dEC3DGFIqLGF2Fo9x
3I1uKh4gY7h8MZc8nY8t07pyP9uEg1y6AtiaXwHAQ0f0rsw+OXPzwXmEI9XC
m2FZftqnmqt/j2QpD9gHkvNRwI6YK/KjqWMrVzbO2g6LPl622tRFz7VuLmzz
R/y+Wzgl23Zt23yp0rbUhIDeEzs+t33zxz6ECGvGG9rtVslrPUXewf7hv5I8
u90qee2nyKPLkH8lfW4/+/CqD7UmFT2Oxql6SEQ8tH4NuYDz4SL+dmPAEyM2
bGmLp2Orhh1VDOkxbC8XgB3cWgHh+iLxD3Zc3TJYenVfey/q46uHEIr1IpXn
7DQpoPcAFl3gYrBroLwJd69+7kRfRBFnbwvYhnR5iBZTKR7gzf4XCdRKWY8x
AAA=

-->

</rfc>
