Salsa20
Salsa20 ist eine von Daniel Bernstein entworfene Stromchiffre, die auf ARX-Operationen mit 20 Runden basiert; sie ist ein von eSTREAM empfohlenes Verfahren und der Vorgänger von ChaCha20.
Zweck
Sie bietet schnelle, zeitkonstant sichere Stromverschlüsselung und umgeht die Komplexität von Padding und Betriebsmodi bei Blockchiffren.
Mechanismus
Der Zustand ist eine 4×4-Matrix (Konstante σ, Schlüssel, Nonce, Zähler). In jeder Runde wird die Quarter-Round-Funktion (Addieren-Rotieren-XOR) auf jede Spalte und jede Zeile angewendet. Nach 20 Runden wird der Zustand zum Ausgangszustand addiert, um den Schlüsselstrom zu erzeugen.
Anwendungsfälle
- Von eSTREAM empfohlenes Verfahren
- Die Kryptobibliothek NaCl
- Kryptografische Forschung
- Lehrbeispiele
Beispiele
- Eingabe
key=256bit, nonce=64bitOutputkeystreamChaCha20 is its improved successor
Häufige Fehler
- Using Salsa20 instead of the safer ChaCha20
- Prefer ChaCha20-Poly1305
Verwandte Begriffe
ChaCha20
ChaCha20 ist eine von Daniel Bernstein entworfene Stromchiffre auf Basis von ARX-Operationen (Addieren-Rotieren-XOR) und wird meist mit Poly1305 als AEAD kombiniert — eine leistungsstarke Alternative zu AES-GCM. GLOSSAR
AES
AES (Advanced Encryption Standard) ist eine von NIST 2001 standardisierte symmetrische Blockchiffre, unterstützt 128/192/256-Bit-Schlüssel und ist der De-facto-Standard der modernen Verschlüsselung. GLOSSAR
Stream Cipher
Eine Stromchiffre verschlüsselt Byte für Byte oder Bit für Bit, indem ein Schlüsselstrom mit dem Klartext XOR-verknüpft wird; sie braucht kein Padding und eignet sich für Echtzeit- und Streamingdaten. GLOSSAR
Verwandte Tools
AES-Verschlüsseler
Encrypt text or binary data with AES (CBC/GCM/ECB) using Web Crypto API. Kostenlos, privat und 100% clientseitig. WERKZEUG
Salsa20-Verschlüsseler
Verschlüsseln Sie Text mit der Salsa20-Streamchiffre (Originalentwurf von D. J. Bernstein, eSTREAM-Portfolio) — ein echter Algorithmus, verifiziert gegen die offiziellen eSTREAM-Testvektoren und die Core-Spezifikationsvektoren von Salsa20, abgeglichen mit PyCryptodome. 128/256-Bit-Schlüssel (16 oder 32 Byte), 64-Bit-Nonce (8 Byte), 64-Bit-Blockzähler. Kostenlos, privat und 100% clientseitig. Verwenden Sie eine Nonce niemals erneut mit demselben Schlüssel. WERKZEUG
Salsa20-Entschlüsseler
Entschlüsseln Sie Salsa20-Geheimtext (Originalentwurf von Bernstein, eSTREAM-Portfolio) — ein echter Algorithmus, verifiziert gegen die offiziellen eSTREAM-Testvektoren und abgeglichen mit PyCryptodome. Der Schlüssel muss 16 oder 32 Byte, die Nonce genau 8 Byte lang sein, und der Blockzähler muss dem bei der Verschlüsselung verwendeten Wert entsprechen. Das Geheimtextformat folgt der Ausgabeformatoption (Hex oder Base64). Kostenlos, privat und 100% clientseitig. WERKZEUG