Chiffre de Feistel
Dans la cryptographie , un chiffre de Feistel de est un chiffre par bloc avec une structure symétrique, baptisée du nom de horst Feistel de cryptographe d'IBM ; on le connaît également généralement comme réseau de Feistel de . Une grande proportion d'utilisation des chiffres de bloc l'arrangement, y compris l'unité de chiffrement américaine (DES). La structure de Feistel a l'avantage qui le chiffrage et les opérations du déchiffrage sont très semblables, même identique dans certains cas, exigeant seulement une inversion du programme de clef de . Par conséquent la taille du code ou des circuits exigés pour mettre en application un tel chiffre est presque divisée en deux.
Les réseaux de Feistel et les constructions semblables sont les chiffrements produit et ainsi combiner les ronds multiples des opérations répétées, comme :
Peu-brouiller (souvent appelé boîtes ou les P-boîtes de permutation)
Fonctions non linéaires simples (souvent appelées la substitution de enferme dans une boîte ou boîtes de substitution)
Mélange linéaire (dans le sens de l'algèbre modulaire) using le XOR pour produire une fonction avec des grands nombres de quel Claude Shannon a décrit comme " ; " de confusion et de diffusion ;.
Brouiller mordu crée l'effet de diffusion de , alors que la substitution est employée pour la confusion.
Historique
Les réseaux de Feistel étaient des premiers vus commercialement dans le chiffre de Lucifer du d'IBM, conçu par Feistel et chaudronnier de cuivre de Don de . Les réseaux de Feistel ont gagné la respectabilité quand le gouvernement fédéral des USA a adopté le DES (un chiffre de basé sur Lucifer, avec des modifications apportées par le NSA ). Comme d'autres composants du DES, la nature itérative de la construction de Feistel facilite mettant en application le système cryptographique dans le matériel (en particulier sur le matériel disponible à l'heure de la conception du DES). Les choses ont changé par les décennies pendant que le matériel est devenu plus capable.
Travail théorique
Beaucoup de chiffres par bloc symétriques modernes sont basés sur des réseaux de Feistel, et la structure et les propriétés des chiffres de Feistel ont été intensivement explorées par les cryptographes spécifiquement, le Michael Luby et le Charles Rackoff ont analysé la construction de chiffre par bloc de Feistel, et ont montré que si la fonction ronde est une fonction pseudo-aléatoire cryptographiquement bloqué, avec Ki utilisé comme graine, alors 3 séries est suffisante pour faire au chiffre par bloc un la permutation pseudo-aléatoire , alors que 4 séries est suffisante pour lui faire un " ; strong" ; permutation pseudo-aléatoire (qui signifie qu'elle demeure pseudo-aléatoire même à un adversaire qui obtient l'accès de l'oracle à sa permutation inverse). En raison de ce résultat très important de Luby et de Rackoff, des chiffres de Feistel s'appellent parfois inexactement les chiffres par bloc de Luby-Rackoff. Davantage de travail théorique a généralisé la construction légèrement, et les limites plus précises données pour la sécurité.
Détails de construction
Laisser le soit la fonction ronde et laisse soit les secondaire-clefs pour les ronds respectivement.
Alors l'opération de base est comme suit :
Couper le bloc de plaintext en deux morceaux égaux, (, )
Pour chaque, rond du , calcul .
Alors le texte chiffré est
Le déchiffrage d'un
Alors le
Un avantage de ce modèle est que le
Le diagramme illustre le chiffrage et le déchiffrage. Noter l'inversion de la commande de subkey pour le déchiffrage ; c'est la seule différence entre le chiffrage et le déchiffrage :
utilisation de des chiffres de Feistel déséquilibrée par de une structure modifiée où
La construction de Feistel est également employée dans des algorithmes cryptographiques autres que des chiffres par bloc. Par exemple, l'arrangement asymétrique optimal de la remplissage (OAEP) de chiffrage de emploie un réseau simple de Feistel pour randomiser des textes chiffrés dans des arrangements principaux asymétriques du chiffrage de certain .
Liste de chiffres de Feistel
Feistel ou Feistel modifié : Blowfish , Camélia , CAST-128 , DES , LOYAL, GLACE , KASUMI , LOKI97 , Lucifer , MARS , MAGENTA, MISTY1 , RC5 , THÉ , DES triple , Twofish , XTEA , GOST_28147-89Feistel généralisé : CAST-256 , MacGuffin , RC2 , RC6 , Bonites
.
| Random links: | Maghazi (camp) | Élection générale du Royaume-Uni, janvier 1910 | Haptics | Nord de Brant | Indiaman est Götheborg | Cifra_de_Feistel |