caniuse icon indicating copy to clipboard operation
caniuse copied to clipboard

X25519Kyber768 Hybrid Post-Quantum Key Exchange for HTTPS

Open fac-trax opened this issue 1 year ago • 5 comments

Hybrid key exchange in SSL handshake using ML-KEM in addition to default already has significant usage thanks to Google and Cloudflare. It appears to only be supported currently in TLS 1.3 but is intended for TLS 1.2 as well.

fac-trax avatar May 29 '24 20:05 fac-trax

but is intended for TLS 1.2 as well

The IETF does not intend to backport PQ cryptography to TLS 1.2: https://www.ietf.org/archive/id/draft-ietf-tls-tls12-frozen-02.html#name-implications-for-post-quant

ghen2 avatar Sep 10 '24 19:09 ghen2

I think at this point we want to track X25519MLKEM768 (IANA Key Share Entry Group '4588'); X25519Kyber768Draft00 was intended to be experimental and to be replaced by the standardized FIPS 203 X25519MLKEM768. Firefox shipped ML-KEM support in 132.0; Chrome added an experimental flag #use-ml-kem in 130, and based on their announcement will enable that and disable Kyber in 131 (which should go stable on 2024-11-11).

Keeping track of X25519Kyber768Draft00 is probably going to be moot at that point.

jschauma avatar Nov 05 '24 21:11 jschauma

+1 to tracking X25519MLKEM768

dstebila avatar Mar 07 '25 22:03 dstebila

By now you really want to track all of the following:

  • ML-KEM (FIPS-203)
  • ML-DSA (FIPS-204)
  • SLH-DSA (FIPS-205)
  • X25519MLKEM768 (https://datatracker.ietf.org/doc/draft-kwiatkowski-tls-ecdhe-mlkem/03/)
  • SecP256r1MLKEM768 (https://datatracker.ietf.org/doc/draft-kwiatkowski-tls-ecdhe-mlkem/03/)
  • SecP384r1MLKEM1024 (https://datatracker.ietf.org/doc/draft-kwiatkowski-tls-ecdhe-mlkem/03/)

Chrome and Firefox currently implement X25519MLKEM768; OpenSSL will land support for at least the first four in OpenSSL 3.5 (planned release date is 2025-04-08), boringssl already supports X25519MLKEM768.

See also: https://www.netmeister.org/blog/pqc-2025-02.html

jschauma avatar Mar 08 '25 18:03 jschauma

I have put together the information from this thread and various other sources, including my own tests, into a new PR #7326 that adds support for the standardized post-quantum key agreement scheme X25519MLKEM768 to Caniuse. Please take a look at it and let me know if there are any errors that need to be fixed.

jannispinter avatar Jun 01 '25 18:06 jannispinter