La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

AES ADVANCED ENCRIPTION STANDARD. AES Estándar adoptado por la NIST después de un estudio realizado en 1997 Remplazó a DES publicado en 1977 por la NIST.

Presentaciones similares


Presentación del tema: "AES ADVANCED ENCRIPTION STANDARD. AES Estándar adoptado por la NIST después de un estudio realizado en 1997 Remplazó a DES publicado en 1977 por la NIST."— Transcripción de la presentación:

1 AES ADVANCED ENCRIPTION STANDARD

2 AES Estándar adoptado por la NIST después de un estudio realizado en 1997 Remplazó a DES publicado en 1977 por la NIST. El diseño se basa en Wide Trail Strategy la que consiste en tres capas invertibles: –La capa de mezcla lineal –La capa no lineal –La capa de adición de llave AES es un cifrador de tamaño de bloque y llave variable.

3 ELEMENTOS DE UN CIFRADOR Key Size Una llave muy pequeña puede ser vulnerable a ataques de fuerza bruta, el tamaño recomendado por la NIST es de 128. Tamaño del bloque Es inversamente proporcional a la velocidad de encripcion, y directamente proporcional al nivel de seguridad, el tamaño recomendado por la NIST es de 128. Función Key Schedule Se divide en dos procedimientos generales, la expansión de la llave y la selección de las llaves de ciclo o RoundKey. Número de Ciclos Cada ciclo aplica las todas las transformaciones al texto. Por cada ciclo extra se obtiene mayor seguridad y menor velocidad.

4 Formas de Operación –Electronic code Block (ECB) Mode para los siguientes el texto cifrado será –Cipher Block Chaining (CBC) Mode para los siguientes el texto cifrado será

5 –Cipher FeedBack (CFB) Mode para los siguientes el texto cifrado será –Output FeedBack (OFB) Mode para los siguientes el texto cifrado será

6 VULNERABILIDAD DE UN CRIPTOSISTEMA Brute-Force Búsqueda exhaustiva de la llave. Criptoanálisis Estadístico Análisis y uso de la probabilidad de ocurrencia de una letra en un lenguaje determinad. Criptoanálisis –Criptoanálisis diferencial: Es la técnica que permite reducir el numero de llaves posibles. –Criptoanálisis Lineal: Estudia las aproximaciones lineales basadas en las transformaciones ejecutadas por el cifrador.

7 ALGORITMO RIJNDAEL El Estado: El estado es el resultado intermedio del cifrador. Nb (Columnas del estado) es igual al tamaño del bloque dividido entre 32.

8 La Llave: Se puede representar como una matriz con cuatro filas y N k (Columnas de la llave) que es igual al tamaño de la llave dividido entre 32.

9 El número de ciclos: El número de ciclos esta notado por Nr y depende de los valores de Nb y Nk

10 Las transformaciones en un ciclo ByteSub(Estado) Es una transformación de substitución de bytes no lineal, operando en cada Estado, con la tabla de substitución (S-box).

11 EJEMPLO DE S-BOX

12 ShiftRow(Estado) Las filas del Estado son cíclicamente corridas diferentes distancias, la fila uno se corre C1, la fila 2 C2, y la fila 3 C3. Los valores de C1, C2, C3 en función de Nb Ejemplo para Nb = 4

13 MixColumn(Estado) Se logra al multiplicar la columna a(x) de un estado por c(x), una matriz de constantes, así: AddRoundKey (Estado, RoundKey) Realiza es un XOR entre el Estado y la RoundKey o Llave de Ciclo. La Round Key es derivada de la llave del cifrador, y la función Key Schedule. El tamaño de la RoundKey es igual al del Bloque Nb

14 Key Schedule Esta compuesta por dos funciones Expansión de la Llave Se expande la llave así: para Nk < = 6, esta dado según: KeyExpansion(byte Key[4*Nk], word W[Nb*(Nr+1)]) { for(i = 0; i < Nk; i++) W[i] = (Key[4*i],Key[4*i+1],Key[4*i+2],Key[4*i+3]); for(i = Nk; i < Nb * (Nr + 1); i++) { temp = W[i - 1]; if (i % Nk == 0) temp = SubByte(RotByte(temp)) ^ Rcon[i / Nk]; W[i] = W[i - Nk] ^ temp; }

15 para Nk < = 6, esta dado según KeyExpansion(byte Key[4*Nk] word W[Nb*(Nr+1)]) { for(i = 0; i < Nk; i++) W[i] = (key[4*i],key[4*i+1],key[4*i+2],key[4*i+3]); for(i = Nk; i < Nb * (Nr + 1); i++) { temp = W[i - 1]; if (i % Nk == 0) temp = SubByte(RotByte(temp)) ^ Rcon[i / Nk]; else if (i % Nk == 4) temp = SubByte(temp); W[i] = W[i - Nk] ^ temp; } la diferencia con el esquema para Nk <= 6 es que si i -4 es múltiplo de Nk, SubByte es aplicada a W [i -1] antes de XOR

16 Selección de la llave El proceso de selección de la llave para el ciclo i, será tomada de la llave expandida desde w[Nb*i] hasta w [Nb *(i+1) ] ilustrada así :

17 EL CIFRADOR El Cifrador de Rijndael se basa en la expansión de la llave, Durante Nr -1 ciclos y Un ciclo final. El código en C: Rijndael(State,CipherKey) { KeyExpansion(CipherKey,ExpandedKey) ; AddRoundKey(State,ExpandedKey); For( i=1 ; i

18 CRIPTOANÁLISIS El primer ataques conocido para este algoritmo de Encripción fue publicados en 1998, el primero logra romper la seguridad teóricamente de el cifrador solo para 6 ciclos. Recordemos que Rijndael usa 10, 12 o 14 ciclos. Todos los ataques se han basado en las técnicas del ataque Cuadrado que puede ser usado contra el algoritmo de Rijndael con 6, 7 y 8 ciclos. pretende encontrar la llave, utilizando 256 textos encriptados, que solamente se diferencien en un byte. Complejidad en el criptoanálisis de Rijndael


Descargar ppt "AES ADVANCED ENCRIPTION STANDARD. AES Estándar adoptado por la NIST después de un estudio realizado en 1997 Remplazó a DES publicado en 1977 por la NIST."

Presentaciones similares


Anuncios Google