RUSTSEC-2026-0428

Source
https://rustsec.org/advisories/RUSTSEC-2026-0428
Import Source
https://github.com/rustsec/advisory-db/blob/osv/crates/RUSTSEC-2026-0428.json
JSON Data
https://api.osv.dev/v1/vulns/RUSTSEC-2026-0428
Aliases
  • GHSA-xcc6-f2jq-43x6
Published
2026-10-30T12:00:00Z
Modified
2026-10-30T11:15:02Z
Summary
BLAKE2b produces wrong tag when using `reset()` with a different-length key
Details

Summary

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.

Impact

Initialization 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.

Resolution

Upgrade to v0.17.16 or v0.18.1.

Database specific
{
    "license":  "CC0-1.0"
}
References

Affected packages

crates.io / orion

Package

Affected ranges

Type
SEMVER
Events
Introduced
0.0.0-0
Fixed
0.17.16
Introduced
0.18.0-0
Fixed
0.18.1

Ecosystem specific

{
    "affected_functions":  null,
    "affects":  {
        "arch":  [],
        "functions":  [
            "orion::hazardous::mac::blake2b::Blake2b::reset"
        ],
        "os":  []
    }
}

Database specific

categories
[
    "crypto-failure"
]
cvss
null
informational
null
source
"https://github.com/rustsec/advisory-db/blob/osv/crates/RUSTSEC-2026-0428.json"