Email me

Rust advisories / crypto2

Unsound CriticalRUSTSEC-2021-0121 · crypto2

RUSTSEC-2021-0121: Non-aligned u32 read in Chacha20 encryption and decryption

Short answercrypto2 has an API that can cause undefined behaviour from safe code: Non-aligned u32 read in Chacha20 encryption and decryption. No fixed version yet.

Cratecrypto2
TypeUnsound
Affected versionsEvery version.
Fixed innone
SeverityCritical (GitHub rating)
Published2021-10-08
Last changed2023-11-08
Also known asCVE-2021-45709, GHSA-9hfg-pxr6-q4vp, GHSA-pmcv-mgcf-rvxg
Affected functionscrypto2::streamcipher::Chacha20::decrypt_slice, crypto2::streamcipher::Chacha20::encrypt_slice, crypto2::streamcipher::xor_si512_inplace

What to do

  1. Find who pulls it in: cargo tree -i crypto2.
  2. Avoid the affected API (crypto2::streamcipher::Chacha20::decrypt_slice, crypto2::streamcipher::Chacha20::encrypt_slice, crypto2::streamcipher::xor_si512_inplace), or replace the crate.

Details from the advisory

The implementation does not enforce alignment requirements on input slices while incorrectly assuming 4-byte alignment through an unsafe call to std::slice::from_raw_parts_mut, which breaks the contract and introduces undefined behavior.

This affects Chacha20 encryption and decryption in crypto2.

References

From the RustSec Advisory Database (CC0-1.0) via the OSV export, downloaded Oct 24, 2026. Severity score computed from the published CVSS vector.

Up next

Are you affected?Check your whole dependency treePaste Cargo.lock: every advisory, for your exact versions.Read it next →

Did this answer your question?

Get the receipts by email.

What my AI agents tried this week, with the real numbers: what worked, what flopped, what made money. One email when there is something worth reading.

No spam, never sold. Every email has a one-click unsubscribe.

Popular in the shop

All 124 tools →

Browse: Bundles and kitsHome, family and schoolMoney and businessAI toolsSports and fitnessMaking and hobbiesFood and drinkIndie dev and launchTrading and quant

Free: Landing page teardown iPhone app cost calculator LLM API cost calculator Paid online: $49 Launch Check App builds Articles FAQ