La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 1 Seguridad en Redes, Enfoque hacia Criptografía Miguel Jimeno, Ph.D. Departamento.

Presentaciones similares


Presentación del tema: "Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 1 Seguridad en Redes, Enfoque hacia Criptografía Miguel Jimeno, Ph.D. Departamento."— Transcripción de la presentación:

1 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 1 Seguridad en Redes, Enfoque hacia Criptografía Miguel Jimeno, Ph.D. Departamento de Ingeniería de Sistemas Universidad del Norte majimeno@uninorte.edu.co Material basado en: Undestanding Cryptography, A Textbook for Students and Practitioners, de Paar.

2 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 2 Contenido Advanced Encryption Standard (AES) Descripción interna de AES

3 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 3 Advanced Encryption Standard (AES) Introducción –Es el algoritmo de cifrado simétrico más usado hoy en día –Es el algoritmo obligatorio en muchos estándares de la industria –Comúnmente usados en estándares comerciales como IPSec, TLS, estándar de cifrado de WiFi, SSH, Skype, entre otros –Al dia de hoy, no se conoce mejor ataque que fuerza bruta Requerimientos de diseño –Cifrado de bloques de 128 bits –Soportar claves de longitudes de 128, 192 y 256 bits –Eficiente en hardware y software

4 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 4 Advanced Encryption Standard (AES) Introducción –Se adoptó una de las propuestas, llamada Rijndael. –Las claves, como el requerimiento, son de 128, 192 y 256 bits. Los bloques de 128 bits –El número de rondas internas varía según el tamaño de la clave –AES no tiene una estructura Feistel como DES –AES cifra todos los 128 bits en una sola ronda, mientras DES hace el cifrado en más de una ronda

