{"id":"RUSTSEC-2026-0428","revision":"2c30441490b04f5b869d05f8fa3d83b1","records":[{"revision":"2c30441490b04f5b869d05f8fa3d83b1","observedAt":"2026-10-30T11:49:33.486+00:00","statement":{"source":"osv","id":"RUSTSEC-2026-0428","aliases":["GHSA-xcc6-f2jq-43x6"],"title":"BLAKE2b produces wrong tag when using `reset()` with a different-length key","description":"## 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`.","state":0,"publishedAt":"2026-10-30T12:00:00+00:00","modifiedAt":"2026-10-30T11:15:02.1704531+00:00","affected":[{"ecosystem":"crates.io","name":"orion","ranges":[{"type":"SEMVER","events":[{"kind":"introduced","version":"0.0.0-0"},{"kind":"fixed","version":"0.17.16"},{"kind":"introduced","version":"0.18.0-0"},{"kind":"fixed","version":"0.18.1"}]}],"versions":[],"rawVersionEvidence":null}],"metrics":[],"references":["https://crates.io/crates/orion","https://rustsec.org/advisories/RUSTSEC-2026-0428.html","https://github.com/orion-rs/orion/pull/690"],"sourceUrl":"https://osv.dev/vulnerability/RUSTSEC-2026-0428","license":"OSV · upstream source license applies","key":"osv:RUSTSEC-2026-0428","identifiers":["RUSTSEC-2026-0428","GHSA-xcc6-f2jq-43x6"]},"retained":false,"historicalAffected":[]}],"coverage":[]}