ML-KEM·Key encapsulation·NIST level 3

ML-KEM-768

ML-KEM (FIPS 203) is a lattice-based key encapsulation mechanism, standardized by NIST in August 2024. It replaces RSA and elliptic-curve Diffie-Hellman for establishing shared secrets in a post-quantum world.

Latest run2026-09-21 11:47 UTC
commit6ed429a
CPU
Xeon Platinum 8488C
Measured on
c7i.large
OS / Kernel
24.04.4 LTS
liboqs
0.15.0
Wall clock
32m 32s
CPU steal
<0.01%

Parameters

Family
ML-KEM
Parameter set
768
Public key
1.16 KB
Private key
2.34 KB
Ciphertext
1.06 KB
Iterations / op
1,000
liboqs key
ML-KEM-768

Regulatory approval status

Whether this algorithm family is approved/recommended for use under three regimes. Every badge links to its source — click through before citing this elsewhere.

keygenGenerate a fresh key pair.
131 of 131 runs
Mean
17.1 µs
95% CI on mean
±1.92%
Median
16.8 µs
p95
18.8 µs
p99
38.2 µs
Stdev
5.3 µs
Min
11.8 µs
Ops/sec
58,348

Mean is known to 16.81–17.47 µs across 1,000 iterations. A 95% confidence interval on the mean, not a prediction interval for a single operation. It says how precisely the average is known from this run's samples; the standard deviation says how much the individual samples scattered.

Mean over time

Click any point to view the GitHub Actions run that produced it.

encapEncapsulate: produce a shared secret and ciphertext under the recipient's public key.
131 of 131 runs
Mean
19.2 µs
95% CI on mean
±1.91%
Median
18.7 µs
p95
21.1 µs
p99
37.7 µs
Stdev
5.9 µs
Min
14.2 µs
Ops/sec
52,010

Mean is known to 18.86–19.60 µs across 1,000 iterations. A 95% confidence interval on the mean, not a prediction interval for a single operation. It says how precisely the average is known from this run's samples; the standard deviation says how much the individual samples scattered.

Mean over time

Click any point to view the GitHub Actions run that produced it.

decapDecapsulate: recover the shared secret from the ciphertext using the private key.
131 of 131 runs
Mean
19.9 µs
95% CI on mean
±1.11%
Median
19.4 µs
p95
22.0 µs
p99
39.8 µs
Stdev
3.6 µs
Min
14.9 µs
Ops/sec
50,341

Mean is known to 19.64–20.09 µs across 1,000 iterations. A 95% confidence interval on the mean, not a prediction interval for a single operation. It says how precisely the average is known from this run's samples; the standard deviation says how much the individual samples scattered.

Mean over time

Click any point to view the GitHub Actions run that produced it.

Know the cost of post-quantum migration.

Coldproof