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.