480 likes | 721 Views
El Criptosistema ARIA. INGENIERÍA INFORMÁTICA Sevilla, JUNIO de 2011. Autores: Pedro Francisco Barragán López Juan Manuel Márquez Rodríguez. Tutor: José Andrés Armario Sampalo. Índice. 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones
E N D
El Criptosistema ARIA INGENIERÍA INFORMÁTICA Sevilla, JUNIO de 2011
Autores:Pedro Francisco Barragán LópezJuan Manuel Márquez Rodríguez Tutor: José Andrés Armario Sampalo
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Contextualización • ¿Dónde comienza el camino? Redes de comunicaciones Explosión de servicios prestados Necesidad de protección Asimétricos Simétricos Algoritmos de cifrado Criptografía ARIA
Contextualización • Nuestro protagonista: • El algoritmo ARIA es un cifrado de bloque iterativo, que usa una red de sustitución-permutación similar a la estructura de AES • Toma su nombre de las iniciales de Academia, Research Institute y Agency • Fue diseñado en 2003, por un grupo de investigadores surcoreanos • Fue establecido como el algoritmo estándar de cifrado en bloque por el Ministerio de Comercio, Industria y Energía de Corea. En 2004
Contextualización • ¿Cómo llegó a lo alto? 1º Diseñadores ARIA 2º COSIC ARIA es capaz de resistir la totalidad de los ataques conocidos sobre procesos de cifrado-descifrado por bloques. Actualmente se usa en servicios públicos del gobierno En 2007, PKCS (Public-Key Cryptography Standards) lo incluyó en el estándar PKCS #11
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Ámbito Teórico • Conceptos Previos Criptosistema Tipos
Ámbito Teórico • Conceptos Previos Criptosistemas Simétricos o de Clave Privada Seguridad Inconvenientes
Ámbito Teórico • Conceptos Previos Cifrados por Bloques Tipos/Funcionamiento
Ámbito Teórico • Conceptos Previos Ejemplos
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
ARIA - Características • Tamaño de Bloque: 128 Bits / 16 Bytes •Tamaño de Clave Maestra: • 128 Bits / 16 Bytes • 192 Bits / 24 Bytes • 256 Bits / 32 Bytes
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
ARIA - Operaciones Adición de la Clave de Ronda (Round Key Addition - RKA)
ARIA - Operaciones Sustitución (Substitution Layer - SL): • Tipo 1: • Tipo 2:
ARIA - Operaciones Difusión (Diffusion Layer - DL)
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
ARIA – Procesos Realizados • Generación de Claves • Origen: Clave Maestra • Resultado: • Claves de Cifrado • Claves de Descifrado • Elementos Necesarios: Claves de Ronda
ARIA – Procesos Realizados • Generación de Claves
ARIA – Procesos Realizados • Generación de Claves Número de Claves de Cifrado Generadas: 13 / 15 / 17 Número de Claves de Descifrado Generadas: 13 / 15 / 17
ARIA – Procesos Realizados • Cifrado • Origen: Texto en Claro • Resultado: Texto Cifrado • Elementos Necesarios: Claves de Cifrado
ARIA – Procesos Realizados • Cifrado Número de Rondas: 13 / 15 / 17
ARIA – Procesos Realizados • Descifrado • Origen: Texto Cifrado • Resultado: Texto en Claro • Elementos Necesarios: Claves de Descifrado
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Aplicación Implementada Lenguaje de Programación
Aplicación Implementada Entorno de Desarrollo
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Vulnerabilidades - Criptoanálisis Diferencial Imposible • Diferencial Imposible • en 4 Rondas
Vulnerabilidades - Criptoanálisis Diferencial Imposible • Ataque Diferencial Imposible en 6 rondas
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Vulnerabilidades - Otros Ataques • Debilidades en la Generación de Claves • Criptoanálisis Diferencial/Lineal • Criptoanálisis Diferencial Truncado • Criptoanálisis Integral • Ataques por Interpolación • Ataques Boomerang
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Problemas Abiertos • Mejoras Describir las Operaciones con Etiquetado
Problemas Abiertos • Mejoras Implementar la Ayuda como Buscador
Problemas Abiertos • Mejoras Incorporar Función Resumen
Índice 1.- Contextualización 2.- Ámbito Teórico 3.- ARIA 3.1.- Características 3.2.- Operaciones 3.3.- Procesos Realizados 4.- Aplicación Implementada 5.- Vulnerabilidades 5.1.- Criptoanálisis Diferencial Imposible 5.2.- Otros Ataques 6.- Problemas Abiertos 7.- Conclusiones
Conclusiones Baja Difusión de ARIA a Nivel Global Vulnerabilidades Menospreciadas por los Desarrolladores de este Criptosistema
Conclusiones Experiencia Adquirida en la Implementación de Interfaces Gráficas
Bibliografía • National Security Research Institute, Korea. “Specification of ARIA”. Año 2005. • Wenling Wu, Wentao Zhang and Dengguo Fen. “Impossible Differential Cryptanalysis of ARIA and Camellia”. Journal of Compute Science and Technology, Año 2007. • Korean Standard Block Cipher Algorithm (ARIA) http://210.104.33.10/ARIA/index-e.html