Benchmarks

Longitudinal measurements from persisted lab records

Every table on this page is rendered from the commit-stamped JSON records in benchmarks/ — saved deliberately with task bench:save, never re-measured at site build. Payloads are seeded, so numbers are comparable across runs; machine and commit context travels with every record.

Latest Run

Saved 2026-06-11T04:28:08+00:00
Commit 18cb8b3-dirty
Machine redacted-linux64 (x86_64, 16 cores)
Python 3.10.12
Seed pycryption
Iterations 50

Results by Size

Algorithm Size (B) Encrypt (ms) Decrypt (ms) Throughput (MB/s) P99 Encrypt (ms)
0 AES-256-GCM 100 0.031 0.026 3.23 0.147
1 AES-256-GCM 1,000 0.032 0.030 31.25 0.059
2 AES-256-GCM 10,000 0.035 0.031 285.71 0.059
3 AES-256-GCM 100,000 0.058 0.052 1724.14 0.117
4 ChaCha20-Poly1305 100 0.025 0.022 4.00 0.060
5 ChaCha20-Poly1305 1,000 0.029 0.027 34.48 0.052
6 ChaCha20-Poly1305 10,000 0.051 0.048 196.08 0.076
7 ChaCha20-Poly1305 100,000 0.095 0.088 1052.63 0.148
8 ML-KEM-768+AES-GCM 100 0.088 0.097 1.14 0.163
9 ML-KEM-768+AES-GCM 1,000 0.089 0.104 11.24 0.144
10 ML-KEM-768+AES-GCM 10,000 0.087 0.097 114.94 0.140
11 ML-KEM-768+AES-GCM 100,000 0.136 0.145 735.29 0.264

Output Quality Panel

From the same saved run — entropy, byte uniformity, avalanche, and the ECB canary.

Algorithm Entropy (bits/B) χ² Avalanche % ECB Dups Verdict
0 AES-256-GCM 7.9518 272.12 49.82 0 ✅ CLEAN
1 ChaCha20-Poly1305 7.9626 211.49 49.80 0 ✅ CLEAN
2 ML-KEM-768+AES-GCM 7.9552 260.92 50.18 0 ✅ CLEAN

Run History

Saved Commit Host Label Algorithms
0 2026-06-11T04:28:08+00:00 18cb8b3-dirty redacted-linux64 baseline 3
Back to top