| AddRoundKeys() | : | transformation (pour le chiffrement et le déchiffrement) qui ajoute une clé de tour (Round key) au bloc courant (les clés de l'AES sont de 128 bits). |
|---|---|---|
| MixColumns() | : | transformation qui permute les colonnes d'un bloc lors du chiffrement. |
| RotWord() | : | fonction utilisée par la routine d'expansion de la clé qui applique à un mot de 4 octets une permutation ciculaire. |
| ShiftRows() | : | transformation qui applique des permutations circulaires aux trois dernières lignes du bloc lors du chiffrement. |
| SubBytes() | : | transformation qui opère une substitution non linéaire de chaque octet du bloc en utilisant une table (S-box) lors du chiffrement. |
| SubWord() | : | fonction utilisée par la routine d'expansion de la clé qui prend un mot en entrée et applique à ses 4 octets une substitution non linéaire (S-box). |
| InvMixColumns() | : | transformation du déchiffrement qui est l'inverse de la transformation MixColumns(). |
| InvShiftRows() | : | transformation du déchiffrement qui est l'inverse de la transformation ShiftRows(). |
| InvSubBytes() | : | transformation du déchiffrement qui est l'inverse de la transformation SubBytes(). |
| K | : | la clé de chiffrement. |
| Nb | : | nombre de colonnes (mots de 32 bits) du bloc. Pour l'AES Nb=4. |
| Nk | : | nombre de mots de 32 bits dans la clé de chiffrement. Pour l'AES Nk= 4,6 ou 8. |
| Nr | : | nombre de tours, fonction de Nb et Nk. Pour l'AES Nr=10,12 ou 14. |
| Rcon[] | : | table constante. |
Le Rijndael opère sur des blocs de données de 128, 192 ou 256 bits (voir figure 1.1 page
) en utilisant des clés de chiffrement de 128, 192 ou 256 bits. La taille de bloc retenue pour l'AES est de 128 bits, par souci de commodité semble-t-il.
Un bloc peut être representé comme une matrice d'octets
Nb (the State).
Les octets lus en entrée y sont copiés colonne après colonne (chaque colonne représente un mot lu).