8 Algorithms Compared

Post-Quantum Algorithm Explorer

Understand the NIST-standardised algorithms your organisation will need to adopt. Compare options by use case, maturity, and practical implications for your infrastructure.

Key Encapsulation Mechanisms (KEM)

KEMs are used for secure key exchange, establishing shared secrets between parties. ML-KEM replaces ECDH / RSA key exchange.

AlgorithmStandardFamilyStatusSecurity LevelPublic KeyCiphertextPerformance
ML-KEM (Kyber)FIPS 203LatticeNIST Finalized1800 B768 B~0.04 ms
31184 B1088 B~0.06 ms
51568 B1568 B~0.08 ms
HQCNIST Round 4Code-basedNIST Round 412249 B4497 B~0.1 ms
34522 B9042 B~0.2 ms
57245 B14469 B~0.4 ms
BIKENIST Round 4Code-basedNIST Round 411541 B1573 B~0.1 ms
33083 B3115 B~0.2 ms
RSAPKCS#1 / RFC 8017Integer FactorizationQuantum Vulnerable112-bit classical256 B. ~1 ms
128-bit classical384 B. ~3 ms
~140-bit classical512 B. ~8 ms

Digital Signature Algorithms

Digital signatures authenticate identity and data integrity. ML-DSA, SLH-DSA, and FN-DSA replace RSA / ECDSA signatures.

AlgorithmStandardFamilyStatusSecurity LevelPublic KeySignatureSign / Verify
ML-DSA (Dilithium)FIPS 204LatticeNIST Finalized21312 B2420 B~0.15 ms / ~0.05 ms
31952 B3293 B~0.25 ms / ~0.08 ms
52592 B4595 B~0.38 ms / ~0.10 ms
SLH-DSA (SPHINCS+)FIPS 205Hash-basedNIST Finalized132 B7856 B~50 ms / ~3 ms
132 B17088 B~3 ms / ~0.5 ms
564 B29792 B~200 ms / ~6 ms
FN-DSA (Falcon)FIPS 206 (Draft)LatticeNIST Finalizing1897 B666 B~0.5 ms / ~0.05 ms
51793 B1280 B~1 ms / ~0.10 ms
RSAPKCS#1 / RFC 8017Integer FactorizationQuantum Vulnerable112-bit classical256 B256 B~1 ms / ~0.03 ms
128-bit classical384 B384 B~3 ms / ~0.05 ms
~140-bit classical512 B512 B~8 ms / ~0.08 ms
ECDSAFIPS 186-5Elliptic CurveQuantum Vulnerable128-bit classical64 B64 B~0.05 ms / ~0.10 ms
192-bit classical96 B96 B~0.15 ms / ~0.30 ms

Algorithm Deep Dives

Detailed profiles for each algorithm: description, pros and cons, and recommended use cases.

ML-KEM (Kyber)

Module-Lattice-Based Key-Encapsulation Mechanism

NIST Finalized
Type: KEMFamily: LatticeStandard: FIPS 203

The primary NIST-standardized key encapsulation mechanism based on the Module Learning With Errors (MLWE) problem. Used for secure key exchange in TLS, VPN, and other protocols.

Strengths

  • Fast key generation and encapsulation
  • Relatively small key and ciphertext sizes
  • Well-studied security assumptions
  • Strong industry adoption

Limitations

  • Larger keys than classical ECDH (~30x)
  • Newer math. less cryptanalysis history than RSA
Recommended Use: TLS 1.3 key exchange, VPN, secure messaging, general-purpose KEM

ML-DSA (Dilithium)

Module-Lattice-Based Digital Signature Algorithm

NIST Finalized
Type: SignatureFamily: LatticeStandard: FIPS 204

The primary NIST-standardized digital signature algorithm based on the Module Learning With Errors problem. Designed for general-purpose digital signatures.

Strengths

  • Fast signing and verification
  • Balanced key/signature sizes
  • Same mathematical family as ML-KEM (shared expertise)
  • Strong security proofs

Limitations

  • Larger signatures than classical ECDSA (~50x)
  • Larger public keys than classical ECDSA (~40x)
Recommended Use: Code signing, certificate chains, document signing, general-purpose signatures

SLH-DSA (SPHINCS+)

Stateless Hash-Based Digital Signature Algorithm

NIST Finalized
Type: SignatureFamily: Hash-basedStandard: FIPS 205

A conservative stateless hash-based signature scheme. Security relies solely on the well-understood security of hash functions, making it a hedge against lattice-based cryptanalysis.

