Accueilretour

Systèmes modernes à clé secrète

2. D.E.S. (Data Encryption System) (2)

Généralités

Stéganographie

Cryptanalyse

Littérature

Transpositions

Subs. monoα

Subs. polyα 1 - 2

One-time pad

DES 1 - 2

du DES à l'AES

attaques algébriques

perspectives

Clef publique

Knapsack

Diffie-Hellman

RSA 1 - 2

Grands noms

Références


Du DES à l'AES

À l'origine donc, les 256 clefs du DES paraissaient suffisantes face à l'attaque naïve. Mais 20 ans après -- une belle longévité -- ce n'était plus le cas. Le 17 juin 1997 eut lieu le premier décryptage d'un texte chiffré par DES. Le calcul fut distribué via Internet sur de nombreux ordinateurs.

Mais le 18 juillet 1998, le DES sous sa forme originelle fut définitivement "cassé". La cryptanalyse fut réalisée pour le compte de la fondation EFF. Elle fit appel à une machine réalisée par Paul Kocher (ci-dessous), utilisant de nombreux circuits intégrés (plusieurs milliers), le calcul prenant 56 heures.



Aussi le NIST (ex-NBS) lança-t-il un appel à candidatures pour un nouveau système de chiffrement. Celui-ci devait conserver le principe des blocs et supporter des clés de 128, 192 et 256 bits.

En 1999, 5 finalistes étaient encore en lice : Mars, Serpent, Twofish, RC6 et Rijndael. C'est ce dernier qui a été finalement sélectionné le 2/10/2000 pour devenir la nouvelle norme de cryptage AES (Advanced Encryption System), selon la norme FIPS-197.

L'AES est basé sur les mêmes principes généraux que le DES :
  • cryptage symétrique ;
  • chiffrement par blocs ;
auxquels il ajoute la notion de cadencement de clefs (càd, variation de leurs longueurs).

Il profite donc des mêmes qualités fondamentales :
  • rapidité ;
  • facilité d'implémentation ;
  • économie de mémoire ;
  • facilité d'inversion.
Quel est devenu le coût d'une attaque contre l'AES ?

retour

Attaques algébriques sur les cryptages symétriques

Face à un système de cryptage public, l'ennemie Eve peut tenter de résoudre les équations de chiffrement pour tous les blocs :

M = m1...m ; C = c1...c et

c1 = f1(M, K1, ..., K)
...
c = fn(M, K1, ..., K)

Dans le cas de l'AES, cela veut dire résoudre un système de 1600 équations de degré 7 à 1600 inconnues. Toutefois, les propriétés du cryptage permettent de réduire le système à 8000 équations de degré 2 (toujours 1600 inconnues).

Maintenant, théoriquement, des méthodes existent pour résoudre de tels systèmes :
  • bases de Gröbner ;
  • linéarisation (remplacement de chaque variable à une puissance > 1 par une nouvelle variable) + pivot de Gauss ;
mais leur mise en pratique n'a pu être effectuée que dans le cas d'un AES très simplifié.

Actuellement dans sa version complète l'AES peut donc être considéré comme hors de portée de ce genre d'attaque.

retour

Autres attaques et perspectives

D'autres pistes ont été suivies pour mettre l'AES à l'épreuve :
  • attaque par rebond ;
  • attaque à clefs liées ;
  • attaques par bicliques ;
sans qu'aucune ne débouche sur un cassage en règle. Ces nouvelles méthodes de cryptanalyse ont en fait confirmé la bonne santé de l'AES. Mais elles ont aussi mis en évidence le danger de détourner un algorithme de cryptage symétrique pour en déduire une fonction de hachage.

Les qualités de l'AES (notamment la rapidité) peuvent donc continuer à s'exprimer, d'autant plus que la transmission de clefs peut être confiée à un système asymétrique.

retour