Blowfish Verschlüsselungs-/Entschlüsselungstool
Schnelle symmetrische Blockverschlüsselung von Bruce Schneier
⚠️ Sicherheitshinweis
Die 64-Bit-Blockgröße von Blowfish kann bei großen Datenmengen anfällig für Birthday-Angriffe sein. Für maximale Sicherheit sollten Sie AES-256 für neue Projekte in Betracht ziehen.
Über Blowfish-Verschlüsselung
Blowfish ist eine symmetrische 64-Bit-Blockchiffre von Bruce Schneier (1993), als patentfreie DES-Alternative veröffentlicht. Die 16-Runden-Feistel-Struktur nutzt variable Schlüssel von 32 bis 448 Bit. Der Schlüsselplan erzeugt 18 P-Array-Einträge und vier 256-Einträge-S-Boxen (~4 KB) durch Verschlüsselung der Hexadezimalstellen von π. Blowfish war bis OpenVPN 2.4.0 (2017) die Standardchiffre (BF-CBC), ersetzt durch AES-256-GCM.
Blowfishs Schlüsselaufbau ist absichtlich langsam (521 Selbstiterationen), was Brute-Force-Suchen teuer macht. bcrypt nutzt Eksblowfish mit einstellbarem Kostenfaktor 4-31. Die Haupteinschränkung ist der 64-Bit-Block: Sweet32 (CVE-2016-2183, 2016) zeigte, dass nach ~32 GB unter demselben CBC-Schlüssel statistisch exploitierbare Geburtstagsangriffs-Blockkollisionen auftreten.
Hauptmerkmale
- Variabler Schlüssel: 32 bis 448 Bit, selbes 16-Runden-Feistel für alle Längen
- π-abgeleitete Unterschlüssel: transparente Initialisierung ohne versteckte Schwachstellen
- Hoher Durchsatz auf 32-Bit-Hardware ohne AES-NI
- Ursprung von bcrypt: Eksblowfish (OpenBSD 1999) nutzt Blowfishs langsame Schlüsselgenerierung
Verschlüsselungsmodi
- CBC: CBC Blowfish — 64-Bit-Blöcke XOR mit Vorgänger-Chiffrat. Sweet32-Grenze: nach ~32 GB unter demselben CBC-Schlüssel wird die Geburtstagsschranke (2³² Blöcke) erreicht. Schlüsselrotation obligatorisch vor diesem Limit.
- ECB: ECB Blowfish — jeder 8-Byte-Block unabhängig. Gleiche Blöcke → gleiche Chiffrate. Nur Einzelblock-Operationen.
- CFB: CFB Blowfish — selbstsynchronisierender Strom mit Fehlerfortpflanzung. Gleiche Sweet32-32-GB-Beschränkung wie CBC.
- OFB: OFB Blowfish — deterministischer Schlüsselstrom durch iteratives Re-Verschlüsseln. Keine Fehlerfortpflanzung, aber 2³²-Blöcke-Zyklusgrenze.
Algorithmenvergleich
| Algorithmus | Schlüssellänge | Blockgröße | Sicherheit | Geschwindigkeit |
|---|---|---|---|---|
| Blowfish | 32-448 Bit | 64 bits | Gut | Schnell |
| AES | 128/192/256 bits | 128 bits | Ausgezeichnet | Schnell |
| DES | 56 bits | 64 bits | Schwach | Schnell |
| 3DES | 112/168 bits | 64 bits | Mittel | Langsam |
Sicherheitshinweise
- Sweet32 (CVE-2016-2183, 2016): nach ~32 GB CBC gleicher Schlüssel entstehen exploitierbare Blockkollisionen. Schlüsselrotation vor 2³² Blöcken (32 GiB) obligatorisch.
- OpenVPN 2.4.0 (2017) ersetzte BF-CBC durch AES-256-GCM nach Sweet32. BF-CBC-Verbindungen erzeugen jetzt Deprecation-Warnungen.
- Kein Algorithmus-Angriff auf volle 16 Runden Blowfish. Über 30 Jahre öffentliche Analyse ohne kryptographischen Durchbruch jenseits Sweet32.
- AES-128-GCM oder AES-256-GCM für neue Anwendungen. Blowfish für BF-CBC-Altdaten-Entschlüsselung und Kryptographieausbildung.
Anwendungsfälle
- bcrypt: Eksblowfish nutzt Blowfishs Langsamkeit für Passwort-Hashing mit einstellbarem Kostenfaktor (4-31). Grundlage für bcrypt-Sicherheitsmodell-Verständnis
- OpenVPN-Legacy-Entschlüsselung: BF-CBC-Datenverkehr vor 2017 benötigt Blowfish zur Entschlüsselung und Migration zu AES-256-GCM
- Ressourcenbeschränkte Embedded-Systeme: kleiner Footprint, 32-Bit-optimiert, ohne AES-NI. Volumen < 32 GB pro Schlüssel erforderlich
- Kryptographieausbildung: π-Struktur, Feistel, S-Boxen und 30-Jahr-Angriffshistorie ideal für symmterisches Cipher-Design
Referenzen
Verwandte Tools
AES-Verschlüsselung/Entschlüsselung
Verschlüsseln und entschlüsseln Sie Text sicher mit dem AES-Algorithmus
DES/3DES-Verschlüsselung/Entschlüsselung
Verschlüsseln und entschlüsseln Sie mit DES- und 3DES-Algorithmen mit mehreren Modi und Padding-Optionen
RSA-Verschlüsselung/Entschlüsselung
Verwenden Sie RSA-asymmetrische Verschlüsselung für öffentliche Schlüsselverschlüsselung, private Schlüsselentschlüsselung, digitales Signieren und Verifizierung