Feistel Network
Un réseau de Feistel est une structure symétrique pour les chiffrements par blocs qui scinde l'entrée en deux moitiés et, à chaque ronde, transforme une moitié avec la fonction de ronde F puis les échange ; chiffrement et déchiffrement partagent la même structure.
Objectif
Elle permet à la fonction de ronde F d'être une application arbitraire non bijective tout en restant inversible, simplifie la conception et l'implémentation, et fait partager le même code au chiffrement et au déchiffrement.
Mécanisme
Chaque ronde : L_{i+1} = R_i, R_{i+1} = L_i XOR F(R_i, K_i). Le déchiffrement exécute la même structure avec les sous-clés en ordre inverse. DES, 3DES, Blowfish et Twofish sont des chiffrements de Feistel.
Cas d’usage
- Structure de DES/3DES
- Conception de Blowfish/Twofish
- Cadre général des chiffrements par blocs