Cryptography & Ciphers
Salsa20 Cipher Processor
Apply Salsa20 with explicit key, format, and algorithm settings. Enter the data and key material, choose the parameters, then review the result.
This tool runs open-source code from CyberChef by GCHQ (Apache License 2.0). See open-source credits.
Salsa20 Cipher Processor uses Salsa20 stream transformation to process the supplied input. It XORs input bytes with the selected keystream. The counter uses 8 bytes and advances once for each 64-byte keystream block.
It XORs input bytes with the selected keystream. The counter uses 8 bytes and advances once for each 64-byte keystream block. Processing runs in the browser for this catalog category, so the result depends on the supplied bytes and settings. Processing runs in the browser.
This tool performs the selected algorithm locally; it does not provide application trust or key management.
Instructions
- Provide text or data for this tool.
- Enter the nonce in Hex rather than relying on Integer conversion. This applies to Salsa20 Cipher Processor.
- Apply the same settings to the ciphertext to recover the fixture bytes. This applies to Salsa20 Cipher Processor.
Example
Input: Use input 00010203 in Hex, a disposable 32-byte Hex key, and an all-zero 8-byte Hex nonce.
Settings: Salsa20 Cipher Processor: Key: 16 or 32 bytes; Nonce: 8 bytes. Counter 0, Rounds 20, Input Hex, and Output Hex provide a reproducible test recipe.
Result: It XORs input bytes with the selected keystream. The counter uses 8 bytes and advances once for each 64-byte keystream block. Processing runs in the browser for this catalog category, so the result depends on the supplied bytes and settings.
Limits
- Salsa20 Cipher Processor: The zero nonce is only a disposable fixture; do not reuse a key and nonce for different real messages.
- Salsa20 Cipher Processor: This operation does not add a Poly1305 tag or authenticate ciphertext.