hpke-ng v0.1.0-rc.3
Pre-release
Pre-release
·
65 commits
to main
since this release
- Performance: cache the recipient's serialized public key in
DhPrivateKey<D>so DHdecap/auth_decapskip the per-call base-point scalar multiplication (X25519 decap −41%, P-curve decap proportionally larger). - Performance: cache the expanded
x_wing::DecapsulationKeyinXWingPrivateKey(X-Wing decap −38% — same trick as ML-KEM, previously missed for X-Wing). - Performance: cache the parsed
EncapsulationKeyin PQ public-key wrappers (ML-KEM encap −30% to −37%, X-Wing encap −14%). - Performance:
Aeadtrait now exposes a cachedCipherassociated type built once viaAead::initat key schedule time; AES-GCMContext::sealskips the per-call key schedule + GHash precompute. Sealed trait — no external impact. - Performance:
Kdf::extract/expandaccept piecewise slices (&[&[u8]]) to avoid materialising labeled-IKM/infoVecs. Sealed trait — no external impact. - Across 62 head-to-head benchmarks vs
hpke-rs, hpke-ng now wins 43 (was 27), ties 14, loses 5 — losses are all onderive_key_pair/generatepaths the one-time cost paid for the per-call decap/encap savings.