CyberGlossary

Cryptographie

Salsa20

Définition

Chiffrement de flot à clé 256 bits conçu par Daniel J. Bernstein en 2005, sélectionné dans le portefeuille eSTREAM et précurseur direct de ChaCha20.

Salsa20 est un chiffrement de flot publié par Daniel J. Bernstein en 2005 et retenu dans le portefeuille logiciel final du concours européen eSTREAM. Il produit un flux de clé en appliquant 20 tours (Salsa20/20) — ou les variantes réduites Salsa20/12 et Salsa20/8 — d'une fonction quart-de-tour add-rotate-xor à un état interne de 512 bits dérivé d'une clé de 256 bits, d'un nonce de 64 bits et d'un compteur. Rapide en logiciel et à temps constant, il a bien résisté à la cryptanalyse au-delà des attaques sur tours réduits. Il est largement supplanté par ChaCha20 (meilleure diffusion, nonce plus long), mais subsiste via la variante XSalsa20 à nonce étendu utilisée par la bibliothèque NaCl/libsodium et, historiquement, par les services cachés Tor.

Exemples

  • Le secretbox de NaCl/libsodium utilise XSalsa20-Poly1305 comme AEAD par défaut.
  • Salsa20/12 figure dans le portefeuille final d'eSTREAM.

Termes liés