The Fuzzy Tale of an x crypto Vulnerability
summary
Fuzzing Go crypto with crypto_fuzz (a differential fuzzer comparing pure‑Go vs assembly) finds a reproducible crash in Salsa20 within ~20 seconds. The assembly counter update increments the 64‑bit counter in two 32‑bit halves and mistakenly doubles the high 32 bits on repetition, causing the keystream to cycle back far sooner than intended. Reproduction encrypts 256 GB on EC2 to observe the cycle. A patch is released but the upstream ports remain unfixed.
AI-written summary · about
chapters (5)
- 0:00Start
- 0:34Fuzzing is an automated testing technique for hardening safety-critical software
- 1:05Hit your target function with cleverly-constructed random data.
- 5:02Counter update doubles the high 32 bits.
- 5:46Counter cycles back to beginning.








