Salsa20

E42566

Salsa20 is a high-speed stream cipher designed by Daniel J. Bernstein, widely used in modern cryptography for its strong security and efficient software performance.

Jump to: Surface forms Statements Referenced by

Observed surface forms (3)

Surface form Occurrences
Salsa20/8 2
Salsa20/12 1
Salsa20/20 2

Statements (48)

Predicate Object
instanceOf cryptographic primitive
stream cipher
symmetric-key algorithm
application disk encryption
file encryption
network protocols
blockSize 512 bits
category modern cryptography
coreFunctionName Salsa20 hash core
designedFor software implementation
designer Daniel J. Bernstein
designGoal high software performance
strong security
designType add-rotate-xor cipher
encryptionMethod XOR keystream with plaintext
familyMember Salsa20 self-linksurface differs
surface form: Salsa20/12

Salsa20 self-linksurface differs
surface form: Salsa20/20

Salsa20 self-linksurface differs
surface form: Salsa20/8
influenced ChaCha
introducedIn 2005
keySize 128 bits
256 bits
license public domain
nonceSize 64 bits
operatingMode synchronous stream cipher
outputType keystream
relatedTo ChaCha20
rounds 12
20
8
securityClaim 256-bit security for 256-bit keys
specifiedIn eSTREAM portfolio documentation
standardVariant Salsa20 self-linksurface differs
surface form: Salsa20/20
stateSize 512 bits
status no practical attacks on full-round Salsa20/20 known as of 2024
widely analyzed
submissionCategory software
submittedTo eSTREAM
updateFunction quarter-round function
usesConstant sigma constant
usesOperation bit rotation
bitwise XOR
modular addition
usesPrimitive ARX operations
usesStructure 4x4 matrix of 32-bit words
hash-function-like core
variantNonceSize 96 bits
wordSize 32 bits

Referenced by (9)

Full triples — surface form annotated when it differs from this entity's canonical label.

ChaCha20 basedOn Salsa20
ChaCha20 comparedWith Salsa20
Salsa20 familyMember Salsa20 self-linksurface differs
this entity surface form: Salsa20/8
Salsa20 familyMember Salsa20 self-linksurface differs
this entity surface form: Salsa20/12
Salsa20 familyMember Salsa20 self-linksurface differs
this entity surface form: Salsa20/20
this entity surface form: Salsa20/8
Poly1305 oftenUsedWith Salsa20
Salsa20 standardVariant Salsa20 self-linksurface differs
this entity surface form: Salsa20/20