SuperDevTools

AES 128 CBC Verschlüsselung online

Text mit AES-128-CBC verschlüsseln

Dieses Tool verschlüsselt einen Text mit AES, einem 128-Bit-Schlüssel und dem CBC-Modus. Sie geben den Text, den Schlüssel und auf Wunsch einen Initialisierungsvektor (IV) ein. Das Ergebnis erscheint Base64-kodiert und lässt sich per Knopfdruck kopieren.

Gedacht ist es zum Testen, zum Lernen und zum Abgleich: Liefert Ihr eigener Code dasselbe wie OpenSSL? Gerechnet wird auf dem Server mit der PHP-Funktion openssl_encrypt und PKCS#7-Padding.

So gehen Sie vor

  1. Tragen Sie den Text in das erste Feld ein.
  2. Geben Sie den Schlüssel in das Feld Salt ein. Trotz des Namens ist dieses Feld der Schlüssel. AES-128 erwartet 16 Bytes, also 16 ASCII-Zeichen.
  3. Tragen Sie in IV (optional) einen IV mit 16 Zeichen ein oder lassen Sie das Feld leer.
  4. Klicken Sie auf Verschlüsseln und danach auf Kopieren, um das Base64-Ergebnis zu übernehmen.

Text und Schlüssel sind Pflicht. Fehlt eines von beiden, zeigt das Tool „error“ an.

So funktioniert AES-128-CBC

AES zerlegt die Nachricht in Blöcke von 16 Bytes. Im CBC-Modus (Cipher Block Chaining) wird jeder Block vor dem Verschlüsseln per XOR mit dem vorherigen Chiffreblock verknüpft. Der erste Block hat keinen Vorgänger und wird deshalb mit dem IV verknüpft. Die Folge: Zwei gleiche Klartextblöcke ergeben nicht denselben Chiffretext, und ein anderer IV verändert die gesamte Ausgabe.

Mit einem 128-Bit-Schlüssel durchläuft jeder Block 10 Runden. Das ist die schnellste der drei Varianten und gilt weiterhin als sicher. Nehmen Sie sie als Standard, solange keine Vorgabe 192 oder 256 Bit verlangt.

Das Padding fügt immer 1 bis 16 Bytes an. Das Wort Hallo (5 Bytes) passt in einen Block: 16 verschlüsselte Bytes, also 24 Base64-Zeichen. Ein Text mit genau 16 Bytes ergibt zwei Blöcke, also 44 Zeichen.

Der entsprechende PHP-Aufruf:

openssl_encrypt($text, 'aes-128-cbc', '0123456789abcdef', 0, 'fedcba9876543210');

Ein Schlüssel mit weniger als 16 Bytes wird mit Nullbytes aufgefüllt, ein längerer wird abgeschnitten.

Häufige Fragen

Was passiert, wenn ich den IV leer lasse?

Dann verwendet das Tool einen festen Standard-IV. Für einen schnellen Versuch reicht das, aber derselbe Text mit demselben Schlüssel ergibt dann immer dasselbe Ergebnis. Im echten Einsatz erzeugen Sie für jede Nachricht einen zufälligen IV und geben ihn zusammen mit dem Chiffretext weiter. Geheim sein muss er nicht.

Werden meine Daten gespeichert?

Text und Schlüssel werden für die Berechnung per HTTPS an den Server gesendet und nicht gespeichert. Verschlüsseln Sie hier trotzdem keine produktiven Geheimnisse, sondern Testwerte.

Ist der Chiffretext vor Manipulation geschützt?

Nein. AES-CBC sorgt für Vertraulichkeit, nicht für Integrität. Ein unterwegs veränderter Chiffretext kann ohne Fehlermeldung entschlüsselt werden. Um Änderungen zu erkennen, brauchen Sie zusätzlich einen HMAC oder einen authentifizierten Modus wie AES-GCM, den dieses Tool nicht anbietet.

Wie komme ich wieder an den Klartext?

Über die Seite zur AES-128-CBC-Entschlüsselung auf dieser Website, mit demselben Schlüssel und demselben IV.