En la I Parte de Generalidades de AES (Advanced Encryption Standard) se describieron los aspectos más relevantes de AES y las S-Box. Ahora, comentaremos algunos detalles de las llamadas transformaciones (ByteSub, ShiftRow, MixColumns y AddRoundKey) y el proceso de generación de subclaves. Para ver más detalles de una manera más dinámica se recomienda la aplicación Rijndael Animation.

 

ByteSub

Esta transformación realiza una sustitución byte por byte en cada uno de los elementos de la matriz de estado, es decir, la matriz de estado [aij] se sustituye por la matriz [Sij], la Figura # 1 muestra dicho proceso. Utilizando la aplicación Rijndael Animation de [1], se puede observar como el primer byte de la matriz de estado ([a00]) se divide en dos grupos de cuatro bits cada uno y se utilizan como apuntadores a filas y columnas de la S-Box, respectivamente, para realizar la sustitución, en la Figura # 1 se muestra como el valor 19 será reemplazado por d4.

 

Figura # 1: Utilización de S-Box [1].

El algoritmo AES (Advanced Encryption Standard) [1], conocido como Rijndael, fue nombrado así por sus creadores Joan Daemen y Vincent Rijmen, es el actual estándar internacional de cifrado para comunicaciones desde octubre del 2000. Dicho algoritmo se caracteriza por ser un cifrado simétrico por bloques con longitud de clave variable; la longitud de la clave por defecto es de 128 bits pero también puede establecerse a 192 o 256 bits.

La criptografía simétrica, o también llamada criptografía de clave secreta, es un método criptográfico que utiliza la misma clave para cifrar como para descifrar, es decir, que la seguridad del algoritmo se basa en la clave y no en el algoritmo. Algunos ejemplos de algoritmos criptográficos de este tipo son: AES, DES, 3DES y RC5.