MacGuffin (cryptologie)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour l’article homonyme, voir MacGuffin pour l'emploi au cinéma. 
MacGuffin
Tour de MacGuffin avec un schéma de Feistel non-équilibré
Tour de MacGuffin avec un schéma de Feistel non-équilibré
Résumé
Concepteur(s) Bruce Schneier et Matt Blaze
Première publication 1994
Dérivé de DES
Chiffrement(s) basé(s) sur cet algorithme Inconnu
Caractéristiques
Taille(s) du bloc 64 bits
Longueur(s) de la clé 128 bits
Structure réseau de Feistel non-équilibré
Nombre de tours 32 (recommandation)
Meilleure cryptanalyse
Attaque de Rijmen et Preneel grâce à la cryptanalyse différentielle

MacGuffin est un algorithme de chiffrement symétrique inventé par Bruce Schneier et Matt Blaze en 1994 durant la session Fast Software Encryption. Cet algorithme faisait office de banc d'essai pour une nouvelle structure en cryptographie, les schémas de Feistel non-équilibrés. La cryptanalyse fut très rapidement menée par Vincent Rijmen et Bart Preneel qui cassèrent MacGuffin pendant la Fast Software Encryption.

Algorithme[modifier | modifier le code]

Basé sur DES, MacGuffin ne divise pas les données en deux blocs égaux dans le schéma de Feistel. Un bloc de 48 bits (parmi 64 bits de données) est envoyé dans une fonction après un XOR avec une clé intermédiaire. On effectue ensuite un XOR entre la sortie de la fonction et le reste des 16 bits. Le résultat est transmis à l'étage suivant du schéma de Feistel. Les concepteurs recommandaient une taille de clé de 128 bits.

Cryptanalyse[modifier | modifier le code]

Une analyse différentielle par Rijmen et Preneel a rapidement mis en évidence des vulnérabilités. Les 32 rondes conseillées par Schneier s'avéraient plus faibles que 16 rondes de DES. Il ne fallait en effet que de « quelques heures » pour obtenir de bonnes caractéristiques différentielles à partir de valeurs initiales quelconques (contrairement à DES qui nécessite de bonnes valeurs initiales). Les deux cryptologues ont montré qu'il était possible d'obtenir la dernière sous-clé dans le schéma de Feistel et de procéder pas à pas pour récupérer le reste des clés.

Références[modifier | modifier le code]

  • B. Schneier and M. Blaze, « MacGuffin: an unbalanced Feistel network block cipher », Fast Software Encryption, Second International Workshop Proceedings (December 1994), Springer-Verlag, 1995, pp. 97–110.
  • V. Rijmen and B. Preneel, « Cryptanalysis of McGuffin », Fast Software Encryption, Second International Workshop Proceedings (December 1994)