| Internet-Draft | ietf-tls-mlkem | June 2026 |
| Connolly | Expires 26 December 2026 | [Page] |
- Workgroup:
- Transport Layer Security
- Internet-Draft:
- draft-ietf-tls-mlkem-08
- Published:
- Intended Status:
- Informational
- Expires:
ML-KEM Post-Quantum Key Agreement for TLS 1.3
Abstract
This memo defines ML-KEM-512, ML-KEM-768, and ML-KEM-1024 as NamedGroups
and and registers IANA values in the TLS Supported Groups registry for use
in TLS 1.3 to achieve post-quantum (PQ) key establishment.¶
About This Document
This note is to be removed before publishing as an RFC.¶
Status information for this document may be found at https://datatracker.ietf.org/doc/draft-ietf-tls-mlkem/.¶
Discussion of this document takes place on the Transport Layer Security Working Group mailing list (mailto:tls@ietf.org), which is archived at https://mailarchive.ietf.org/arch/browse/tls/. Subscribe at https://www.ietf.org/mailman/listinfo/tls/.¶
Source for this draft and an issue tracker can be found at https://github.com/tlswg/draft-ietf-tls-mlkem.¶
Status of This Memo
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 26 December 2026.¶
Copyright Notice
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
1. Introduction
ML-KEM [FIPS203] is a FIPS standard for post-quantum [RFC9794] key
establishment via a lattice-based key encapsulation mechanism (KEM). This
document defines key establishment options for TLS 1.3 via the existing
supported_groups Section 4.2.7 of [RFC8446bis] and key_share Section 4.2.8 of [RFC8446bis] extensions.¶
2. Conventions and Definitions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
3. Key encapsulation mechanisms
This document models key establishment as key encapsulation mechanisms (KEMs), which consist of three algorithms:¶
-
KeyGen() -> (pk, sk): A probabilistic key generation algorithm, which generates a public encapsulation keypkand a secret decapsulation keysk.¶ -
Encaps(pk) -> (ct, shared_secret): A probabilistic encapsulation algorithm, which takes as input a public encapsulation keypkand outputs a ciphertextctand shared secretshared_secret.¶ -
Decaps(sk, ct) -> shared_secret: A decapsulation algorithm, which takes as input a secret decapsulation keyskand ciphertextctand outputs a shared secretshared_secret.¶
ML-KEM-512, ML-KEM-768 and ML-KEM-1024 conform to this interface:¶
-
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¶
-
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¶
-
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¶
4. Construction
The KEMs are defined as NamedGroups, sent in the supported_groups
extension. Section 4.2.7 of [RFC8446]¶
4.1. Negotiation
Each parameter set of ML-KEM is assigned an identifier, registered by IANA in the TLS Supported Groups registry:¶
enum {
...,
/* ML-KEM Key Establishment Methods */
mlkem512(0x0200),
mlkem768(0x0201),
mlkem1024(0x0202)
...,
} NamedGroup;
¶
4.2. Transmitting encapsulation keys and ciphertexts
The public encapsulation key and ciphertext values are each directly encoded with fixed lengths as in [FIPS203].¶
In TLS 1.3 a KEM public encapsulation key pk or ciphertext ct is
represented as a KeyShareEntry as specified in Section 4.2.8 of [RFC8446]. These are transmitted in the extension_data fields of
KeyShareClientHello and KeyShareServerHello extensions.¶
For the client's share, the key_exchange value contains the pk
output of the corresponding ML-KEM parameter set's KeyGen algorithm.¶
For the server's share, the key_exchange value contains the ct
output of the corresponding ML-KEM parameter set's Encaps algorithm.¶
For all parameter sets, the server MUST perform the encapsulation key check
described in Section 7.2 of [FIPS203] on the client's encapsulation key,
and abort with an illegal_parameter alert if it fails.¶
For all parameter sets, the client MUST check if the ciphertext length
matches the selected parameter set, and abort with an illegal_parameter
alert if it fails.¶
If ML-KEM decapsulation fails for any other reason, the connection MUST be
aborted with an internal_error alert.¶
Implementations MUST NOT reuse randomness in the generation of ML-KEM ciphertexts— it follows that ML-KEM ciphertexts also MUST NOT be reused.¶
5. Security Considerations
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 [DOWLING] [KEMTLS] [HV22] [CHSW22] [CZCJWH25] [ZJZ24]; ML-KEM's IND-CCA security exceeds the requirements for ephemeral key establishment [GHS25] [RFC8446bis]. Multiple formal analyses, including pen-and-paper computational proofs and machine-checked symbolic analysis using ProVerif {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., [HYBRID], [ECDHE-MLKEM]) provides compositional security; the exchange remains secure as long as at least one of the component algorithms is unbroken.¶
TLS 1.3's key schedule commits to the ML-KEM encapsulation key and the
ciphertext as the key_exchange field of the key_share 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 [CDM23].¶
[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.¶
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.¶
6. IANA Considerations
This document requests/registers three new entries to the TLS Named Group (or Supported Group) registry, according to the procedures in Section 6 of [tlsiana].¶
- Value:
-
0x0200¶
- Description:
-
MLKEM512¶
- DTLS-OK:
-
Y¶
- Recommended:
-
N¶
- Reference:
-
This document¶
- Comment:
-
FIPS 203 version of ML-KEM-512¶
- Value:
-
0x0201¶
- Description:
-
MLKEM768¶
- DTLS-OK:
-
Y¶
- Recommended:
-
N¶
- Reference:
-
This document¶
- Comment:
-
FIPS 203 version of ML-KEM-768¶
- Value:
-
0x0202¶
- Description:
-
MLKEM1024¶
- DTLS-OK:
-
Y¶
- Recommended:
-
N¶
- Reference:
-
This document¶
- Comment:
-
FIPS 203 version of ML-KEM-1024¶
7. References
7.1. Normative References
- [FIPS203]
- "Module-lattice-based key-encapsulation mechanism standard", National Institute of Standards and Technology (U.S.), DOI 10.6028/nist.fips.203, , <https://doi.org/10.6028/nist.fips.203>.
- [RFC2119]
- Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/rfc/rfc2119>.
- [RFC8174]
- Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/rfc/rfc8174>.
- [RFC8446]
- Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, , <https://www.rfc-editor.org/rfc/rfc8446>.
- [RFC8446bis]
- Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, , <https://www.rfc-editor.org/rfc/rfc8446>.
7.2. Informative References
- [AVIRAM]
- Nimrod Aviram, Benjamin Dowling, Ilan Komargodski, Kenny Paterson, Eyal Ronen, and Eylon Yogev, "[TLS] Combining Secrets in Hybrid Key Exchange in TLS 1.3", , <https://mailarchive.ietf.org/arch/msg/tls/F4SVeL2xbGPaPB2GW_GkBbD_a5M/>.
- [CDM23]
- Cremers, C., Dax, A., and N. Medinger, "Keeping Up with the KEMs: Stronger Security Notions for KEMs and automated analysis of KEM-based protocols", , <https://eprint.iacr.org/2023/1933.pdf>.
- [CHSW22]
- Celi, S., Hoyland, J., Stebila, D., and T. Wiggers, "A Tale of Two Models: Formal Verification of KEMTLS via Tamarin", Proceedings of ESORICS 2022 , , <https://doi.org/10.1007/978-3-031-17143-7_4>.
- [CNSAFAQ]
- "The Commercial National Security Algorithm Suite 2.0 and Quantum Computing FAQ", n.d., <https://media.defense.gov/2022/Sep/07/2003071836/-1/-1/0/CSI_CNSA_2.0_FAQ_.PDF>.
- [CNSSP15]
- "USE OF PUBLIC STANDARDS FOR SECURE INFORMATION SHARING", n.d., <https://www.cnss.gov/CNSS/openDoc.cfm?a=kryrfZb9nS00l4L2shjYcQ%3D%3D&b=C944BD2E7ABAA37851D7A7EF71743C3ACE8393115D7588CD4423DD2B918812A86F060A05C2E0D4DEF8456CC75B2D39F4>.
- [CZCJWH25]
- "Post-Quantum {TLS} 1.3 Handshake from {CPA}-Secure {KEMs} with Tighter Reductions", n.d., <https://eprint.iacr.org/2025/1748.pdf>.
- [DOWLING]
- "A Cryptographic Analysis of the TLS 1.3 Handshake Protocol", Journal of Cryptology 2021 , , <DOI.10.1007/s00145-021-09384-1>.
- [ECDHE-MLKEM]
- Kwiatkowski, K., Kampanakis, P., Westerbaan, B., and D. Stebila, "Post-quantum hybrid ECDHE-MLKEM Key Agreement for TLSv1.3", Work in Progress, Internet-Draft, draft-ietf-tls-ecdhe-mlkem-05, , <https://datatracker.ietf.org/doc/html/draft-ietf-tls-ecdhe-mlkem-05>.
- [FO]
- Fujisaki, E. and T. Okamoto, "Secure Integration of Asymmetric and Symmetric Encryption Schemes", Springer Science and Business Media LLC, Journal of Cryptology vol. 26, no. 1, pp. 80-101, DOI 10.1007/s00145-011-9114-1, , <https://doi.org/10.1007/s00145-011-9114-1>.
- [GHS25]
- Glabush, L., Hovelmanns, K., and D. Stebila, "On The Multi-target Security of Post-Quantum Key Encapsulation Mechanisms", Cryptology ePrint Archive, Report 2025/343 , , <https://eprint.iacr.org/2025/343.pdf>.
- [HHK]
- Hofheinz, D., Hövelmanns, K., and E. Kiltz, "A Modular Analysis of the Fujisaki-Okamoto Transformation", Springer International Publishing, Lecture Notes in Computer Science pp. 341-371, DOI 10.1007/978-3-319-70500-2_12, ISBN ["9783319704999", "9783319705002"], , <https://doi.org/10.1007/978-3-319-70500-2_12>.
- [HPKE]
- Barnes, R., Bhargavan, K., Lipp, B., and C. Wood, "Hybrid Public Key Encryption", RFC 9180, DOI 10.17487/RFC9180, , <https://www.rfc-editor.org/rfc/rfc9180>.
- [HV22]
- Huguenin-Dumittan, L. and S. Vaudenay, "On IND-qCCA Security in the ROM and Its Applications - CPA Security Is Sufficient for TLS 1.3", Proceedings of Eurocrypt 2022 , n.d., <https://link.springer.com/chapter/10.1007/978-3-031-07082-2_22>.
- [HYBRID]
- Stebila, D., Fluhrer, S., and S. Gueron, "Hybrid key exchange in TLS 1.3", Work in Progress, Internet-Draft, draft-ietf-tls-hybrid-design-16, , <https://datatracker.ietf.org/doc/html/draft-ietf-tls-hybrid-design-16>.
- [ITSP.40.111]
- "Cryptographic algorithms for UNCLASSIFIED, PROTECTED A, and PROTECTED B information - ITSP.40.111", n.d., <https://www.cyber.gc.ca/en/guidance/cryptographic-algorithms-unclassified-protected-protected-b-information-itsp40111#a54>.
- [KEMTLS]
- Schwabe, P., Stebila, D., and T. Wiggers, "Post-Quantum TLS Without Handshake Signatures", ACM, Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security pp. 1461-1480, DOI 10.1145/3372297.3423350, , <https://doi.org/10.1145/3372297.3423350>.
- [KOBEISSI26]
- "FATT Chance: On the Robustness of Standalone and Hybrid ML-KEM Key Exchange in TLS 1.3", n.d., <https://eprint.iacr.org/2026/1147.pdf>.
- [KYBERV]
- "Formally verifying Kyber Episode V: Machine-checked IND-CCA security and correctness of ML-KEM in EasyCrypt", n.d., <https://eprint.iacr.org/2024/843.pdf>.
- [LUCKY13]
- Al Fardan, N. J. and K. G. Paterson, "Lucky Thirteen: Breaking the TLS and DTLS record protocols", n.d., <https://ieeexplore.ieee.org/iel7/6547086/6547088/06547131.pdf>.
- [NIST-SP-800-227]
- Alagic, G., Barker, E., Chen, L., Moody, D., Robinson, A., Silberg, H., and N. Waller, "Recommendations for key-encapsulation mechanisms", National Institute of Standards and Technology (U.S.), DOI 10.6028/nist.sp.800-227, , <https://doi.org/10.6028/nist.sp.800-227>.
- [RACCOON]
- Merget, R., Brinkmann, M., Aviram, N., Somorovsky, J., Mittmann, J., and J. Schwenk, "Raccoon Attack: Finding and Exploiting Most-Significant-Bit-Oracles in TLS-DH(E)", , <https://raccoon-attack.com/>.
- [RFC9794]
- Driscoll, F., Parsons, M., and B. Hale, "Terminology for Post-Quantum Traditional Hybrid Schemes", RFC 9794, DOI 10.17487/RFC9794, , <https://www.rfc-editor.org/rfc/rfc9794>.
- [tlsiana]
- Salowey, J. A. and S. Turner, "IANA Registry Updates for TLS and DTLS", Work in Progress, Internet-Draft, draft-ietf-tls-rfc8447bis-15, , <https://datatracker.ietf.org/doc/html/draft-ietf-tls-rfc8447bis-15>.
- [ZJZ24]
- Zhou, B., Jiang, H., and Y. Zhao, "CPA-Secure KEMs are also Sufficient for Post-quantum TLS 1.3", Proceedings of Asiacrypt 2024 , n.d., <https://doi.org/10.1007/978-981-96-0891-1_14>.
Acknowledgments
Thanks to Douglas Stebila for consultation on the draft-ietf-tls-hybrid-design design, and to Scott Fluhrer, Eric Rescorla, John Mattsson, Martin Thomson, and Rebecca Guthrie for reviews.¶