w3c / webcrypto

The W3C Web Cryptography API
https://w3c.github.io/webcrypto/
Other
265 stars 53 forks source link

Support for PQC algorithms: ML-KEM, ML-DSA and SLH-DSA ? #367

Open seriousme opened 3 weeks ago

seriousme commented 3 weeks ago

A few days ago NIST standardized 3 PQC, algorithms: NIST 203: ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism Standard, based on: Crystals Kyber)
NIST 204: ML-DSA (Module-Lattice-Based Digital Signature Standard, based on: Crystals Dilithium) NIST 205: SLH-DSA (Stateless Hash-Based Digital Signature Standard, based on: SPHINCS+)

For the announcement see: https://cloudsecurityalliance.org/blog/2024/08/15/nist-fips-203-204-and-205-finalized-an-important-step-towards-a-quantum-safe-future

It would be nice if these were added to webcrypto as well.

Various implementations (commercial and opensource) already exist as the candidate algorithms have been field tested for quite some time. E.g.

Chromium already supports Kyber for TLS key exchange since August 2023: https://www.thesslstore.com/blog/google-chrome-adds-support-for-a-hybrid-post-quantum-cryptographic-algorithm/

Kind regards, Hans

Neustradamus commented 3 weeks ago

@seriousme: Thanks!

seriousme commented 3 weeks ago

FYI: the IETF LAMPS and COSE workgroups are busy standardizing these as well

I found the following IETF drafts which might help in achieving uniformity in naming and parameters.

Algorithm identifiers:

ML-DSA for JOSE and COSE https://datatracker.ietf.org/doc/draft-ietf-cose-dilithium/

Cryptographic Message Syntax

Kind regards, Hans