{"id":"RUSTSEC-2026-0428","summary":"BLAKE2b produces wrong tag when using `reset()` with a different-length key","details":"## Summary\n\n`hazardous::mac::blake2b::Blake2b::reset()` does not correctly reset the state when a key is supplied that has a different length than the one used upon initialization with `hazardous::mac::blake2b::Blake2b::new()`, because it errorneously uses a cached length. \n\n## Impact\n\nInitialization `hazardous::mac::blake2b::Blake2b` with a key of some length `N`, followed by a reset with a key of length `!= N` will produce an incorrect BLAKE2b tag, causing `hazardous::mac::blake2b::Blake2b::verify()` to fail. This means under honest protocol conditions, parties could experience failing tag verifications.\n\n## Resolution\n\nUpgrade to `v0.17.16` or `v0.18.1`.","aliases":["GHSA-xcc6-f2jq-43x6"],"modified":"2026-10-30T11:15:02.170453141Z","published":"2026-10-30T12:00:00Z","database_specific":{"license":"CC0-1.0"},"references":[{"type":"PACKAGE","url":"https://crates.io/crates/orion"},{"type":"ADVISORY","url":"https://rustsec.org/advisories/RUSTSEC-2026-0428.html"},{"type":"WEB","url":"https://github.com/orion-rs/orion/pull/690"}],"affected":[{"package":{"name":"orion","ecosystem":"crates.io","purl":"pkg:cargo/orion"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0.0.0-0"},{"fixed":"0.17.16"},{"introduced":"0.18.0-0"},{"fixed":"0.18.1"}]}],"ecosystem_specific":{"affects":{"functions":["orion::hazardous::mac::blake2b::Blake2b::reset"],"arch":[],"os":[]},"affected_functions":null},"database_specific":{"cvss":null,"source":"https://github.com/rustsec/advisory-db/blob/osv/crates/RUSTSEC-2026-0428.json","informational":null,"categories":["crypto-failure"]}}],"schema_version":"1.9.2"}