Nel 1997 il NIST pubblica un nuovo bando (AES) per determinare il successore di DES, concluso nel 2000.
Alla fine arrivarono 5 cifrari : Rijndael, Serpent,Twofish,RC6,MARS. Nel 2001 venne selezionato Rijndael , in base a test di performance efficienza anche su hardware datato e supporto a chiavi di grandezza variabile.
Rijndael venne proposto da due ricercatori che cercarono di evitare gli errori presenti in DES :
In particolare la chiave di AES passa a 128 bit (Prerequisito Nist) e puo variare 192 o 256.
Gli S-Box sono costruiti in maniera matematica, Non si usa piu un approccio feistel Infatti AES è di tipo SPN (Substitution-Pemutation-Network).
In particolare AES :
il plaintext è un blocco di 128 bit , la chiave puo essere di varie dimensioni ma in questo caso la prendiamo da 128 bit.
Il cifrario manipola la chiave e il plaintext come se fossero delle matrici.
In particolare il plaintext dopo essere stato trasformato in una matrice 4x4 (byte) viene copiato nella matrice Stato , che verrà modificato ad ogni iterazione
In AES la chiave e il plaintext sono processati a parte , da una parte il plain-text-process e dall’altro il key-processing per costruire il key material
La prima cosa che viene fatta è lo XOR del plaintext con la chiave questo è quello che avviene nel round 0 o Initial Round
Poi il plaintext entra in 9 Rounds dove vengono eseguite 4 operazioni :