TOOL
Salsa20 Encryptor
Encrypt text with the Salsa20 stream cipher (D. J. Bernstein's original design, eSTREAM portfolio) — a real algorithm verified against official eSTREAM test vectors and Salsa20 core specification vectors. 128/256-bit key (16 or 32 bytes), 64-bit nonce (8 bytes), 64-bit block counter. Free, private, and 100% client-side. Never reuse a nonce with the same key.
Try an example:
Local only
Recent history
No history yet
How to use
- Enter your plaintext in the input box.
- Set the key (16 or 32 bytes) and nonce (exactly 8 bytes) as UTF-8 text.
- Optionally set the initial block counter (default 0) and choose hex or base64 output.
- Copy or download the ciphertext.
Frequently asked questions
- Is my data uploaded anywhere?
- No. All processing happens locally in your browser with no server round-trip.
- Does this tool work offline?
- Yes. Once the page loads, the tool runs entirely client-side and needs no network connection.
- Is this real Salsa20 encryption?
- Yes. It follows D. J. Bernstein's original specification and is verified against the official eSTREAM verified test vectors (including the 128/256-bit key setup and rekeyed sets) plus the Salsa20 core specification vectors, cross-checked with PyCryptodome.
- What key and nonce sizes are required?
- The key must be 16 or 32 bytes and the nonce exactly 8 bytes, entered as UTF-8 text; other lengths are rejected with an explicit error. Never reuse a nonce with the same key — reusing the keystream makes the plaintext recoverable.
Glossary terms
Related tools
Salsa20 Decryptor
Decrypt Salsa20 ciphertext (Bernstein original design, eSTREAM portfolio) — a real algorithm verified against official eSTREAM test vectors. Key must be 16 or 32 bytes, nonce exactly 8 bytes, and the block counter must match the value used for encryption. Ciphertext input format follows the output format option (hex or base64). Free, private, and 100% client-side. TOOL
ChaCha20 Encryptor
Encrypt text with the ChaCha20 stream cipher (RFC 8439) — a real algorithm verified byte-for-byte against official RFC test vectors. 256-bit key (32 bytes), 96-bit nonce (12 bytes), 32-bit block counter. Free, private, and 100% client-side. Never reuse a nonce with the same key. TOOL
AES-CTR Encryptor
Encrypt text with AES in CTR mode (NIST SP 800-38A, native Web Crypto implementation) — a real algorithm verified byte-for-byte against official NIST test vectors (F.5.1/F.5.3/F.5.5). 128/192/256-bit key, 16-byte IV (the full initial counter block). Free, private, and 100% client-side. Never reuse an IV with the same key. TOOL