Blowfish Chiffre

Kategorisierung:Modern und binär-basiert
Herkunft / Verwendung: Blowfish (deutsch Kugelfisch) ist eine symmetrische Blockchiffre, die 1993 von Bruce Schneier entworfen und erstmals im April 1994 in Dr. Dobb’s Journal publiziert wurde. Blowfish kann Schlüssellängen von 8 bis 56 Bytes verarbeiten.

Beschreibung des Algorithmus

Blowfish arbeitet mit einer Blocklänge von 64 bit verschlüsselt mit einem Feistel-Netzwerk und schlüsselabhängigen S-Boxen. Die Schlüsselänge kann zwischen 64 bis 448 Bit betragen.

Jeder Klartextblock von 64 Bit wird halbiert und in 16 Runden wird die linke Hälfte mit einem zuvor berechneten Rundenschlüssel per XOR verknüpft und in die Rundenfunktion gegeben, dessen Ergebnis mit der rechten Hälfte XOR verknüpft wird. Anschließend werden die Hälften vertauscht. Für die Entschlüsselung werden die Rundenschlüssel in umgekehrter Reihenfolge benutzt.

Hier steht nur der ECB-Modus zur Verfügung, der jeden Block gleich verschlüsselt.

Beispiel

Klartext:Beispielklartext (Länge 16, kein Padding)
Schlüssel:Passwort (Länge 8, kein Padding)
Chiffrat (ECB):2E2A27D290BD93BD8D8913038948897A

Code / Chiffre online dekodieren / entschlüsseln bzw. kodieren / verschlüsseln (Decoder / Encoder / Solver-Tool)

Die Klartextlänge sowie die Schlüssellänge sollten glatt durch 8 teilbar sein. Ansonsten wird der Klartext mit Nullbytes und der Schlüssel durch Wiederholungen entsprechend aufgefüllt (Padding). Angaben in Hexadezimal werden automatisch in ihr Binäräquivalent übersetzt.