Post-quantum sizes: the cheat sheet

Exact sizes for every NIST post-quantum signature and KEM, next to the classical algorithms they replace, plus the encoded lengths you actually have to store and send.

Signatures

AlgorithmStandardPublic keySignatureBase64 signaturevs. Ed25519Column for Base64 sig
Ed25519classical3264881.0×VARCHAR(128)
ECDSA P-256classical6464881.0×VARCHAR(128)
RSA-2048classical2562563444.0×VARCHAR(512)
FN-DSA-512FIPS 206 (draft)89766688810×VARCHAR(2048)
ML-DSA-44FIPS 2041,3122,4203,22838×VARCHAR(4096)
ML-DSA-65FIPS 2041,9523,3094,41252×VARCHAR(8192)
ML-DSA-87FIPS 2042,5924,6276,17272×VARCHAR(8192)
SLH-DSA-128sFIPS 205327,85610,476123×VARCHAR(16384)
SLH-DSA-128fFIPS 2053217,08822,784267×VARCHAR(32768)
SLH-DSA-192sFIPS 2054816,22421,632254×VARCHAR(32768)
SLH-DSA-192fFIPS 2054835,66447,552557×VARCHAR(65536)
SLH-DSA-256sFIPS 2056429,79239,724466×VARCHAR(65536)
SLH-DSA-256fFIPS 2056449,85666,476779×VARCHAR(131072)

Bytes. FN-DSA (Falcon) signatures are variable-length; 666 B is the padded FN-DSA-512 size. FIPS 206 is still a draft. Column sizes: Base64 length +25%, next power of two.

Key encapsulation (KEMs)

AlgorithmPublic keyCiphertextShared secret
X25519323232
ML-KEM-51280076832
ML-KEM-7681,1841,08832
ML-KEM-10241,5681,56832
X25519MLKEM768 (TLS hybrid)1,2161,12064 → KDF

Certificate chains in TLS 1.3

AlgorithmOne certificate1-cert chain2-cert chain3-cert chainvs. 16 KiB buffer
ECDSA P-2563783917741,157fits
FN-DSA-5121,8171,8303,6525,474fits
ML-DSA-443,9863,9997,99011,981fits
ML-DSA-655,5155,52811,04816,568+184
ML-DSA-877,4737,48614,96422,442+6,058
SLH-DSA-128s8,1408,15316,29824,443+8,059

TLS 1.3 Certificate message bytes, minimal 244 B X.509 metadata per certificate. How these are calculated →

Find every limit these sizes break in your stack

Paste a migration, an nginx.conf or an mbedTLS header into the checker, or ask us for a free scan of the whole repository.