<?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.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-tls-mlkem-09" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.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-09"/>
    <author fullname="Deirdre Connolly">
      <organization>SandboxAQ</organization>
      <address>
        <email>durumcrustulum@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="July" day="20"/>
    <area>Security</area>
    <workgroup>Transport Layer Security</workgroup>
    <keyword>kems</keyword>
    <keyword>tls</keyword>
    <abstract>
      <?line 152?>

<t>This memo defines ML-KEM-512, ML-KEM-768, and ML-KEM-1024 as <tt>NamedGroup</tt>s
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 158?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>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 via the existing
<tt>supported_groups</tt> <xref section="4.3.7" sectionFormat="of" target="RFC9846"/> and <tt>key_share</tt> <xref section="4.3.8" sectionFormat="of" target="RFC9846"/> extensions.</t>
    </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.3.7" sectionFormat="of" target="RFC9846"/></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> as specified in <xref section="4.3.8" sectionFormat="of" target="RFC9846"/>. These are transmitted in the <tt>extension_data</tt> fields of
<tt>KeyShareClientHello</tt> and <tt>KeyShareServerHello</tt> extensions.</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>
        <t>Implementations <bcp14>MUST NOT</bcp14> reuse randomness in the generation of ML-KEM
ciphertexts— it follows that ML-KEM ciphertexts also <bcp14>MUST NOT</bcp14> be reused.</t>
        <t>During encapsulation, ML-KEM draws the encapsulation randomness from a random
bit generator; the peer holding the decapsulation key <tt>sk</tt> recovers this
randomness exactly. Any information that this randomness provides about other
outputs of the generator is therefore available to that peer.</t>
      </section>
      <section anchor="construction-shared-secret">
        <name>Shared secret calculation</name>
        <t>The fixed-length 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 peer, which is inserted into the TLS 1.3
key schedule in place of the (EC)DHE shared secret, as shown in <xref section="7.1" sectionFormat="of" target="RFC9846"/>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document defines standalone ML-KEM key establishment for TLS 1.3.  Use
of KEMs for key agreement in TLS 1.3 has been analyzed in multiple settings
and security models <xref target="DOWLING"/> <xref target="KEMTLS"/> <xref target="HV22"/> <xref target="CHSW22"/> <xref target="CZCJWH25"/>
        <xref target="ZJZ24"/>; ML-KEM's IND-CCA security exceeds the requirements for ephemeral
key establishment <xref target="GHS25"/> <xref target="RFC9846"/>. Multiple formal analyses,
including pen-and-paper computational proofs and machine-checked symbolic
analysis using ProVerif <xref target="KOBEISSI26"/>, demonstrate that replacing
Diffie-Hellman with an IND-CCA-secure KEM preserves the security properties
of the TLS handshake. Formal analysis has also shown that hybrid key
establishment (e.g., <xref target="HYBRID"/>, <xref target="ECDHE-MLKEM"/>) provides compositional
security: the exchange remains secure as long as at least one of the
component algorithms is unbroken <xref target="BJ24"/> <xref target="CPWB25"/>.</t>
      <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>
      <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>
      <t>Implementers must evaluate their specific security, performance, and
operational constraints when deciding whether to deploy standalone ML-KEM or
a hybrid construction. The recommended column in the IANA TLS Supported
Groups registry contains the IETF's current guidance on the recommended use
of these algorithms for general purposes.</t>
      <t>The disclosure of the output(s) of an insecure random number generator (RNG)
when used in TLS and other protocols can be used in an attack to compromise
the state of the insecure RNG itself as described in [DUALEC-TLS]. The
encapsulation randomness in ML-KEM is an additional place where raw RNG
output may be disclosed, therefore it is important to follow the RNG guidance
in <xref target="FIPS203"/> and <xref target="RFC9846"/>. Implementers can choose to implement mechanisms
from <xref target="RFC8937"/> for additional protection across sessions.</t>
    </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="RFC9847"/>.</t>
      <table>
        <thead>
          <tr>
            <th align="left">Value</th>
            <th align="left">Description</th>
            <th align="left">DTLS-OK</th>
            <th align="left">Recommended</th>
            <th align="left">Reference</th>
            <th align="left">Comment</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">0x0200</td>
            <td align="left">MLKEM512</td>
            <td align="left">Y</td>
            <td align="left">N</td>
            <td align="left">This document.</td>
            <td align="left">FIPS 203 version of ML-KEM-512</td>
          </tr>
          <tr>
            <td align="left">0x0201</td>
            <td align="left">MLKEM768</td>
            <td align="left">Y</td>
            <td align="left">N</td>
            <td align="left">This document.</td>
            <td align="left">FIPS 203 version of ML-KEM-768</td>
          </tr>
          <tr>
            <td align="left">0x0202</td>
            <td align="left">MLKEM1024</td>
            <td align="left">Y</td>
            <td align="left">N</td>
            <td align="left">This document.</td>
            <td align="left">FIPS 203 version of ML-KEM-1024</td>
          </tr>
        </tbody>
      </table>
      <t>As defined in <xref section="3" sectionFormat="of" target="RFC9847"/>, the value N indicates:</t>
      <ul empty="true">
        <li>
          <t>That the item has not been evaluated by the IETF and that the IETF has made
