<?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-07" 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-07"/>
    <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, targeting smaller key
sizes or less computation, and simplicity.</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 quantum-resistant and traditional
cryptographic assumptions. 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 411?>

<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+1a63LbRrL+j6eYI/9YKStQpCRbspJ4VxYpS6trRNsp19au
NQSGJJYggMwAkhit8yznWc6Tna97BgRAUlGSzdmqU7WqsknOtbunL1/3jO/7
Xh7lsToQaxfn/lnvQlynJve/K2SSF1NxpmbicKSVmqokF8NUi/fnfdFp7ax5
cjDQ6u5ARCof+nls/Gk8UVMvkLkapXqGjmSYel6YBomcYv1Qy2HuN0f77T3P
FINpZEyUJvksw7jT3vtjLymmA6UPvBCrHXhBmhiVmMIciFwXysOuO95Eze5T
HR54whdYytAnFvY8qZUEO30VFDrKZ2sehk1GOi0ytL7XMjFZqnNxLmdKi2rU
nUoK7CXE80OFsKSufY+Vo2Qk3tEUap/KKEY76PgzcdpK9YiapQ7GaB7neWYO
trZoFDVFd6pVDtuihq2BTu+N2sL8LZo3ivJxMbAL3o+2VolwDQwX+TjVJAhM
EWJYxLEVeVdFOtRKHKVJksbxjLuxl0yiH2UOiR+IvkzCQfpw+B33KUt/WOhi
GujC5EVcTP88otZWkE49L0n1FDPvWFDHp9f97fYO9rk6bXXarVft7f2ty9P+
+xb1tNDleaQEtSmHH09vDi8OeLNc6pHKD8TzUpmaEYvkeLf/UZ1vPwzeXcvr
t9vvvv/8bvJ20P0sX15s2SWdKv8VWvo3sD0dRAmdD45Oq9xAJcXJbKCjkBW7
9xCMZTJS1DxXa1qGtU5st7c7fvu13+5w41zK/Oe7T4HJUMvLaKrTUBzeRVpO
Vw95q5J/yCm26qb3MYhaPeo0lok4S6eQTRqaSbR61JlKkpm4BpnapMnqMb2Z
jMVNmqgn++M0EZ/SkbpDx1H3YnvnoCHEM6UyEt6HTNxDD0U+VgIOAlP7uU4h
t8okxGVK6mTYQ9AYAbUiiYGRXOFbIuOZiYxIh9TtD6RBa6bTPA3S2Kyt1AeV
6SjJW5EMNKsCzmNnq/N6Z6eVhcPmOe08f0JHLXGk4ca0mbdbIzmSZqkH26Hj
tH99KE5UPB2ncf6jOIILBM/E4mmp1ZBgKYPV2x62RFc+LGx5GKsHCAiL1ft+
v00vW+JChREd0cLOl9EkBr9Lvb9pb8zuXn1/fnr5bu4COu323pZptzu7L31r
Pjv7uz4ZUO+oe9LzL85x/NByv9uauzEVhGPlogecytXqxTod/3WnY9c6OTlr
Dnq9t+/v+Dud1/5e+2W77W9/7mzTuOuz3oG4OT563dlv0+9Pb29Ouwvbj9kh
+KEy0YhM5ezT297Nx9UuaoVK7m7t71YaWdrOMUkLHlfcKR0NZ2RGZzNENNHL
IpOGSnw8EBcSvi5RfjBWwQTmcHrZ9Y+ODoUpjYpsKEi1VkGeKMPG42I0vEhP
mtmRnmU5Gc/5h6OzT52d1URHSqmHLE41uVWlmPBIxXtbr17u7rX3X7nP/a02
fensdJa4OS+CyUy8H0c6VwpB4y0iLMc9cgnkOYnSLn0BrYjJi5ZdN8xSVUtF
/UsL5iCOpQ5lsjzgrCXeteqOjsKL37/29+mUt/dWxJ7+dct1YvjN4dHR1dXl
asFoGQRpmvgyz2UwoQDXjCI3tl8ccv+BOI4SMhvmtkcSjXL6eUGAqQ/liYZR
ANjkv41y/wqLx8q40OJ3T9Z7G88I44aslihc7rpoQeZRMpnKZIWQIMVa4Gl0
Qbr9dJrq9M5MZiu7L6I8X70szQ3G9yqZNJ1tG1ZNooVZ7b3eJUZgRhFc/IJh
6WGwv7u7N4iAyXzfF3Jgckgl9zxokhFTNU1FqIYwAeP02n/Z2d4sv++92t9k
UbvfHdiagO+6vYQnCxlx3RqP4wz+aTWKDGmJOD28PBR3Mi6s9EsV7RcZYTnY
GU81boaesX8rjPIqFCDyVJBxqjslMjrdHxwcXr/+bgNgcyaUyeUgjsyYcHHL
8jeNwjBWnvcC3hIBMiwCcpf4/QIqAgAk7U/CRhDjjli3jG2Ix0eHpL58ERCM
ZGAlsEMSwiyYvgYVj49O9l++eEvEiLtIYokYSh0FykVaHpUEMjNFbJ34VBH2
iQx4IhpaZN2GwHrBi5Tnsrx8mlWRfi6uscxJhMKksQLMbFArY6QDwA9Ts8k4
Ii1y0Ge9riBkD0jPkrLLyNikOLcgLuCRhfSgMmFE3UAzAfm7dKRlNo6CauGW
+IC9A3Bqypl0usRqSucLy1CUAxiPd9DqhyICKrYCBghaOOQlnjed5yBjN+TW
4ccxyDPRj9gRcojJO8N9ZEXO0rV6a6JpFkcBPHmLlAIgHCmGFR77SxIxc2bI
IhTvSxmNQSr2of9+bdN+issr/n7T++7D6U2vS9/7J4fn5/MvnhvRP7n6cN6t
vlUzj64uLnqXXTsZraLR5K1dHH5as0SvXV2/P726PDxfs8YDfZwrBRIrsowB
AWaYWgZITdgOaqNMoKMBfmDO26Pr//nvzi609L+gptudzmuotf2x39mDzor7
sXIiShOESPsTdjrzZJYpqWkVSBknmkU59GGTzN6M0/tEjBWimOd99VeSzN8O
xDeDIOvsvnENxHCjsZRZo5FlttyyNNkKcUXTim3m0my0L0i6Se/hp8bvUu61
xm/+hDxBCb+z/6c3HqnQ2dNmbMTjC8qCvzjvOj+0KdBGvMqQpfk5t2A88gtm
AzYLWxuzocJdEgbJx1qpmlkfwP2JW9D2TiXrG8J/I9azyaYwk41bQF3CAgM5
iLAvHBJvOVKJ0na/+SqbCCN2J9dLxi+yAvQGCzTSErfZ5NbmGASXNMfMUC2N
MpPbFhHX4wVAliUvgEmbMdQ5/Gxnr6K0sSnl8HNSHaG5nBCR5HMy9mnPUotV
4P0wmHgLogzanKuHXNwGueXGEuVYAvl1Gi0nXWZy3UDAQc7cNAcRH01BPEm3
J+aUuw1XS9Di0BXUOl5INs9R7nmrI/xSgIeeUaZBfoadD3uaoQwUa1m1iBhD
8EuSZoxMblkAAorBDFq0KQB+KdkKm+yB6nJC59XOdjl4WQRGqbBa99VuObKS
CJbiPowhllz/0nlWi5Tb1Viiic+w1Ons7y7ytErtecb2biWAX8wTVqudc8lT
B7nBb2OKT/Q5rl5WInuWq51ONfhf5erlrzwqjuAVWHl8UccuX2wIt6UPhEmL
n8IlvAq/Q77X4dJbU4LSz1x0NLceSFQJFUNbiJnItHmv3dZ2a49I4iC6u/sK
wI9g5aUaAVhKR09S/UJ3DwBWZJKwDyXxRuX1/JHsn/Jdrs2IKCRgMoyU3pwD
afQMZhZMR4n3LIqGef7000+2iJgQRvXmtQXRarU2az/F1lclHVyFa0SlCwWE
iFP8aqs2gWsDMPr19gPSj/bG5mIfrMf2dZb7SAlt5/bGSqK+iOqEvmYuWLhc
/p0iOyLYt0KBm17RLCiEn9emO+14Mj4sOFiXvJAeKZyiF0ZUAog5VqfkyLgc
N4we8DVWySgfuzBUzyTgc0+rhEaSaj4ToABkF708UgKtgPNIaa02S470fTKW
HrKc2e2Cmu431bSmFlY0UIzyBCqp25L711U1KpM/FAyIPytXo/2m02pt/73z
yu+8+dqdWoMOd3AQM1IBBqql/C0qZXObG9dnJLPyFiJUMXsMb87UURyB1xMV
x6kNcvOevtJ3Srue+Urm5zhsUCgCXvozOxrzTftJfmokfO39koUNU2YXXlys
RnUlIkfKH4z1elbVCPZYWRGcV7bUgXQEzgNHamcAIqkhfEMSYCMSqd0aHzF0
AJJMasDQulUsBNXMja1kmSy1C/PG0NFjaF2+RNGmPa+6AtxasyCAkMsIORSP
gN56FoZYZKoWtnF+puEHsYlDq7e1HLIixfL0q0mBvfwmUiw2XSaFMqDGYLNZ
I09wvpMBGzFaQvuyVXNhsZmclaa619omKuuVhzRpHsTSepu22DKgGzH2QIgc
txGy4ZGMP88pJUbgQkQ0xKmLoYxi8wxDTrWYISaZ5nJH5Y2sm/OmMscI4+RA
OkfXCPU1bTB/lkhvFZGn8/jYxBbczwUPmcxEis014p40aeIYSJPEyZWZGCiP
CSg9NZNAODYBDUrrtBRSiwNNvwGdAxkH5cYLIcVCFN8OdDGlibud/g11anXC
sVPpGDk0m0LUFM54KWkUTUACrtNMA0Ww+81kpBejE1S6iPN5bc1Aok0qvAX0
z7EJE8bwDsggM0Uww6YiDPCN0tbxMOZX85jFJRYcd1jEfEWXxUgDStta7x1t
dE96zZ1rhQJglsfHYTTysYpfrsJR8afSXT/31/5Fo/75i0bdPTHqun9GOZw4
Oese+70Hro+Kb0VPaoT7fpnZ/l5U/NGnvzeiq3R0p3y7/jqQ0Mb/g+n/mqDL
v4XNN8VayC0hVcbW/g8padgEnfnCkZ/AzDBmolYe+9/rf7+Wkv+c2+9ESXvF
uV1Iypb+Y6u/dDq738cD8WLROdtrt2/XKCect1HQXSpdrlH2W709oLQcGayt
KFIeVl6g+kGjx+bM/arqj6BnClNeRSxts1hJLe9EavcGLr4uF1drtyMt7+SJ
DWrV1qrMSk9WFBUTV96heBZQiPqtSAW4TYElEALprn2TQf28wGDLqlFgL6Uj
iehob8OpHk9rmnTKSIZOytUv7OWEzStr1/eIou4VjVcrPwM33EHWtdtrIyCj
ESeNBOAkVY8TVYHjaUaPU3KvwiHAFlMG1EUy0OmErgWC+RseJwsf+COiI8gZ
mNQE4S1cDxlTTO1lVat+6u7MtALspIxl4aqMFh1LM/aGRWIx3ZPL8ikTsil5
tnjO3eNbfEb8VDIhcAW0M6veyTACCqninIwK6AXXnzGg4OchMpQZPZ3ygnGK
TKoOw+yltVh3u80L9VMlOSOBzJvY0FYVPMCjIg7tJU5jX7I2wo3Im0N8AHai
C2nAHfYdRfQ/A0RHX556Y3mnHBqWehDhJCjJrVVEKhStwpaYv2+o0iJDy1QK
M6Kzp2MVcK3Y0fFIcJGP+udKKFvekzVsBrEBVh1QVUDJeSWD1NOH87ZXfqn2
tCoMkepUxGANMyQtWXqa4cCvk1XKl/32qgWGZV+QMNh8YS9teOGyBk5nTg8y
6GoQxmgfnoAme7XGW6hyA5J+bk8zH1eQnOsyROumI5JfmCxRaa+C7yTwfDLP
So+Lf0RGTiL/aiKnKQ5g/fhqw5ZLOJdETnj15Qvcw8kZs/D9OCL8nRPZ9Lxj
CtdFRSgmiq44+W2oc77yLo1Cy26t3OjINh5YpHecmh37PV1u86kFs82llXj5
MHVrcV7lppbScI9EaR8eZEg56dJ4MBODtOC6Q9JMcZEiFgOjfihIqqWYPPs6
TdUe2FAyuEBPeb/oCLInz89y3FHVbrXm63g1c8Caj48Lz1fowr+86oYZQn04
wtgHDXxLTRQ4R9MkyMM+heGHReRHrNrEs5aYE06PIbiGmARpoeXIqhgRv7hU
5VIxgCKmT249UbGzQCrNm0wFEUePnHyRPQVnVcga4UypYIyloFOV5RprA2/d
yxnn/yKqp7vw+Ad7DTmP+KRg5FNdMug0aHXNlJSg7hLNqloNF/lK5ec+9ou1
Gh6ZU5Zm1lGVbx2JR+syS88q2Sz5tNiBZFLPjWpconeERGMga2NfVJRhkUzH
RFToQApbOjqt/CZfTtrlAI9Plsx8NQ6CbvOzTetpbK2+CYYWIQwpFZYwW9Vz
GXubm6h7yBguX80lT+fDJVpb6hfrcJAL5f+NefkfHjqgl1/8KMzOB+cBjlQr
Z4Zl6ekV1VvdiyGm3BMfSc4HnjgQtsCPpi5XrTjOcgcjj5edbeqiB1VXZ9z8
Cb9vKqfEbZfc5sqU3NIQAnqPeHzOffPnOIQGG8br83bL5HWeIm/v1f6/kzze
bpm87afIo4uQfyd9dj9+GjWAWpOKHgaTJL2PVThiv4Y8wPpwFX67NpSxUWtc
1pLJhNWwmxYjeq7azxVgh2QrIExfxLlztOx6vYV38Y0XnS6+OgiRin6Q5rk4
jgvoPYBFD5gY7Boobyx5kHejBioIpHhXwDYim4NodRepe3iz/wWCPuooMTEA
AA==

-->

</rfc>