Strengths

  • Security based only on hash functions. extremely conservative
  • Very small public keys (32-64 bytes)
  • No structured mathematical assumptions to break

Limitations

  • Very large signatures (8-30 KB)
  • Slow signing (especially "small" variants)
  • Not suitable for bandwidth-constrained applications
Recommended Use: Root certificate signing, firmware signing, applications where signature size is acceptable and conservative security is paramount

FN-DSA (Falcon)

FFT over NTRU-Lattice-Based Digital Signature Algorithm

NIST Finalizing
Type: SignatureFamily: LatticeStandard: FIPS 206 (Draft)

A lattice-based signature scheme using NTRU lattices with FFT-based sampling. Offers the smallest signatures among lattice-based schemes but is more complex to implement.

Strengths

  • Smallest signatures among lattice-based schemes
  • Fast verification
  • Compact for constrained environments

Limitations

  • Complex implementation (FFT-based Gaussian sampling)
  • Side-channel vulnerabilities require careful implementation
  • Slower signing than ML-DSA
Recommended Use: Embedded systems, IoT, constrained environments where small signature size is critical

HQC

Hamming Quasi-Cyclic

NIST Round 4
Type: KEMFamily: Code-basedStandard: NIST Round 4

A code-based KEM offering an alternative mathematical approach to ML-KEM. Provides diversity in case lattice-based assumptions are broken.

Strengths

  • Different mathematical basis than lattice. algorithmic diversity
  • Well-studied code-based assumptions

Limitations

  • Much larger keys and ciphertexts than ML-KEM
  • Slower performance
Recommended Use: Backup KEM for algorithmic diversity, environments requiring non-lattice assumptions

BIKE

Bit Flipping Key Encapsulation

NIST Round 4
Type: KEMFamily: Code-basedStandard: NIST Round 4

A code-based KEM using quasi-cyclic MDPC codes. Offers compact keys compared to other code-based schemes.

Strengths

  • Relatively compact keys for a code-based scheme
  • Different assumption base than lattice

Limitations

  • Decapsulation can have variable timing (potential side-channel)
  • Less mature than ML-KEM
Recommended Use: Alternative KEM for non-lattice diversity

RSA

Rivest–Shamir–Adleman

Quantum Vulnerable
Type: KEM / SignatureFamily: Integer FactorizationStandard: PKCS#1 / RFC 8017

The most widely deployed public-key algorithm. Security relies on the difficulty of factoring large integers. broken by Shor's algorithm on a quantum computer.

Strengths

  • Universally supported
  • Well-understood security
  • Small signatures

Limitations

  • BROKEN by quantum computers (Shor's algorithm)
  • Larger keys than ECC
  • Slower than ECC
Recommended Use: Legacy systems. MUST be migrated to PQC

ECDSA

Elliptic Curve Digital Signature Algorithm

Quantum Vulnerable
Type: SignatureFamily: Elliptic CurveStandard: FIPS 186-5

Efficient digital signatures using elliptic curve mathematics. Widely used in TLS, Bitcoin, and code signing. Broken by Shor's algorithm.

Strengths

  • Small keys and signatures
  • Fast operations
  • Widely deployed

Limitations

  • BROKEN by quantum computers (Shor's algorithm)
Recommended Use: Legacy systems. MUST be migrated to PQC

What Should Your Team Adopt?

Strategic decision guide: match your infrastructure needs to the right algorithm.

TLS / VPN Key Exchange

You need a KEM to replace ECDH for establishing shared secrets.

Recommended: ML-KEM-768 (FIPS 203)

Already adopted by Chrome, Firefox, Cloudflare, and AWS. Use hybrid (X25519 + ML-KEM) during transition.

Code Signing / Certificates

You need digital signatures for software distribution and PKI.

Recommended: ML-DSA-65 (FIPS 204)

Good balance of key/signature size and performance. Use SLH-DSA as a conservative backup for root certificates.

IoT / Embedded Systems

Constrained devices with limited bandwidth and storage.

Recommended: FN-DSA-512 (FIPS 206) for signatures, ML-KEM-512 for KEM

FN-DSA has the smallest signatures among lattice schemes. Careful implementation needed to avoid side channels.

Maximum Conservative Security

Applications where the cost of a break is catastrophic (nuclear, defense, long-lived secrets).

Recommended: SLH-DSA-256s (FIPS 205) + ML-KEM-1024

SLH-DSA relies only on hash function security. the most conservative assumption. Large signatures are acceptable for high-stakes use.