Skip to content
EchoWave Cyber Lab
← All research
Cryptography

ML-KEM and ML-DSA: a field guide to FIPS 203 and 204

NIST finalized its first post-quantum standards in August 2024. Here is what they are, how big they are, and how to adopt them.

In August 2024 NIST published three post-quantum standards: FIPS 203 (ML-KEM, from CRYSTALS-Kyber), FIPS 204 (ML-DSA, from CRYSTALS-Dilithium), and FIPS 205 (SLH-DSA, from SPHINCS+).

ML-KEM: key encapsulation

ML-KEM replaces ECDH-style key agreement. ML-KEM-768, the common default, has a 1,184-byte public key and a 1,088-byte ciphertext, versus 32 bytes for X25519.

ML-DSA: signatures

ML-DSA replaces ECDSA and EdDSA. ML-DSA-65 has a 1,952-byte public key and a 3,309-byte signature, versus 33 and about 72 bytes for secp256k1 ECDSA. Size, not speed, is the main cost.

Adoption guidance

  • Deploy hybrid key exchange (classical + ML-KEM) first; it protects against harvest-now-decrypt-later with no loss of classical security.
  • Inventory where signatures are verified and stored; larger signatures affect bandwidth, storage, and protocol limits.
  • Design for crypto-agility so algorithms and parameter sets can change without redesigning the system.

Try both schemes and compare sizes with our pqc-playground package.