Twofish

Twofish est un algorithme de chiffrement symétrique par bloc inventé et analysé par Bruce Schneier, Niels Ferguson, John Kelsey, Doug Whiting, David Wagner et Chris Hall-

Il chiffre des blocs de 128 bits avec une clé de 128, 192 ou 256 bits.
Twofish était l’un des cinq finalistes du concours AES mais il n’a pas été sélectionné pour le standard.

Il reprend en partie des concepts présents dans le populaire Blowfish, du même auteur.

Les particularités de Twofish sont :

– Une préparation des clés internes relativement complexe
– Un calcul des boîtes de substitution (S-Box) en fonction de la clé
– Utilisation d’une diffusion efficace via la pseudo-transformation de Hadamard (PHT), celle-ci provient de la famille des chiffrements SAFER.
– Utilisation d’un schéma de Feistel comme celui de DES avec 16 rondes.