AccueilđŸ‡«đŸ‡·Chercher

Clé faible

En cryptologie, une clé faible est une clé telle que son utilisation dans une procédure de chiffrement produit un comportement indésirable. Les clés faibles sont généralement peu nombreuses par rapport à l'ensemble des clés possibles. De ce fait, la probabilité d'obtenir une clé faible avec des chiffrements modernes étant trÚs petite (lors d'une génération de clé aléatoire) il est peu probable que cela induise un problÚme de sécurité. Toutefois, on considÚre qu'il n'est pas souhaitable qu'un chiffrement ait des clés faibles.

La définition exacte d'une clé faible peut toutefois varier selon le chiffrement considéré.

Clés de DES

Dans le cadre de DES, on dénombre plusieurs « clés faibles » ainsi que des « clés semi-faibles ».

Clés faibles

Avec DES, une clé faible est telle que :

oĂč est l'opĂ©ration de chiffrement. Chiffrer deux fois un message en clair avec la mĂȘme clĂ© produira ce message en clair. Ce surchiffrement agit donc comme la fonction identitĂ© ce qui est Ă  proscrire. De maniĂšre formelle, on dit que devient une involution.

Le fonctionnement de DES est propice à la présence de clés faibles. En effet, la clé de 56 bits produit 16 sous-clés, chacune d'entre elles est utilisée dans le tour correspondant. Les clés faibles de DES sont celles qui produisent 16 sous-clés identiques. Hors clés non impaires, c'est le cas pour les clés suivantes :

01 01 01 01 01 01 01 01

1F 1F 1F 1F 0E 0E 0E 0E

E0 E0 E0 E0 F1 F1 F1 F1

FE FE FE FE FE FE FE FE


Comme les sous-clés sont identiques et que DES est un réseau de Feistel, la fonction de chiffrement est également celle de déchiffrement. On a de facto un double chiffrement équivalent à un chiffrement suivi d'un déchiffrement. Le message en clair n'est donc pas chiffré et apparaßt inchangé à la sortie.

Clés semi-faibles

Les clés semi-faibles de DES sont des clés et distinctes satisfaisant la propriété suivante :

oĂč est l'opĂ©ration de chiffrement DES. On compte 16 clĂ©s de ce type dans DES, dont les 4 clĂ©s faibles.

Conséquences

De telles clés sont bien sûr à bannir mais leur présence ne rend pas DES moins robuste en théorie. DES a un espace de clés qui contient 256 possibilités. La probabilité de trouver une clé faible avec un tirage aléatoire parfait est de , c'est un événement hautement improbable. On peut aussi simplement tester la clé pour vérifier qu'elle n'est pas faible. DES est un chiffrement qui a été passablement cryptanalysé et les clés faibles sont un problÚme qui a été relégué au deuxiÚme plan puisqu'il est désormais possible de mener une recherche exhaustive des clés de DES.

Autres chiffrements

La liste est incomplÚte mais plusieurs chiffrements par bloc possÚdent des clés faibles :

  • IDEA, les clĂ©s faibles sont identifiables avec une attaque par texte clair choisi, la relation entre les bits du texte clair et ceux du texte chiffrĂ© devient prĂ©visible. Des publications de Joan Daemen en 1993 ont confirmĂ© les risques d'avoir des clĂ©s avec de longues sĂ©quences de bits nuls (plus de 14 bits nuls consĂ©cutifs). Daemen a montrĂ© que la classe de clĂ©s faibles comptait 251 clĂ©s, un nombre qui peut paraĂźtre Ă©norme mais insignifiant par rapport aux 2128 clĂ©s possibles. La probabilitĂ© d'obtenir une clĂ© faible dans IDEA est alors de 2-76 ce qui est infĂ©rieur Ă  la probabilitĂ© d'une clĂ© faible dans DES. Les clĂ©s faibles Ă©tant faciles Ă  dĂ©tecter, cette dĂ©couverte ne pose pas un problĂšme majeur en pratique.
  • Blowfish, les clĂ©s faibles produisent de mauvaises S-Boxes puisque ces substitutions dĂ©pendent de la clĂ©. Il existe une attaque par texte clair choisi sur une version rĂ©duite de Blowfish qui est facilitĂ©e par l'utilisation des clĂ©s faibles.
  • RC4, un chiffrement par flot n'est pas Ă  l'abri non plus des clĂ©s faibles. Les clĂ©s qui commencent par « 00 00 FD » ont 14 % de chance de produire une sortie qui commence par « 00 00 ».

Aucune clé faible n'a été découverte dans AES pour l'instant ().

Buts lors de la conception

L'Ă©limination des clĂ©s faibles est un but lors de la conception d'un chiffrement. Toutefois, si les clĂ©s faibles sont facilement identifiables et ne sont pas Ă  l'origine d'attaques alors leur prĂ©sence peut ĂȘtre tolĂ©rĂ©e. Un algorithme dont les clĂ©s faibles sont inconnues ou difficiles Ă  Ă©tablir n'inspirera pas confiance.

Plusieurs moyens pour empĂȘcher l'utilisation d'une clĂ© faible :

  • vĂ©rifier la clĂ© gĂ©nĂ©rĂ©e et la comparer Ă  une liste
  • empĂȘcher la crĂ©ation des clĂ©s faibles directement au sein de l'algorithme
  • si les clĂ©s faibles ne sont pas connues, on peut procĂ©der Ă  un double chiffrement et vĂ©rifier que le rĂ©sultat est bien chiffrĂ©
  • disposer d'un excellent gĂ©nĂ©rateur de nombres pseudo-alĂ©atoires rĂ©duit les chances d'obtenir de mauvaises clĂ©s (si elles sont peu nombreuses)

Un grand nombre de clés faibles est une faille dans toute conception cryptographique car la chance de les obtenir aléatoirement augmente. De plus, les procédures de vérification seront plus longues avec une liste à parcourir, etc. Les clés faibles sont un problÚme quand l'adversaire peut contrÎler les clés utilisées. C'est le cas par exemple dans les fonctions de hachage cryptographiques qui ont une fonction de compression basée sur un chiffrement.

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplĂ©mentaires peuvent s’appliquer aux fichiers multimĂ©dias.