Search
Find a vulnerability
Search criteria
Related vulnerabilities
RUSTSEC-2026-0428 (GHSA-XCC6-F2JQ-43X6)
Vulnerability from osv_rustsec – Published: 2026-10-30 12:00 – Updated: 2026-10-30 11:12 – Source website
VLAI
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.
References
| URL | Type | |
|---|---|---|
{
"affected": [
{
"database_specific": {
"categories": [
"crypto-failure"
],
"cvss": null,
"informational": null
},
"ecosystem_specific": {
"affected_functions": null,
"affects": {
"arch": [],
"functions": [
"orion::hazardous::mac::blake2b::Blake2b::reset"
],
"os": []
}
},
"package": {
"ecosystem": "crates.io",
"name": "orion",
"purl": "pkg:cargo/orion"
},
"ranges": [
{
"events": [
{
"introduced": "0.0.0-0"
},
{
"fixed": "0.17.16"
},
{
"introduced": "0.18.0-0"
},
{
"fixed": "0.18.1"
}
],
"type": "SEMVER"
}
],
"versions": []
}
],
"aliases": [
"GHSA-xcc6-f2jq-43x6"
],
"database_specific": {
"license": "CC0-1.0"
},
"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`.",
"id": "RUSTSEC-2026-0428",
"modified": "2026-10-30T11:12:39Z",
"published": "2026-10-30T12:00:00Z",
"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"
}
],
"related": [],
"severity": [],
"summary": "BLAKE2b produces wrong tag when using `reset()` with a different-length key"
}