Cryptography & Ciphers
XSalsa20 Cipher Processor
Apply XSalsa20 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.
XSalsa20 Cipher Processor uses XSalsa20 stream transformation to process the supplied input. It XORs input bytes with the selected keystream. The first 16 nonce bytes derive a subkey; the remaining 8 bytes feed the stream construction.
It XORs input bytes with the selected keystream. The first 16 nonce bytes derive a subkey; the remaining 8 bytes feed the stream construction. 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 XSalsa20 Cipher Processor.
- Apply the same settings to the ciphertext to recover the fixture bytes. This applies to XSalsa20 Cipher Processor.
Example
Input: Use input 00010203 in Hex, a disposable 32-byte Hex key, and an all-zero 24-byte Hex nonce.
Settings: XSalsa20 Cipher Processor: Key: 16 or 32 bytes; Nonce: 24 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 first 16 nonce bytes derive a subkey; the remaining 8 bytes feed the stream construction. Processing runs in the browser for this catalog category, so the result depends on the supplied bytes and settings.
Limits
- XSalsa20 Cipher Processor: The zero nonce is only a disposable fixture; do not reuse a key and nonce for different real messages.
- XSalsa20 Cipher Processor: This operation does not add a Poly1305 tag or authenticate ciphertext.