-
A new ML-KEM-768 implementation using verified assembler from the mlkem-native project.
This drops the dependency on
libcrux-ml-kemfromrustls-graviolaand the crate feature. Runtime performance is +10% on Intel and +42% on ARM64, andrustls-graviolabuild time drops from 6.6s to 2.6s (including all deps). -
SHA3-256, SHA3-512, SHAKE128 and SHAKE256.
-
Improved aarch64 AES-GCM performance thanks to @brian-pane.
What's Changed
- Unit tests for verify.rs RSA-PSS hooks by @brian-pane in #149
- rsa: use new
to_pkcs1_derinsideto_spki_derby @ctz in #161 - Gate
catch_unwindtests with cfg check by @CathalMullan in #150 - Enable debug symbols in benchmark builds by @brian-pane in #162
- Follow new clippy lint for p256 multiplication loop by @ctz in #168
- Fix some additional Clippy warnings. by @brian-pane in #170
- Enable ctgrind on Linux/aarch64 by @brian-pane in #167
- Rework ctgrind/valgrind interaction by @ctz in #174
- Make the zeroing tests more deterministic by @brian-pane in #175
- perf: Add read buffering to wycheproof tests to fix 1-byte reads by @brian-pane in #176
- Upgrade to crabgrind 0.2.x with new API for marking memory uninitialized by @brian-pane in #178
- Use hex crate for CAVP value decoding by @ctz in #179
- Unlock install of cargo-fuzz by @ctz in #180
- Do fewer iterations in rsa_bench when running ctgrind tests. by @brian-pane in #177
- Update s2n-bignum by @ctz in #172
- Implement SHA3-256, SHA3-512, SHAKE128 and SHAKE256 by @ctz in #173
- Add a safety comment to the aarch64 sha3 multiplexer by @brian-pane in #182
- Fix the ctgrind errors in the 25519 tests by @brian-pane in #171
- Do not instrument test modules in coverage by @ctz in #181
- ctgrind fails closed by @ctz in #183
- Fix a ctgrind error on aarch64 by @brian-pane in #184
- Run lints on ARM by @ctz in #185
- Update dependencies by @ctz in #188
- Clarify/extend mlkem768 benchmarks by @ctz in #191
- Stitched AES-GCM for aarch64 by @brian-pane in #165
- Enable the parse-asm scripts to work on macOS by @brian-pane in #190
- ML-KEM-768 implementation by @ctz in #189
Full Changelog: v/0.3.4...v/0.4.0