Salsa20 diffusion
D. J. Bernstein
Hash functions and ciphers
Snuffle 2005: the Salsa20 encryption function
Salsa20 diffusion
The following pictures show how quickly changes in one byte of Salsa20 input
spread through the entire Salsa20 array.
Here's a typical Salsa20 input array,
with a superposition of 256 possibilities for the first byte in the third row:
 
After one round:
 
After two rounds:
 
After three rounds:
 
After four rounds:
 
After five rounds:
 
After six rounds:
 
Salsa20 keeps going for 20 rounds.
Priority dates: I drew these pictures on 2005.06.18.