Zum Inhalt springen
uencoder

Twofish

Twofish ist eine symmetrische Blockchiffre, entworfen von Bruce Schneier u. a. für den AES-Wettbewerb; sie nutzt 128-Bit-Blöcke mit 128/192/256-Bit-Schlüsseln und war einer der AES-Finalisten.

Zweck

Sie bot im AES-Wettbewerb eine sichere Alternative und verwendete eine andere Struktur (Feistel + schlüsselabhängige S-Boxen), um die Analyse zu diversifizieren.

Mechanismus

Es ist ein 16-Runden-Feistel-Netzwerk auf 128-Bit-Blöcken. Es nutzt vier schlüsselabhängige S-Boxen (durch den Schlüssel bestimmt), kombiniert mit einer MDS-Matrix und einer Pseudo-Hadamard-Transformation. Der Schlüsselplan ist relativ komplex, bietet aber Whitening (Schlüssel-XORs an Ein-/Ausgabe).

Anwendungsfälle

  • Historische Forschung zum AES-Wettbewerb
  • Eine Option in manchen Krypto-Bibliotheken
  • Kryptografie-Unterricht
  • Eine Alternative mit hoher Sicherheit

Beispiele

  • Eingabe
    key=256bit, data=16bytes
    Output
    16-byte ciphertext

    AES finalist

Häufige Fehler

Mistaking Twofish for the AES standard
AES ultimately selected Rijndael

Verwandte Begriffe

Verwandte Tools

References