Geben Sie Text oder kompatible Geheimtexte mit dem passenden Passwort ein. Wählen Sie Ver- oder Entschlüsselung und kopieren Sie das Ergebnis.
Läuft lokal in deinem BrowserDiese Seite wandelt Text in einen TripleDES-Block als Base64 um und einen solchen Block zurück in Text. Inhalt einfügen, Passphrase eintragen, Verschlüsseln oder Entschlüsseln drücken und das Ergebnis aus dem Feld unter den Schaltflächen kopieren. Die Arbeit läuft im Browser, und nichts davon wird hochgeladen.
Der Block ist der Container, den CryptoJS schreibt: Base64, dessen erste Bytes die acht Zeichen Salted__ sind, gefolgt von acht zufälligen Salt-Bytes und dem Geheimtext. Die OpenSSL-Kommandozeile schreibt für Triple DES dieselbe Form, sodass jede Seite die Ausgabe der anderen lesen kann.
Dekodiert besteht das Ergebnis aus drei Teilen: den ASCII-Zeichen Salted__, acht Salt-Bytes aus dem Zufallsgenerator des Browsers und dem Geheimtext selbst, geschrieben in 8-Byte-Blöcken mit PKCS#7-Auffüllung. Eine Eingabe von 31 Zeichen belegt daher 48 Geheimtext-Bytes, eine einzelne Zeicheneingabe acht.
Das Salt ist bei jedem Druck neu, deshalb ergibt derselbe Text mit derselben Passphrase jedes Mal eine andere Base64-Zeichenkette, und zwei Läufe lassen sich nicht mit dem Auge als Beweis gleicher Eingaben vergleichen. Die Passphrase ist nicht der Schlüssel selbst: Sie wird mit MD5 zu einem 24-Byte-TripleDES-Schlüssel und einem 8-Byte-IV gestreckt, genau wie es die OpenSSL-Kommandozeile mit -md md5 tut. Das Ergebnis wird wie dort über mehrere Zeilen umbrochen und mit oder ohne diese Umbrüche wieder eingelesen.
Gemessen mit OpenSSL 1.1.1k: openssl enc -d -des-ede3-cbc -md md5 -a -k entschlüsselt einen Block dieser Seite, und ein mit openssl enc -des-ede3-cbc -md md5 -a -k geschriebener Block wird hier entschlüsselt. Mit dem Salt aus einem Block dieser Seite gab die Kommandozeile denselben 24-Byte-Schlüssel und denselben 8-Byte-IV aus, die diese Seite ableitet, und reproduzierte den Block Byte für Byte.
Die Option gehört zum Format und ist kein Detail: Ein mit -md sha256 oder mit -pbkdf2 geschriebener Block wird hier abgelehnt, weil eine andere Ableitung einen anderen Schlüssel ergibt. Ihre Daten sind nicht beschädigt, sie sind nur mit einer anderen Ableitung verschlossen - entschlüsseln Sie sie mit dem Werkzeug, das sie geschrieben hat, oder schreiben Sie sie mit -md md5 neu, solange Sie die Passphrase haben.
Eine falsche Passphrase, ein geändertes Zeichen im Base64 und gewöhnlicher Text, der wie ein Block eingefügt wurde, enden gleich: Das Ergebnis wird geleert und eine einzige Meldung nennt die drei möglichen Ursachen. Der Fehlschlag lässt sich keiner davon zuordnen, weil die Auffüllungsprüfung scheitert, bevor der Schlüssel beurteilt werden kann. Leere Eingabe und leere Passphrase haben eigene Meldungen.
TripleDES ist eine Altlast: drei DES-Schlüssel über 8-Byte-Blöcke, aus neuen Entwürfen verbannt und am Leben gehalten durch Daten, die schon darin liegen. Nutzen Sie diese Seite, um solche Daten zu lesen oder einen kompatiblen Wert zu schreiben; für Neues nehmen Sie AES. Und ein geglückter Durchlauf beweist nur, dass die Passphrase passte - nicht, wer den Block geschrieben hat oder ob dem Klartext zu trauen ist.