5 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 5 Capas de cifrado de AES Capa de adición de la clave –Una clave o subclave de 128 bits es XORed con los bits del bloque en ese momento de las rondas Capa de sustitución de bytes (S-boxes) –Cada elemento transformado no linealmente usando tablas de búsqueda con ciertas propiedades matemáticas –Esto le da confusión al proceso (garantizando que cambios en un bit se propaguen rápidamente a lo largo del bloque Capa de difusión –Le provee difusión a todos los bits. Tiene dos subcapas: ShiftRows: permuta los datos a nivel de bytes MixColumn: combina bloques de 4 bytes

6 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 6 Advanced Encryption Standard (AES) Diagrama de los bloques de cifrado –Cada una de las 3 capas de cifrado se usan en cada ronda –La última ronda no hace uso de la transformación MixColumn, para mantener el algoritmo simétrico

7 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 7 Campos de Galois Definición de grupos y campos –Un campo finito es un grupo de número finito de elementos –Se pueden hacer operaciones de suma, resta, mult. e invert. –Primero se define un grupo

8 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 8 Campos de Galois Definición de grupo –De manera resumida, un grupo es un conjunto con una operación y su correspondiente operación inversa Ejemplo –El conjunto de enteros y la operación módulo m forman un grupo con el elemento neutral 0. –Cada elemento a tiene su inverso –a de tal manera que a + (– a) = 0 mod m.

9 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 9 Campos de Galois Definición de campo –Para poder tener las cuatro operaciones aritméticas básicas en una estructura, se debe tener un conjunto que tenga un grupo aditivo y uno multiplicativo. Esto se llama un campo.

10 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 10 Campos de Galois Ejemplo de un campo –El conjunto de números reales es un campo con el elemento neutral 0 para el grupo aditivo y el elemento neutral 1 para el grupo multiplicativo. –Cada elemento a tiene su aditivo inverso, - a, y cada elemento (diferente de cero) a, tiene su inverso multiplicativo 1/a Campos con número finitos de elementos –En criptografía son más interesantes campos con números finitos de elementos, llamados campos finitos de Galois –Implica que haya campos con 11 u 81 elementos (81 = 3 4 )

11 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 11 Campos de Galois Campos Primos –Los campos finitos más fáciles son aquellos donde n=1 –Las operaciones son adiciones de entero módulo, y multiplicaciones de entero módulo p. –Considérese los anillos de enteros, donde hay enteros con adición modular y multiplicación. Si m es primo, entonces no es solo un anillo sino un campo finito –Para esto, adiciones y multiplicaciones deben ser módulo p

12 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 12 Campos de Galois Ejemplo de Campos Finitos de Galois –Considérese el GF(5) = {0,1,2,3,4}. Las tablas muestran cómo sumar y multiplicar elementos y los inversos Ejemplo, GF(2), el campo finito más pequeño. –Ahora considérese el GF(2) = {0,1}.

13 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 13 Campos de Galois Campos de extensión GF(2 m ) –En AES el campo finito contiene 256 elementos y es denotado como GF(2 8 ) –La ventaja es que cada elemento se puede representar como un byte Representación de elementos en GF(2 m ) –Representados como polinomios con coeficientes en GF(2), cuyo grado máximo es m – 1 –Cada elemento es representado como: –Hay 2 8 polinomios, que constituyen GF(2 8 ) –Cada polinomio se puede guardar de la forma:

14 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 14 Campos de Galois Adición en GF(2 m ) –Se hace la adición y substracción módulo 2 –Si se hace la resta, el resultado será el mismo Ejemplo

15 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 15 Campos de Galois Multiplicación en GF(2 m ) –Es la operación principal de la transformación MixColumn –Se hace con la multiplicación de polinomios: – Donde –Se multiplican los dos enteros, se dividen por un polinomio y se usa el residuo Ejemplo –Se quieren multiplicar y en –Se usa el polinomio irreducible –Se usa el cual es reducido

16 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 16 Campos de Galois Ejemplo de multiplicación en GF(2 4 ) –La operación que ocurre no es simple multiplicación Inversión usando tabla –El inverso de: –Es, según la tabla,

17 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 17 Estructura Interna de AES Gráfica de una sola ronda en AES –La entrada de 16 bytes es alimentada byte por byte al S-box –Salida es permutada bytexbyte y mezclada por MixColumn –La clave de 128 bits es XORed con el resultado intermedio

18 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 18 Estructura Interna de AES Gráfica de una sola ronda en AES –A es tratada como una matriz de 4 por 4 bytes. La clave es ordenada en una matriz de 4 filas x 4, 6 u 8 columnas –AES opera en los elementos, las filas y columnas de A Capa de substitución de bytes –La primera capa en cada ronda es de substitución de bytes –Cada byte es remplazado por otro byte,

19 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 19 Estructura Interna de AES Capa de substitución de bytes –Es el único elemento no lineal o sea, –Es una función biyectiva –Esta es tabla para byte de entrada (xy) Ejemplo: Si la entrada es: La salida es:

20 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 20 Estructura Interna de AES Descripción matemática del S-box –A diferencia de S-boxes en DES, donde son aleatoreas, aquí tienen una estructura algebraica fuerte –Constan de dos transformaciones matemáticas –La primera parte es la inversa donde ambos pertenecen al campo con el polinomio irreducible

21 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 21 Estructura Interna de AES Descripción matemática del S-box –En la segunda parte, cada es multiplicada por una matriz de bits constante seguida por la suma de un vector de 8 bits

22 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 22 Estructura Interna de AES Capa de difusión. Subcapa ShiftRows –Cíclicamente se corren las filas de la matriz de entrada (B este caso), así: Capa de difusión. Subcapa MixColumn –Transformación lineal que mezcla cada columna. –Es el mayor elemento de difusión del algoritmo –Cada columna de 4 bytes es considerada como un vector y multiplicado por una matriz de 4x4

23 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 23 Estructura Interna de AES Capa de difusión. Subcapa MixColumn –Así se computan los primeros bytes: –La siguiente columna se calcula computando el siguiente vector con la misma matriz –Hay que recordar que cada byte es un valor representando un elemento de GF(2 8 ) Ejemplo –Con el siguiente vector, la primera fila de la matriz por B es:

24 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 24 Estructura Interna de AES Creación de las subclaves –Toma la clave original de 128, 192 o 256 bits y las deriva –Se calculan una clave más de las rondas necesarias para cada tamaño de clave –El cómputo de las subclaves se hace expandiendo la clave en arreglos de palabras (32 bits) Creación de subclaves para claves de 128 bits –Se calculan las 11 subclaves, guardando estas en las palabras del arreglo W –Los elementos se computan de esta manera (para i=1, 10): –Y además, para i=1, …, 10, y j=1, 2, 3

25 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 25 Estructura Interna de AES Creación de las subclaves

26 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 26 Descifrado de AES Descifrado –Cada una de las capas de cifrado son invertidas –Como en DES, se necesita una generación inversa de subclaves

27 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 27 Descifrado de AES Detalle de cada ronda –En el caso de InvMixColumn, la inversa de la matriz usada en el cifrado es la que se usa ahora –En el caso de InvShiftRows, se hacen corrimientos en el sentido contrario

28 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 28 Implementación de AES Software –AES fue diseñado de tal manera que sea posible una implementación eficiente en software –Es particularmente eficiente para procesadores de 8 bits pero poco para procesadores modernos de 32 o 64 bits Sustitución por byte, ShiftRow y MixColum operan por byte) –Una propuesta para mejorar esto es usar tablas de búsqueda con entradas de 32 bits (T-box) Se han podido alcanzar velocidades de varios 100s Mbps, o 1.6 Gbps en Athlon de 64 bits (en ambientes controlados)

29 Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 29 Implementación de AES Implementación en Hardware –AES, comparado con DES requiere más recursos de hardware. –Sin embargo, con los altos estándares de HW hoy en día, se pueden alcanzar altos throughputs implementados en FPGA o ASIC (velocidades alcanzadas de hasta 10 Gbps)


Descargar ppt "Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 1 Seguridad en Redes, Enfoque hacia Criptografía Miguel Jimeno, Ph.D. Departamento."

Presentaciones similares


Anuncios Google