AES-128 cifra bloques de dieciséis bytes en diez rondas. Cada ronda combina cuatro operaciones: sustitución (SubBytes, con la S-box), transposición (ShiftRows, que mueve las filas), mezcla (MixColumns) y suma de la llave (AddRoundKey). Recorra las cuarenta operaciones y vea cómo el bloque se vuelve indistinguible del azar. Todo se calcula en su navegador.
Entrada · un bloque de 16 bytes y una llave de 16 bytes
Si escribe menos de 16 caracteres se rellena con ceros; más de 16, se recorta. El vector oficial de prueba (FIPS-197) es el bloque 00112233445566778899aabbccddeeff con la llave 000102030405060708090a0b0c0d0e0f.
—
—
Las casillas en naranja son las que cambiaron en este paso. El estado se lee por columnas, igual que en el estándar: el primer byte del bloque es la casilla de arriba a la izquierda; el segundo, la de abajo; el quinto arranca la segunda columna.