Graph
Salsa20

🔐Salsa20

NEW

A fast stream cipher using add-rotate-xor operations designed for software efficiency.

DESCRIPTION

Salsa20 is a family of ARX-based stream ciphers created by Daniel J. Bernstein for high performance in software. It generates keystream from a key, nonce, and counter, encrypting by XOR with plaintext. Variants trade rounds for speed versus security margins. Salsa20 influenced ChaCha20, widely standardized in TLS and SSH. It is valued for simplicity, speed, and resistance to common attacks under recommended parameters.

ALTERNATIVE DEFINITIONS

Daniel J. Bernstein

Salsa20 is a family of 256-bit stream ciphers designed for high-speed software encryption.

Inventor’s page emphasizing speed and 256-bit design.

Source

IACR ePrint

The Salsa20 family uses add-rotate-xor operations to efficiently produce pseudorandom keystream from a key and nonce.

Technical report detailing ARX construction.

Source

eSTREAM (ECRYPT)

Salsa20 is a software-oriented stream cipher submitted to the eSTREAM project, with recommended variants.

Notes evaluation under the eSTREAM initiative.

Source

Stream Cipher Nonce Keystream Poly1305 Cryptanalysis Randomness

COMPETING TERMS

ChaCha20 AES-CTR

KNOWLEDGE AREAS

Data Security

TARGET AUDIENCE

Security Architect Cybersecurity Engineer Software Developer Chief Information Security Officer

EXTERNAL SOURCES

TOP QUESTIONS

What is Salsa20?

It’s a software-efficient stream cipher using add-rotate-xor operations to generate keystream for encryption.

Category: Definition

How does Salsa20 compare to ChaCha20?

ChaCha20 refines Salsa20’s diffusion and rotation constants, improving security margins and adoption in standards.

Category: Comparison

What are Salsa20’s inputs?

A secret key, nonce, and block counter; it outputs a pseudorandom keystream XORed with plaintext.

Category: Concepts

Is Salsa20 standardized?

Salsa20 itself is not an IETF RFC standard, but is widely documented and evaluated; ChaCha20 is standardized.

Category: Standards

Where is Salsa20 used?

In some software libraries and legacy systems; modern protocols more often use ChaCha20-Poly1305.

Category: Usage

What are common implementation risks?

Nonce reuse, weak key management, and side-channel leaks can compromise security.

Category: Risk

What performance characteristics define Salsa20?

High speed on general-purpose CPUs due to ARX operations and simple structure.

Category: Performance

What is a competing term for Salsa20?

ChaCha20 or AES-CTR serve similar roles with different design trade-offs.

Category: Alternatives

Who created Salsa20?

Daniel J. Bernstein designed Salsa20 as part of stream cipher research.

Category: Origin