245
modifications
Ligne 587 : | Ligne 587 : | ||
|align="right"|XOR <span style="color: DarkGreen;">10110001</span> | |align="right"|XOR <span style="color: DarkGreen;">10110001</span> | ||
|- | |- | ||
|align="right"|'''= <span style="color: | |align="right"|'''= <span style="color: DarkViolet;">240</span>''' | ||
|align="right"|'''<span style="color: | |align="right"|'''<span style="color: DarkViolet;">11110000</span>''' | ||
|- | |- | ||
|} | |} | ||
Ligne 596 : | Ligne 596 : | ||
{| class="wikitable centre" width="20%" | {| class="wikitable centre" width="20%" | ||
|- | |- | ||
|align="center"|'''<span style="color: | |align="center"|'''<span style="color: DarkViolet;">240</span>''' | ||
|align="center"|'''40''' | |align="center"|'''40''' | ||
|align="center"|'''14''' | |align="center"|'''14''' | ||
Ligne 622 : | Ligne 622 : | ||
1ère étape (Générique) : SubBytes | 1ère étape (Générique) : SubBytes | ||
On applique à chaque élément du bloc à chiffrer une fonction non-linéaire prédéfinie. L'idée de cette étape, c'est de changer drastiquement tous les éléments du bloc. En cryptographie, on appelle cette propriété la confusion, et les transformations non-linéaires sont parfaites pour ça (si vous voulez les détails technique, ça consiste à prendre l'inverse de ces éléments dans un corps de Galois GF(256) et d'y appliquer une relation affine). Concrètement, étant donné que cette étape est générique, on peut établir une table de conversion qu'on appelle une S-box (Substitution box) et qui est disponible ici en hexadécimal (https://en.wikipedia.org/wiki/Rijndael_S-box). Du coup, mon bloc devient : | On applique à chaque élément du bloc à chiffrer une fonction non-linéaire prédéfinie. L'idée de cette étape, c'est de changer drastiquement tous les éléments du bloc. En cryptographie, on appelle cette propriété la confusion, et les transformations non-linéaires sont parfaites pour ça (si vous voulez les détails technique, ça consiste à prendre l'inverse de ces éléments dans un corps de Galois GF(256) et d'y appliquer une relation affine). Concrètement, étant donné que cette étape est générique, on peut établir une table de conversion qu'on appelle une S-box (Substitution box) et qui est disponible ici en hexadécimal (https://en.wikipedia.org/wiki/Rijndael_S-box). Par exemple, <span style="color: DarkViolet;">240</span> est transformé en <span style="color: red;">140</span>. Du coup, mon bloc devient : | ||
{| class="wikitable centre" width="20%" | {| class="wikitable centre" width="20%" | ||
|- | |- | ||
|align="center"|'''240''' | |align="center"|'''<span style="color: DarkViolet;">240</span>''' | ||
|align="center"|'''40''' | |align="center"|'''40''' | ||
|align="center"|'''14''' | |align="center"|'''14''' | ||
Ligne 650 : | Ligne 650 : | ||
{| class="wikitable centre" width="20%" | {| class="wikitable centre" width="20%" | ||
|- | |- | ||
|align="center"|'''140''' | |align="center"|'''<span style="color: red;">140</span>''' | ||
|align="center"|'''52''' | |align="center"|'''52''' | ||
|align="center"|'''171''' | |align="center"|'''171''' |
modifications