ML-KEM

Parameter set summary

Parameter setParameter set aliasSecurity modelClaimed NIST LevelPublic key size (bytes)Secret key size (bytes)Ciphertext size (bytes)Shared secret size (bytes)
ML-KEM-512-ipdML-KEM-512IND-CCA21800163276832
ML-KEM-768-ipdML-KEM-768IND-CCA2311842400108832
ML-KEM-1024-ipdML-KEM-1024IND-CCA2515683168156832

ML-KEM-512-ipd implementation characteristics

Implementation sourceIdentifier in upstreamSupported architecture(s)Supported operating system(s)CPU extension(s) usedNo branching-on-secrets claimed?No branching-on-secrets checked by valgrind?Large stack usage?‡
Primary SourcerefAllAllNoneTrueTrueFalse
Primary Sourceavx2x86_64Linux,DarwinAVX2,BMI2,POPCNTTrueTrueFalse

Are implementations chosen based on runtime CPU feature detection? Yes.

‡For an explanation of what this denotes, consult the Explanation of Terms section at the end of this file.

ML-KEM-768-ipd implementation characteristics

Implementation sourceIdentifier in upstreamSupported architecture(s)Supported operating system(s)CPU extension(s) usedNo branching-on-secrets claimed?No branching-on-secrets checked by valgrind?Large stack usage?
Primary SourcerefAllAllNoneTrueTrueFalse
Primary Sourceavx2x86_64Linux,DarwinAVX2,BMI2,POPCNTTrueTrueFalse

Are implementations chosen based on runtime CPU feature detection? Yes.

ML-KEM-1024-ipd implementation characteristics

Implementation sourceIdentifier in upstreamSupported architecture(s)Supported operating system(s)CPU extension(s) usedNo branching-on-secrets claimed?No branching-on-secrets checked by valgrind?Large stack usage?
Primary SourcerefAllAllNoneTrueTrueFalse
Primary Sourceavx2x86_64Linux,DarwinAVX2,BMI2,POPCNTTrueTrueFalse

Are implementations chosen based on runtime CPU feature detection? Yes.

Explanation of Terms

  • Large Stack Usage: Implementations identified as having such may cause failures when running in threads or in constrained environments.