Du chiffre classique au chiffre par blocs
Le chiffrement par blocs et AES
Plutôt que de traiter les lettres une par une, les chiffres modernes découpent le message en blocs de taille fixe et transforment chaque bloc entièrement.
AES en quelques chiffres
AES (Advanced Encryption Standard) est le standard depuis 2001. Il travaille sur des blocs de 128 bits, soit 16 octets, avec une clé de 128, 192 ou 256 bits.
Le bloc est rangé dans un carré de 4 × 4 octets, appelé l'état :
b0 b4 b8 b12
b1 b5 b9 b13
b2 b6 b10 b14
b3 b7 b11 b15
Les quatre opérations d'un tour
Sur cet état, AES répète un tour composé de quatre étapes :
SubBytes (chaque octet remplace par un autre, via une table)
ShiftRows (les lignes glissent vers la gauche)
MixColumns (les colonnes se melangent entre elles)
AddRoundKey (on combine avec la cle du tour, par XOR)
Le nombre de tours dépend de la clé : 10 tours pour 128 bits, 12 pour 192, 14 pour 256.
Chacune de ces étapes est réversible, et leur enchaînement produit exactement l'effet recherché : SubBytes casse la linéarité, ShiftRows et MixColumns propagent chaque bit d'entrée vers tous les octets de sortie. Au bout de deux ou trois tours, modifier un seul bit du clair a déjà bouleversé le bloc entier.
Pourquoi lui faire confiance
AES a été choisi à l'issue d'un concours public de cinq ans, où quinze candidats ont été attaqués publiquement par la communauté. Vingt ans plus tard, aucune attaque pratique ne le menace : les meilleures connues ne gagnent qu'un facteur négligeable sur la recherche exhaustive.
Une erreur classique à éviter : « AES-256 est deux fois plus sûr qu'AES-128 ». Non — il a 2^128 fois plus de clés. Et 2^128 est déjà hors de portée de toute machine concevable.

