For KEM, NIST have defined the finalists of CRYSTALS Kyber (Lattice), Saber (Lattice), McEliece (Code-based) and NTRU (Lattice), and with alternative finalists of BIKE (code-based), HQC (code-based), FrodoKEM (Lattice), and SIKE (isogenies). This page provides a performance speed test for these methods. For digital signatures, NIST have defined the finalists of CRYSTALS Dilithium (Lattice), Falcon (Lattice), and Rainbow (Multivariate Quadractic). The alterative finalists are: SPHINCS+ (Hash-based stateless), and Picnic (Hash-based ZKP).
PQC Key Encapsulation Mechanism (KEM) and Digital Signature Information |
Outline
The following is the information for KEMs:
KEMs: BIKE-L1: isnull: false claimed-nist-level: 1 claimed-security: IND-CPA length-public-key: 1541 length-ciphertext: 1573 length-secret-key: 5223 length-shared-secret: 32 BIKE-L3: isnull: false claimed-nist-level: 3 claimed-security: IND-CPA length-public-key: 3083 length-ciphertext: 3115 length-secret-key: 10105 length-shared-secret: 32 Classic-McEliece-348864: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 261120 length-ciphertext: 128 length-secret-key: 6452 length-shared-secret: 32 Classic-McEliece-348864f: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 261120 length-ciphertext: 128 length-secret-key: 6452 length-shared-secret: 32 Classic-McEliece-460896: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 524160 length-ciphertext: 188 length-secret-key: 13568 length-shared-secret: 32 Classic-McEliece-460896f: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 524160 length-ciphertext: 188 length-secret-key: 13568 length-shared-secret: 32 Classic-McEliece-6688128: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1044992 length-ciphertext: 240 length-secret-key: 13892 length-shared-secret: 32 Classic-McEliece-6688128f: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1044992 length-ciphertext: 240 length-secret-key: 13892 length-shared-secret: 32 Classic-McEliece-6960119: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1047319 length-ciphertext: 226 length-secret-key: 13908 length-shared-secret: 32 Classic-McEliece-6960119f: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1047319 length-ciphertext: 226 length-secret-key: 13908 length-shared-secret: 32 Classic-McEliece-8192128: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1357824 length-ciphertext: 240 length-secret-key: 14080 length-shared-secret: 32 Classic-McEliece-8192128f: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1357824 length-ciphertext: 240 length-secret-key: 14080 length-shared-secret: 32 HQC-128: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 2249 length-ciphertext: 4481 length-secret-key: 2289 length-shared-secret: 64 HQC-192: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 4522 length-ciphertext: 9026 length-secret-key: 4562 length-shared-secret: 64 HQC-256: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 7245 length-ciphertext: 14469 length-secret-key: 7285 length-shared-secret: 64 Kyber512: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 800 length-ciphertext: 768 length-secret-key: 1632 length-shared-secret: 32 Kyber768: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 1184 length-ciphertext: 1088 length-secret-key: 2400 length-shared-secret: 32 Kyber1024: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1568 length-ciphertext: 1568 length-secret-key: 3168 length-shared-secret: 32 Kyber512-90s: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 800 length-ciphertext: 768 length-secret-key: 1632 length-shared-secret: 32 Kyber768-90s: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 1184 length-ciphertext: 1088 length-secret-key: 2400 length-shared-secret: 32 Kyber1024-90s: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1568 length-ciphertext: 1568 length-secret-key: 3168 length-shared-secret: 32 NTRU-HPS-2048-509: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 699 length-ciphertext: 699 length-secret-key: 935 length-shared-secret: 32 NTRU-HPS-2048-677: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 930 length-ciphertext: 930 length-secret-key: 1234 length-shared-secret: 32 NTRU-HPS-4096-821: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1230 length-ciphertext: 1230 length-secret-key: 1590 length-shared-secret: 32 NTRU-HPS-4096-1229: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1842 length-ciphertext: 1842 length-secret-key: 2366 length-shared-secret: 32 NTRU-HRSS-701: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 1138 length-ciphertext: 1138 length-secret-key: 1450 length-shared-secret: 32 NTRU-HRSS-1373: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 2401 length-ciphertext: 2401 length-secret-key: 2983 length-shared-secret: 32 ntrulpr653: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 897 length-ciphertext: 1025 length-secret-key: 1125 length-shared-secret: 32 ntrulpr761: isnull: false claimed-nist-level: 2 claimed-security: IND-CCA2 length-public-key: 1039 length-ciphertext: 1167 length-secret-key: 1294 length-shared-secret: 32 ntrulpr857: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 1184 length-ciphertext: 1312 length-secret-key: 1463 length-shared-secret: 32 ntrulpr1277: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1847 length-ciphertext: 1975 length-secret-key: 2231 length-shared-secret: 32 sntrup653: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 994 length-ciphertext: 897 length-secret-key: 1518 length-shared-secret: 32 sntrup761: isnull: false claimed-nist-level: 2 claimed-security: IND-CCA2 length-public-key: 1158 length-ciphertext: 1039 length-secret-key: 1763 length-shared-secret: 32 sntrup857: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 1322 length-ciphertext: 1184 length-secret-key: 1999 length-shared-secret: 32 sntrup1277: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 2067 length-ciphertext: 1847 length-secret-key: 3059 length-shared-secret: 32 LightSaber-KEM: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 672 length-ciphertext: 736 length-secret-key: 1568 length-shared-secret: 32 Saber-KEM: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 992 length-ciphertext: 1088 length-secret-key: 2304 length-shared-secret: 32 FireSaber-KEM: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 1312 length-ciphertext: 1472 length-secret-key: 3040 length-shared-secret: 32 FrodoKEM-640-AES: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 9616 length-ciphertext: 9720 length-secret-key: 19888 length-shared-secret: 16 FrodoKEM-640-SHAKE: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 9616 length-ciphertext: 9720 length-secret-key: 19888 length-shared-secret: 16 FrodoKEM-976-AES: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 15632 length-ciphertext: 15744 length-secret-key: 31296 length-shared-secret: 24 FrodoKEM-976-SHAKE: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 15632 length-ciphertext: 15744 length-secret-key: 31296 length-shared-secret: 24 FrodoKEM-1344-AES: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 21520 length-ciphertext: 21632 length-secret-key: 43088 length-shared-secret: 32 FrodoKEM-1344-SHAKE: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 21520 length-ciphertext: 21632 length-secret-key: 43088 length-shared-secret: 32 SIDH-p434: isnull: false claimed-nist-level: 1 claimed-security: IND-CPA length-public-key: 330 length-ciphertext: 330 length-secret-key: 28 length-shared-secret: 110 SIDH-p503: isnull: false claimed-nist-level: 2 claimed-security: IND-CPA length-public-key: 378 length-ciphertext: 378 length-secret-key: 32 length-shared-secret: 126 SIDH-p610: isnull: false claimed-nist-level: 3 claimed-security: IND-CPA length-public-key: 462 length-ciphertext: 462 length-secret-key: 39 length-shared-secret: 154 SIDH-p751: isnull: false claimed-nist-level: 5 claimed-security: IND-CPA length-public-key: 564 length-ciphertext: 564 length-secret-key: 48 length-shared-secret: 188 SIDH-p434-compressed: isnull: false claimed-nist-level: 1 claimed-security: IND-CPA length-public-key: 197 length-ciphertext: 197 length-secret-key: 28 length-shared-secret: 110 SIDH-p503-compressed: isnull: false claimed-nist-level: 2 claimed-security: IND-CPA length-public-key: 225 length-ciphertext: 225 length-secret-key: 32 length-shared-secret: 126 SIDH-p610-compressed: isnull: false claimed-nist-level: 3 claimed-security: IND-CPA length-public-key: 274 length-ciphertext: 274 length-secret-key: 39 length-shared-secret: 154 SIDH-p751-compressed: isnull: false claimed-nist-level: 5 claimed-security: IND-CPA length-public-key: 335 length-ciphertext: 335 length-secret-key: 48 length-shared-secret: 188 SIKE-p434: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 330 length-ciphertext: 346 length-secret-key: 374 length-shared-secret: 16 SIKE-p503: isnull: false claimed-nist-level: 2 claimed-security: IND-CCA2 length-public-key: 378 length-ciphertext: 402 length-secret-key: 434 length-shared-secret: 24 SIKE-p610: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 462 length-ciphertext: 486 length-secret-key: 524 length-shared-secret: 24 SIKE-p751: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 564 length-ciphertext: 596 length-secret-key: 644 length-shared-secret: 32 SIKE-p434-compressed: isnull: false claimed-nist-level: 1 claimed-security: IND-CCA2 length-public-key: 197 length-ciphertext: 236 length-secret-key: 350 length-shared-secret: 16 SIKE-p503-compressed: isnull: false claimed-nist-level: 2 claimed-security: IND-CCA2 length-public-key: 225 length-ciphertext: 280 length-secret-key: 407 length-shared-secret: 24 SIKE-p610-compressed: isnull: false claimed-nist-level: 3 claimed-security: IND-CCA2 length-public-key: 274 length-ciphertext: 336 length-secret-key: 491 length-shared-secret: 24 SIKE-p751-compressed: isnull: false claimed-nist-level: 5 claimed-security: IND-CCA2 length-public-key: 335 length-ciphertext: 410 length-secret-key: 602 length-shared-secret: 32
And for signatures:
SIGs: Dilithium2: isnull: false claimed-nist-level: 2 claimed-security: EUF-CMA length-public-key: 1312 length-secret-key: 2528 length-signature: 2420 Dilithium3: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 1952 length-secret-key: 4000 length-signature: 3293 Dilithium5: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 2592 length-secret-key: 4864 length-signature: 4595 Dilithium2-AES: isnull: false claimed-nist-level: 2 claimed-security: EUF-CMA length-public-key: 1312 length-secret-key: 2528 length-signature: 2420 Dilithium3-AES: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 1952 length-secret-key: 4000 length-signature: 3293 Dilithium5-AES: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 2592 length-secret-key: 4864 length-signature: 4595 Falcon-512: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 897 length-secret-key: 1281 length-signature: 690 Falcon-1024: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 1793 length-secret-key: 2305 length-signature: 1330 Rainbow-I-Classic: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 161600 length-secret-key: 103648 length-signature: 66 Rainbow-I-Circumzenithal: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 60192 length-secret-key: 103648 length-signature: 66 Rainbow-I-Compressed: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 60192 length-secret-key: 64 length-signature: 66 Rainbow-III-Classic: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 882080 length-secret-key: 626048 length-signature: 164 Rainbow-III-Circumzenithal: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 264608 length-secret-key: 626048 length-signature: 164 Rainbow-III-Compressed: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 264608 length-secret-key: 64 length-signature: 164 Rainbow-V-Classic: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 1930600 length-secret-key: 1408736 length-signature: 212 Rainbow-V-Circumzenithal: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 536136 length-secret-key: 1408736 length-signature: 212 Rainbow-V-Compressed: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 536136 length-secret-key: 64 length-signature: 212 SPHINCS+-Haraka-128f-robust: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 17088 SPHINCS+-Haraka-128f-simple: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 17088 SPHINCS+-Haraka-128s-robust: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 7856 SPHINCS+-Haraka-128s-simple: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 7856 SPHINCS+-Haraka-192f-robust: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 35664 SPHINCS+-Haraka-192f-simple: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 35664 SPHINCS+-Haraka-192s-robust: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 16224 SPHINCS+-Haraka-192s-simple: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 16224 SPHINCS+-Haraka-256f-robust: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 49856 SPHINCS+-Haraka-256f-simple: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 49856 SPHINCS+-Haraka-256s-robust: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 29792 SPHINCS+-Haraka-256s-simple: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 29792 SPHINCS+-SHA256-128f-robust: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 17088 SPHINCS+-SHA256-128f-simple: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 17088 SPHINCS+-SHA256-128s-robust: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 7856 SPHINCS+-SHA256-128s-simple: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 7856 SPHINCS+-SHA256-192f-robust: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 35664 SPHINCS+-SHA256-192f-simple: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 35664 SPHINCS+-SHA256-192s-robust: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 16224 SPHINCS+-SHA256-192s-simple: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 16224 SPHINCS+-SHA256-256f-robust: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 49856 SPHINCS+-SHA256-256f-simple: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 49856 SPHINCS+-SHA256-256s-robust: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 29792 SPHINCS+-SHA256-256s-simple: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 29792 SPHINCS+-SHAKE256-128f-robust: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 17088 SPHINCS+-SHAKE256-128f-simple: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 17088 SPHINCS+-SHAKE256-128s-robust: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 7856 SPHINCS+-SHAKE256-128s-simple: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 32 length-secret-key: 64 length-signature: 7856 SPHINCS+-SHAKE256-192f-robust: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 35664 SPHINCS+-SHAKE256-192f-simple: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 35664 SPHINCS+-SHAKE256-192s-robust: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 16224 SPHINCS+-SHAKE256-192s-simple: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 48 length-secret-key: 96 length-signature: 16224 SPHINCS+-SHAKE256-256f-robust: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 49856 SPHINCS+-SHAKE256-256f-simple: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 49856 SPHINCS+-SHAKE256-256s-robust: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 29792 SPHINCS+-SHAKE256-256s-simple: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 64 length-secret-key: 128 length-signature: 29792 picnic_L1_FS: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 33 length-secret-key: 49 length-signature: 34036 picnic_L1_UR: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 33 length-secret-key: 49 length-signature: 53965 picnic_L1_full: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 35 length-secret-key: 52 length-signature: 32065 picnic_L3_FS: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 49 length-secret-key: 73 length-signature: 76776 picnic_L3_UR: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 49 length-secret-key: 73 length-signature: 121849 picnic_L3_full: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 49 length-secret-key: 73 length-signature: 71183 picnic_L5_FS: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 65 length-secret-key: 97 length-signature: 132860 picnic_L5_UR: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 65 length-secret-key: 97 length-signature: 209510 picnic_L5_full: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 65 length-secret-key: 97 length-signature: 126290 picnic3_L1: isnull: false claimed-nist-level: 1 claimed-security: EUF-CMA length-public-key: 35 length-secret-key: 52 length-signature: 14612 picnic3_L3: isnull: false claimed-nist-level: 3 claimed-security: EUF-CMA length-public-key: 49 length-secret-key: 73 length-signature: 35028 picnic3_L5: isnull: false claimed-nist-level: 5 claimed-security: EUF-CMA length-public-key: 65 length-secret-key: 97 length-signature: 61028