Twofish
V kryptografii je Twofish bloková šifra se symetrickým klíčem o velikosti bloku 128 bitů a délce klíče až 256 bitů.
V roce 1997 vyhlásil NIST soutěž o nástupce DES pod názvem AES.Twofish byl jedním z pěti finalistů soutěže Advanced Encryption Standard, ale nebyl vybrán jako standard.
Twofish je příbuzný starší blokové šifře Blowfish. Hlavními rysy šifry Twofish je použití předem vypočtených S-boxů závislých na klíči a poměrně složitý klíčový plán. Jedna polovina n-bitového klíče se používá jako vlastní šifrovací klíč a druhá polovina n-bitového klíče se používá k modifikaci šifrovacího algoritmu (S-boxy závislé na klíči). Twofish využívá některé prvky z jiných návrhů; například pseudo-Hadamardovu transformaci (PHT) z rodiny šifer SAFER. Twofish používá stejnou Feistelovu strukturu jako DES.
Na většině softwarových platforem je Twofish o něco pomalejší než Rijndael (zvolený algoritmus pro Advanced Encryption Standard) pro 128bitové klíče, ale o něco rychlejší pro 256bitové klíče.
Twofish navrhli Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall a Niels Ferguson; v "rozšířeném týmu Twofish", který se scházel, aby provedl další kryptoanalýzu Twofish a dalších konkurentů AES, byli Stefan Lucks, Tadayoshi Kohno a Mike Stay.
Algoritmus Twofish může používat kdokoli bez jakýchkoli omezení. Šifra Twofish nebyla patentována a softwarový příklad její specifikace byl zveřejněn. Šifra Twofish však není široce používána jako šifra Blowfish, která je k dispozici již delší dobu.
Kryptoanalýza
Od roku 2008 je nejlepší publikovanou kryptoanalýzou blokové šifry Twofish zkrácená diferenciální kryptoanalýza plné 16kolové verze. Článek tvrdí, že pravděpodobnost útoků zkrácenými diferencemi je 2-57,3 na blok a že k nalezení dobré dvojice zkrácených diferencí je třeba přibližně 251 vybraných otevřených textů (32 PiB dat).
Bruce Schneier ve svém blogu z roku 2005 odpovídá, že tento článek nepředstavuje úplný kryptoanalytický útok, ale pouze některé předpokládané rozdílové charakteristiky: "Ale ani z teoretického hlediska není Twofish ani zdaleka prolomen. Od roku 2000, kdy byly tyto výsledky publikovány, nedošlo k žádnému rozšíření".
Související stránky
- Blowfish (šifra)
- Pokročilý standard šifrování
- Standard šifrování dat
Otázky a odpovědi
Otázka: Co je to Twofish?
Odpověď: Twofish je bloková šifra se symetrickým klíčem o velikosti bloku 128 bitů a délce klíče až 256 bitů.
Otázka: Jak Twofish souvisí s dřívější blokovou šifrou Blowfish?
Odpověď: Hlavními rysy šifry Twofish je použití předem vypočtených S-boxů závislých na klíči a poměrně složitý klíčový plán. Jedna polovina n-bitového klíče se používá jako vlastní šifrovací klíč a druhá polovina n-bitového klíče se používá k modifikaci šifrovacího algoritmu (S-boxy závislé na klíči).
Otázka: Byl Twofish vybrán jako pokročilý šifrovací standard?
Odpověď: Ne, v roce 1997 vyhlásil NIST soutěž na výběr nástupce DES, který by byl znám jako AES, avšak Twofish nebyl jako standard vybrán.
Otázka: Jaké prvky používá Twofish z jiných návrhů?
Odpověď: Twofish využívá některé prvky z jiných návrhů, například pseudo-Hadamardovu transformaci (PHT) z rodiny šifer SAFER.
Otázka: Používá Feistelovu strukturu jako DES?
Odpověď: Ano, používá Feistelovu strukturu jako DES.
Otázka: Je rychlejší než Rijndael pro 128bitové klíče?
Odpověď: Na většině softwarových platforem je Twofish pro 128bitové klíče o něco pomalejší než Rijndael.
Otázka: Je rychlejší než Rijndael pro 256bitové klíče?
Odpověď: Pro 256bitové klíče je o něco rychlejší než Rijndael.