Salsa20 & ChaCha20


Salsa20 and ChaCha20 are symmetric stream ciphers.

  • both designed by Daniel J. Bernstein
  • are remarkably secure and popular
  • not protected by patent
  • Salsa20
    • selected as a finalist in the EU’s ECRYPT competition
  • ChaCha20
    • adopted by Google as a replacement for RC4 in TLS
    • used in
      • part of the arc4random random number generator used in NetBSD, OpenBSD, and FreeBSD
      • DragonflyBSD
      • Linux kernel as part of the /dev/urandom device
    • IETF published implementation reference in 2015 in RFC 7539