no statement about the suitability of the associated mechanism. This does
not necessarily mean that the mechanism is flawed, only that no consensus
exists. The IETF might have consensus to leave an item marked as "N" on the
basis of the item having limited applicability or usage constraints.</t>
        </li>
      </ul>
    </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="RFC9846">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="July" year="2026"/>
            <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 obsoletes RFC 8446, which specified TLS 1.3. This document obsoletes RFC 5246 (specifying TLS 1.2) and RFCs 5077, 6961, 7627, and 8422, all of which pertain to TLS 1.2 or earlier, and updates RFCs 5705 and 6066. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9846"/>
          <seriesInfo name="DOI" value="10.17487/RFC9846"/>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="BJ24" target="https://bblanche.gitlabpages.inria.fr/publications/BlanchetJacommeCSF24.pdf">
          <front>
            <title>Post-Quantum Sound CryptoVerif and Verification of Hybrid TLS and SSH Key-Exchanges</title>
            <author initials="B." surname="Blanchet" fullname="Bruno Blanchet">
              <organization/>
            </author>
            <author initials="C." surname="Jacomme" fullname="Charlie Jacomme">
              <organization/>
            </author>
            <date year="2024"/>
          </front>
          <seriesInfo name="Proceedings of CSF 2024" value=""/>
        </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="CHSW22" target="https://doi.org/10.1007/978-3-031-17143-7_4">
          <front>
            <title>A Tale of Two Models: Formal Verification of KEMTLS via Tamarin</title>
            <author initials="S." surname="Celi">
              <organization/>
            </author>
            <author initials="J." surname="Hoyland">
              <organization/>
            </author>
            <author initials="D." surname="Stebila">
              <organization/>
            </author>
            <author initials="T." surname="Wiggers">
              <organization/>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="Proceedings of ESORICS 2022" value=""/>
        </reference>
        <reference anchor="CPWB25" target="https://doi.org/10.3390/e27121242">
          <front>
            <title>On the Security and Efficiency of TLS 1.3 Handshake with Hybrid Key Exchange from CPA-Secure KEMs</title>
            <author initials="J." surname="Chen" fullname="Jinrong Chen">
              <organization/>
            </author>
            <author initials="W." surname="Peng" fullname="Wei Peng">
              <organization/>
            </author>
            <author initials="Y." surname="Wang" fullname="Yi Wang">
              <organization/>
            </author>
            <author initials="Y." surname="Bian" fullname="Yutong Bian">
              <organization/>
            </author>
            <date year="2025"/>
          </front>
          <seriesInfo name="Entropy 27(12):1242" value=""/>
        </reference>
        <reference anchor="CZCJWH25" target="https://eprint.iacr.org/2025/1748.pdf">
          <front>
            <title>Post-Quantum {TLS} 1.3 Handshake from {CPA}-Secure {KEMs} with Tighter Reductions</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="DOWLING" target="https://doi.org/10.1007/s00145-021-09384-1">
          <front>
            <title>A Cryptographic Analysis of the TLS 1.3 Handshake Protocol</title>
            <author>
              <organization/>
            </author>
            <date year="2020"/>
          </front>
          <seriesInfo name="Journal of Cryptology 2021" value=""/>
        </reference>
        <reference anchor="DUALECTLS" target="https://www.usenix.org/system/files/conference/usenixsecurity14/sec14-paper-checkoway.pdf">
          <front>
            <title>On the Practical Exploitability of Dual EC in TLS Implementations</title>
            <author>
              <organization/>
            </author>
            <date year="2014"/>
          </front>
        </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="26" month="May" 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-05"/>
        </reference>
        <reference anchor="GHS25" target="https://eprint.iacr.org/2025/343.pdf">
          <front>
            <title>On The Multi-target Security of Post-Quantum Key Encapsulation Mechanisms</title>
            <author initials="L." surname="Glabush" fullname="Lewis Glabush">
              <organization/>
            </author>
            <author initials="K." surname="Hovelmanns" fullname="Kathrin Hovelmanns">
              <organization/>
            </author>
            <author initials="D." surname="Stebila" fullname="Douglas Stebila">
              <organization/>
            </author>
            <date year="2025"/>
          </front>
          <seriesInfo name="Cryptology ePrint Archive, Report 2025/343" value=""/>
        </reference>
        <reference anchor="HV22" target="https://link.springer.com/chapter/10.1007/978-3-031-07082-2_22">
          <front>
            <title>On IND-qCCA Security in the ROM and Its Applications - CPA Security Is Sufficient for TLS 1.3</title>
            <author initials="L." surname="Huguenin-Dumittan" fullname="Loïs Huguenin-Dumittan">
              <organization/>
            </author>
            <author initials="S." surname="Vaudenay" fullname="Serge Vaudenay">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
          <seriesInfo name="Proceedings of Eurocrypt 2022" value=""/>
        </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="KOBEISSI26" target="https://eprint.iacr.org/2026/1147.pdf">
          <front>
            <title>FATT Chance: On the Robustness of Standalone and Hybrid ML-KEM Key Exchange in TLS 1.3</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="KEMTLS">
          <front>
            <title>Post-Quantum TLS Without Handshake Signatures</title>
            <author fullname="Peter Schwabe" initials="P." surname="Schwabe">
              <organization>Max Planck Institute for Security and Privacy &amp;amp; Radboud University, Bochum, Germany</organization>
            </author>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization>University of Waterloo, Waterloo, ON, Canada</organization>
            </author>
            <author fullname="Thom Wiggers" initials="T." surname="Wiggers">
              <organization>Radboud University, Nijmegen, Netherlands</organization>
            </author>
            <date month="October" year="2020"/>
          </front>
          <seriesInfo name="Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security" value="pp. 1461-1480"/>
          <seriesInfo name="DOI" value="10.1145/3372297.3423350"/>
          <refcontent>ACM</refcontent>
        </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="RFC8937">
          <front>
            <title>Randomness Improvements for Security Protocols</title>
            <author fullname="C. Cremers" initials="C." surname="Cremers"/>
            <author fullname="L. Garratt" initials="L." surname="Garratt"/>
            <author fullname="S. Smyshlyaev" initials="S." surname="Smyshlyaev"/>
            <author fullname="N. Sullivan" initials="N." surname="Sullivan"/>
            <author fullname="C. Wood" initials="C." surname="Wood"/>
            <date month="October" year="2020"/>
            <abstract>
              <t>Randomness is a crucial ingredient for Transport Layer Security (TLS) and related security protocols. Weak or predictable "cryptographically secure" pseudorandom number generators (CSPRNGs) can be abused or exploited for malicious purposes. An initial entropy source that seeds a CSPRNG might be weak or broken as well, which can also lead to critical and systemic security problems. This document describes a way for security protocol implementations to augment their CSPRNGs using long-term private keys. This improves randomness from broken or otherwise subverted CSPRNGs.</t>
              <t>This document is a product of the Crypto Forum Research Group (CFRG) in the IRTF.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8937"/>
          <seriesInfo name="DOI" value="10.17487/RFC8937"/>
        </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="RFC9847">
          <front>
            <title>IANA Registry Updates for TLS and DTLS</title>
            <author fullname="J. Salowey" initials="J." surname="Salowey"/>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <date month="December" year="2025"/>
            <abstract>
              <t>This document updates the changes to the 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.</t>
              <t>This document updates RFC 8447.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9847"/>
          <seriesInfo name="DOI" value="10.17487/RFC9847"/>
        </reference>
        <reference anchor="ZJZ24" target="https://doi.org/10.1007/978-981-96-0891-1_14">
          <front>
            <title>CPA-Secure KEMs are also Sufficient for Post-quantum TLS 1.3</title>
            <author initials="B." surname="Zhou">
              <organization/>
            </author>
            <author initials="H." surname="Jiang">
              <organization/>
            </author>
            <author initials="Y." surname="Zhao">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
          <seriesInfo name="Proceedings of Asiacrypt 2024" value=""/>
        </reference>
      </references>
    </references>
    <?line 348?>

<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,
John Preuß Mattsson, Martin Thomson, and Rebecca Guthrie for reviews.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
c/YmxydilN2Ak7sNxR0w/X/9bCV4vzIAAA==

-->

</rfc>
