Twofish
In cryptography, Twofish is a symmetric key block cipher with a block size of 128 bits and key sizes up to 256 bits. It was one of the five finalists of the AES contest, but was not selected for standardisation. Twofish is related to the earlier block cipher Blowfish.Twofish's distinctive features are the use of pre-computed key-dependent S-boxeses, and a relatively complex key schedule. Twofish borrows some elements from other designs; for example, the Pseudo-Hadamard Transform (PHT) from the SAFER family of ciphers.
On most software platforms Twofish is slightly slower than Rijndael (the chosen algorithm for AES) for 128-bit keyss, but somewhat faster for 256-bit keys.
As of 2004, there is no known attack on Twofish more efficient than brute force key search.
References
- The Twofish Encryption Algorithm, by Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall, Niels Ferguson. Wiley ISBN 0-471-35381-7, 1999.
External links
- Twofish web page with full specifications, free source code, and other Twofish resources.
- David Wagner's sci.crypt post recommending AES over Twofish — Wagner was one of the designers of Twofish.
- SCAN's entry for Twofish
Block ciphers |
Algorithms: 3-Way | AES | Blowfish | Camellia | CAST-128 | CAST-256 | CMEA | DEAL | DES | DES-X | FEAL | G-DES | GOST | IDEA | Iraqi | KASUMI | KHAZAD | Khufu and Khafre; | LOKI89/91 | LOKI97 | Lucifer | MacGuffin | Madryga | MAGENTA | MARS | MISTY1 | MMB | NewDES | RC2 | RC5 | RC6 | Red Pike; | S-1 | SAFER | Serpent | SHARK | Skipjack | Square | TEA | Triple DES; | Twofish | XTEA |
Design: Feistel network; | Key schedule; | Product cipher; | S-box | SPN Attacks: Brute force; | Linear / Differential cryptanalysis | Mod n; | XSL Standardisation: AES process; | CRYPTREC | NESSIE Misc: Avalanche effect | Block size; | IV | Key size; | Modes of operation; | Piling-up lemma; | Weak key; |