ChaCha20-Verschlüsselung und -Entschlüsselung
Text mit ChaCha20-Poly1305 oder reinem ChaCha20 ver- und entschlüsseln.
Sie brauchen es zum Entschlüsseln wieder. Nichts, was Sie eingeben, verlässt diese Seite.
Standard bei OpenSSL ist 10.000. Jede Zahl funktioniert: Mehr macht das Erraten des Passworts langsamer; zum Entschlüsseln braucht es dieselbe Zahl.
Authentifiziert: Ein falsches Passwort, ein falscher Schlüssel und jede Änderung am Text werden erkannt.
Der enc-Befehl von OpenSSL kann ChaCha20-Poly1305 nicht lesen. Entschlüsseln Sie es hier oder per Code mit einer Kryptobibliothek: Das 16-Byte-Tag folgt auf den Geheimtext.
ChaCha20-Poly1305 (RFC 8439) ist die authentifizierte Chiffre aus TLS 1.3 und WireGuard: Sie verschlüsselt Text und erkennt zugleich jede Änderung daran oder ein falsches Passwort. Verschlüsseln Sie hier Text mit einem Passwort oder Ihrem eigenen 256-Bit-Schlüssel und einer 12-Byte-Nonce, oder fügen Sie Geheimtext als Base64 oder Hex ein, um ihn zu entschlüsseln. Mit Passwort stammen Schlüssel und Nonce aus PBKDF2-HMAC-SHA256 mit zufälligem Salt, wie bei openssl enc -pbkdf2, und die Ausgabe besteht aus Salted__, dem Salt, dem Geheimtext und dem 16-Byte-Poly1305-Tag. Auch reines ChaCha20 ohne Tag ist dabei, im Aufbau von OpenSSLs chacha20. Ihr Text, Ihre Passwörter und Schlüssel verlassen nie Ihr Gerät: Es läuft in Ihrem Browser, kostenlos und ohne Anmeldung.
So verschlüsseln Sie Text mit ChaCha20-Poly1305
- Wählen Sie Verschlüsseln oder Entschlüsseln. Tippen Sie den zu verschlüsselnden Text ein oder fügen Sie den zu entschlüsselnden Base64- oder Hex-Text ein – das Format wird automatisch erkannt.
- Geben Sie ein Passwort ein (Generieren erzeugt ein starkes) oder wechseln Sie zu Schlüssel & IV (hex) und geben Sie einen 64-stelligen Schlüssel und eine 24-stellige Nonce ein (bei reinem ChaCha20 einen 32-stelligen IV) oder lassen Sie sie generieren.
- Behalten Sie ChaCha20-Poly1305 bei oder wählen Sie ChaCha20, um zu openssl enc -chacha20 zu passen. Zum Entschlüsseln brauchen Sie denselben Modus, dasselbe Passwort und dieselbe Iterationszahl wie beim Verschlüsseln.
- Kopieren Sie das Ergebnis oder laden Sie es herunter, oder klicken Sie auf Tauschen, um es in die Eingabe zu übernehmen und zur Kontrolle wieder zu entschlüsseln.
Funktionen
- ChaCha20-Poly1305 nach RFC 8439: 256-Bit-Schlüssel, 12-Byte-Nonce, 16-Byte-Tag
- Reines ChaCha20 im Aufbau von OpenSSL: ein 16-Byte-IV aus einem 4-Byte-Zähler (Little Endian) und der 12-Byte-Nonce
- Passwortmodus: Schlüssel und Nonce aus PBKDF2-HMAC-SHA256 mit zufälligem Salt, hinter dem Salted__-Header von openssl enc -pbkdf2
- Modus Schlüssel & IV: eigener Hex-Schlüssel und eigene Nonce oder zufällige Werte per Generieren
- Mit Poly1305 lässt ein falsches Passwort, ein falscher Schlüssel oder ein einziges geändertes Zeichen die Entschlüsselung scheitern, statt Datenmüll zu liefern
- Kein Padding: Der Geheimtext ist so lang wie der Text, mit Poly1305 plus 16-Byte-Tag
- Der Befehl openssl enc -chacha20 für reines ChaCha20
Ist das privat?
Ja. ChaCha20 läuft als WebAssembly in Ihrem Browser, und das Passwort wird von der Web Crypto des Browsers gestreckt. Nichts, was Sie eingeben – Text, Passwort, Schlüssel oder Nonce –, wird hochgeladen oder gespeichert.
Häufige Fragen
ChaCha20-Poly1305 oder reines ChaCha20?
ChaCha20-Poly1305, die Voreinstellung, für alles Neue: Sein Poly1305-Tag lässt die Entschlüsselung scheitern, wenn ein Zeichen geändert wurde oder das Passwort falsch ist. Reines ChaCha20 verschlüsselt nur – ein falscher Schlüssel liefert unlesbare Bytes statt eines Fehlers –, nutzen Sie es also nur, um zu einem System zu passen, das es verwendet, etwa openssl enc -chacha20.
Kann OpenSSL es entschlüsseln?
Reines ChaCha20 ja: echo 'U2FsdGVkX1…' | openssl enc -d -chacha20 -pbkdf2 -iter 10000 -a -A im Passwortmodus, oder im Modus Schlüssel & IV -K <Schlüssel hex> -iv <IV hex> statt -pbkdf2 -iter. ChaCha20-Poly1305 nein: openssl enc lehnt AEAD-Chiffren ab. Lesen Sie es hier oder per Code: Im Modus Schlüssel & IV besteht die Ausgabe aus dem Geheimtext mit dem 16-Byte-Tag dahinter, ohne Header.
Was passiert, wenn eine Nonce wiederverwendet wird?
Zwei Nachrichten mit demselben Schlüssel und derselben Nonce verraten das XOR ihrer Texte und erlauben einem Angreifer, Poly1305-Tags zu fälschen. Im Passwortmodus kann Ihnen das nicht passieren: Jede Verschlüsselung wählt ein neues zufälliges Salt, sodass Schlüssel, Nonce und Ausgabe jedes Mal neu sind. Klicken Sie im Modus Schlüssel & IV vor jeder Nachricht auf Generieren, um eine neue Nonce zu erhalten.
Ist ChaCha20 so sicher wie AES?
Ja. ChaCha20-Poly1305 und AES-GCM sind beide Standard-Chiffren von TLS 1.3 ohne praktischen Angriff, und ChaCha20 ist auf Handys ohne AES-Hardware oft schneller. Die Schwachstelle ist das Passwort: Nutzen Sie ein langes zufälliges und die Einstellung mit 600.000 Iterationen, wenn Sie beide Seiten kontrollieren.
Unterstützt es XChaCha20-Poly1305?
Nein. XChaCha20, die Variante mit 24-Byte-Nonce aus libsodium, ist anders aufgebaut, daher lässt sich ihr Geheimtext hier nicht entschlüsseln. Diese Seite nimmt die 12-Byte-Nonce von RFC 8439 und den 16-Byte-IV von OpenSSLs chacha20. Um eine Datei statt Text zu verschlüsseln: Dateien verschlüsseln nutzt ChaCha20-Poly1305 im age-Format.