• No se han encontrado resultados

Sistema para encriptación de archivos multimedia a partir de atractores caóticos y teoría de cuaterniones

N/A
N/A
Protected

Academic year: 2020

Share "Sistema para encriptación de archivos multimedia a partir de atractores caóticos y teoría de cuaterniones"

Copied!
102
0
0

Texto completo

(1)Sistema Para Encriptación De Archivos Multimedia A Partir De Atractores Caóticos Y Teoría De Cuaterniones. Luis Enrique Méndez López. Daniel Esteban Ladino Torres. UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA INGENIERÍA DE SISTEMAS BOGOTÁ D.C. 2019.

(2) Sistema Para Encriptación De Archivos Multimedia A Partir De Atractores Caóticos Y Teoría De Cuaterniones. Presentado Por: Luis Enrique Méndez López Daniel Esteban Ladino Torres. Proyecto De Grado Presentado Como Requisito Para Optar Al Título De Ingeniero De Sistemas.. Directores: Edilma Isabel Amaya Barrera Magister Ciencias De Las Matemáticas.. Luz Deicy Alvarado Nieto Doctor En Ciencias De La Computación E Inteligencia Artificial.. UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA INGENIERÍA DE SISTEMAS BOGOTÁ D.C. 2019.

(3) i. Resumen En la actualidad el consumo de información multimedia aumenta a medida que las tecnologías de la información evolucionan, la seguridad se convierte en la preocupación principal para los proveedores de servicios de internet, quienes buscan proteger la integridad y confiabilidad del contenido multimedia que se distribuye en la red, en muchas ocasiones por canales inseguros. Sin embargo, proteger información de gran tamaño como la multimedia es una tarea compleja y a menudo engorrosa por la gran cantidad de datos que se deben tratar simultáneamente. Con el fin de mitigar esta preocupación se han diseñado distintas propuestas de criptosistemas basados en los esquemas de encriptación tradicionales como RSA, DES y AES, los cuales han demostrado ser efectivos, pero, suelen tardar una cantidad considerable de tiempo dado que su concepción está enfocada a cifrar otro tipo de datos lo que los hace inviables para implementaciones a gran escala. En este trabajo de investigación se propone un sistema de encriptación para el tratamiento de archivos multimedia basado en el conjunto de los números cuaterniones y atractores caóticos, para simplificar el proceso de cifrado y obtener indicadores de rendimiento y seguridad enmarcados dentro en otras propuestas de encriptación para archivos multimedia disponibles en la literatura. La implementación de esta propuesta uso la herramienta PovRay para generar la imagen clave la cual es construida a partir de varios parámetros, estos se transmiten por un canal inseguro utilizando una modificación del algoritmo de Diffie-Hellman, después la imagen clave es empleada en un algoritmo de MATLAB que la convierte en cuaterniones junto con la información multimedia. Dichos números pasan por distintas capas de seguridad utilizando.

(4) ii. operaciones de XOR, transformada de discreta de Fourier cuaternión y álgebra de cuaterniones para cifrar la información y finalmente transmitirla hacia algún receptor. Al final de la investigación se evalúa el desempeño y seguridad de esta propuesta mediante indicadores de seguridad como análisis de histogramas, análisis diferenciales, coeficientes de correlación, sensibilidad de la clave, entre otros, cumpliendo los objetivos delimitados al inicio del proyecto..

(5) iii. Contenido Introducción ............................................................................................................................................................. 1 Parte I. Contextualización De La Investigación .......................................................................................................3 1.1.. Planteamiento Del Problema.................................................................................................................... 3. 1.2.. Justificación De La Investigación ............................................................................................................ 6. 1.3. Objetivos....................................................................................................................................................... 7 1.3.1.. Objetivo General ............................................................................................................................. 7. 1.3.2.. Objetivos Específicos ...................................................................................................................... 7. 1.4. Estado del arte .............................................................................................................................................. 8 1.5.. Marco Teórico ....................................................................................................................................... 13. 1.5.1. Seguridad de la información y criptosistemas ..................................................................................... 13 1.5.2. Cuaterniones y transformada discreta de fourier. ................................................................................ 18 1.5.3. Estructuras de anillos .......................................................................................................................... 24 1.5.4. Sistemas dinámicos caóticos ............................................................................................................... 26 1.5.5. Aleatoriedad Y Pseudoaleatoriedad .................................................................................................... 31 Parte II. Modelo De Encriptación Propuesto ......................................................................................................... 39 2.1. Generación De La Clave ............................................................................................................................. 40 2.2. Distribución De La Clave ........................................................................................................................... 42 2.3. Encriptación ................................................................................................................................................ 45 2.3.1. Preparación de la clave ........................................................................................................................ 46 2.3.2. Generación de la matriz de cuaterniones ............................................................................................ 48 2.3.3. Producto de la clave y del frame a encriptar ....................................................................................... 49 2.3.4. Dispersión de la matriz a trasmitir. ...................................................................................................... 49 2.4. Desencriptación .......................................................................................................................................... 49 Parte III. Implementación Y Análisis Del Modelo Propuesto................................................................................ 51.

(6) iv. 3.1. Análisis De Seguridad ................................................................................................................................ 60 3.3.1. Análisis de histogramas ....................................................................................................................... 60 3.3.2. Análisis de correlación ........................................................................................................................ 64 3.3.3. Análisis diferencial .............................................................................................................................. 70 3.3.4. Análisis de espectrogramas ................................................................................................................. 73 3.3.5. Análisis de espacio de clave ................................................................................................................ 76 3.3.6. Sensibilidad de la clave ....................................................................................................................... 77 3.3.7. Entropía de la información .................................................................................................................. 81 3.4. Análisis De Rendimiento ............................................................................................................................ 82 Parte IV: Conclusiones Y Trabajos Futuros ........................................................................................................... 88 Referencias ............................................................................................................................................................. 90.

(7) v. Índice De Tablas. Tabla 1 Pesos de diferentes formatos en MB. .......................................................................................................... 3 Tabla 2 Características criptosistema simétrico. Fuente: (Ciampa, 2014) ............................................................. 15 Tabla 3 Características criptosistema asimétrico. Fuente: (Ciampa, 2014)............................................................ 16 Tabla 4 Objetos empleados para aplicar el modelo de encriptación. ..................................................................... 51 Tabla 5 Especificaciones del equipo empleado para las distintas pruebas. ............................................................ 52 Tabla 6 Coeficientes de correlación para las imágenes de prueba. ........................................................................ 69 Tabla 7 Coeficientes de correlación para las señales de audio de prueba. ............................................................. 69 Tabla 8 NPCR y UACI para cada capa RGB de las imágenes. .............................................................................. 72 Tabla 9 NSCR y UACI’ muestras de audio. .......................................................................................................... 72 Tabla 10 Entropías de las imágenes. ...................................................................................................................... 81 Tabla 11 Entropías muestras de audio. .................................................................................................................. 82 Tabla 12 Especificaciones equipos adicionales empleados para pruebas de rendimiento. .................................... 82 Tabla 13 Tiempos de encriptación obtenidos en los 3 equipos para distintas resoluciones. .................................. 83 Tabla 14 Tiempos de desencriptación obtenidos en los 3 equipos para distintas resoluciones. ............................. 83 Tabla 15 Especificaciones video empleado para el segundo análisis de rendimiento. ........................................... 85 Tabla 16 Tiempos de encriptación obtenidos en los 3 equipos para distintas tasas de FPS. .................................. 85 Tabla 17 Tiempos de desencriptación obtenidos en los 3 equipos para distintas tasas de FPS. ............................. 86.

(8) vi. Índice De Figuras Figura 1. Correspondencia vector - cuaternión .................................................................................................................. 20 Figura 2. Corte transversal conjunto de Julia cuaternión ................................................................................................... 29 Figura 3. Iteradas de la función cat de Arnold ................................................................................................................... 30 Figura 4. Modelo de encriptación propuesto ..................................................................................................................... 39 Figura 5. Fractal con 𝑐 = 0 + 0.5𝑖 + 0𝑗 + 0, 𝑝𝑐 = 0.1 + 1𝑖 + 1𝑗 + 1𝑘 ........................................................................... 41 Figura 6. Fractal con 𝑐 = −1 + 0.21𝑖 + 0𝑗 + 0, 𝑝𝑐 = 0.1 + 1𝑖 + 1𝑗 + 1𝑘 ...................................................................... 41 Figura 7. Fractal con 𝑐 = −0.291 ± 0.399𝑖 + 0.339𝑗 + 0.437𝑘, 𝑝𝑐 = 0.1 + 1𝑖 + 1𝑗 + 1𝑘 ........................................... 42 Figura 8. Esquema de encriptación .................................................................................................................................... 45 Figura 9. Entropías para diferentes potencias de 𝑄𝑐 en las capas RGB ............................................................................. 47 Figura 10. Distribución de una capa con y sin rotación ..................................................................................................... 47 Figura 11. Esquema de desencriptación............................................................................................................................. 50 Figura 12. Frame de prueba 1 ............................................................................................................................................ 53 Figura 13. Capas del frame de prueba 1 y su máscara ....................................................................................................... 54 Figura 14. Capas del frame de prueba 1 con operación XOR e histogramas ..................................................................... 55 Figura 15. Superficies de nivel matriz 𝑄𝑒 ......................................................................................................................... 56 Figura 16. Superficies de nivel de la matriz 𝑄2 con zoom x7 ........................................................................................... 57 Figura 17. Frame de prueba 1 encriptado .......................................................................................................................... 58 Figura 18. Frames de prueba 2 y 3 originales .................................................................................................................... 58 Figura 19. Frames de prueba 2 y 3 encriptados ................................................................................................................. 59 Figura 20. Histogramas para las capas RGB del frame de prueba 1 .................................................................................. 61 Figura 21. Histogramas para las capas RGB del frame de prueba 2 .................................................................................. 62 Figura 22. Histogramas para las capas RGB del frame de prueba 3 .................................................................................. 63 Figura 23. Histogramas de las muestras de audio del frame de prueba 1........................................................................... 63 Figura 24. Histogramas de las muestras de audio del frame de prueba 2........................................................................... 63 Figura 25. Histogramas de las muestras de audio del frame de prueba 3........................................................................... 64 Figura 26. Gráfico de dispersión para la capa roja del frame de prueba 1 ......................................................................... 66 Figura 27. Gráfico de dispersión para la capa verde del frame de prueba 1....................................................................... 67 Figura 28. Gráfico de dispersión para la capa azul del frame de prueba 1 ......................................................................... 68 Figura 29. Gráficos de dispersión de Amplitud señales de audio original y encriptada ..................................................... 70 Figura 30. Gráfico de dispersión de Amplitud señales de audio original y desencriptada ................................................. 70.

(9) vii. Figura 31. Análisis de espectrogramas para el frame de prueba 1 ..................................................................................... 74 Figura 32. Análisis de espectrogramas para el frame de prueba 2 ..................................................................................... 75 Figura 33. Análisis de espectrogramas para el frame de prueba 3 ..................................................................................... 76 Figura 34. Frame de prueba 1 desencriptado con variación 𝑐 = −1 + 0.22𝑖 + 0𝑗 + 0 ..................................................... 78 Figura 35. Frame de prueba 1 desencripto con variación 𝑐 = −1 + 0.214𝑖 + 0𝑗 + 0 ...................................................... 79 Figura 36. Frame de prueba 1 desencriptado con variación 𝑐 = −1 + 0.211𝑖 + 0𝑗 + 0................................................... 80 Figura 37. Gráfica relación Número de pixeles vs tiempo de los 3 equipos para el proceso de encriptación. ................... 84 Figura 38. Gráfica relación Número de pixeles vs tiempo de los 3 equipos para el proceso de desencriptación ............... 84 Figura 39. Gráfica Fotogramas por segundo vs tiempo de los 3 equipos para el proceso de encriptación......................... 86 Figura 40. Gráfica Fotogramas por segundo vs tiempo de los 3 equipos para el proceso de desencriptación ................... 86.

(10) 1. Introducción. Los criptosistemas son combinaciones complejas de hardware y software que se usan junto con las claves para transformar información en una serie de caracteres incomprensibles conocidos como información cifrada (encriptación), para luego transformarlos de nuevo a información comprensible (desencriptación). En la actualidad existen dos tipos de criptosistemas en uso: simétricos y asimétricos. Los criptosistemas simétricos dependen de una sola clave para encriptar y desencriptar la información, mientras que los criptosistemas asimétricos emplean dos claves, una para encriptar y la otra para desencriptar los datos (Zwicke, 2003). Los criptosistemas asimétricos son más seguros que los simétricos, esto se debe principalmente a que la clave de encriptación difiere de la clave de desencriptación, sin embargo, en relación al rendimiento, los criptosistemas simétricos ofrecen una gran ventaja respecto a su contraparte, pues los algoritmos son computacionalmente menos complejos y por ende son más rápidos a la hora de realizar tareas de encriptación y desencriptación (Ding, Gower, & Schmidt, 2006). En este trabajo se implementó un criptosistema dirigido a archivos multimedia (videos, imágenes y audio), aprovechando técnicas que han sido trabajadas en las últimas décadas. Se podrían emplear algoritmos de criptografía tradicionales como RSA, DES, AES o RES para encriptar datos de esta naturaleza directamente, sin embargo, no son adecuados para cifrar estos archivos principalmente por dos razones. La primera es que el tamaño es generalmente más grande que el de un texto, por ende, los criptosistemas tradicionales requieren de más tiempo para encriptar la información. La segunda es que, en el caso del texto, la información desencriptada debe ser idéntica a la información original, sin embargo, en el caso de imágenes o.

(11) 2. audios una pequeña distorsión es usualmente aceptable, esto debido a las características de percepción de los humanos (Yadav, 2008). Investigadores han realizado propuestas de criptosistemas alternos a los métodos de encriptación tradicionales que han mostrado características de desempeño superiores para este tipo de archivos. Algunas de estas propuestas emplean caos (Su, Zhang, & Jiang, 2012), autómatas celulares (Anghelescu, 2012) encriptación basada en secuencias de ADN (Soni, Johar, & Soni, 2013), criptografía de curva elíptica (Mowafi, Tawalbeh, & Aljoby, 2013), entre otros más. La alternativa de cifrado que se escogió como eje central del presente proyecto está basada en el uso de cuaterniones y atractores caóticos. El esquema propuesto consiste en descomponer los pixeles de cada imagen en las componentes RGB, y generar una función discreta de cuaterniones, para llevarla al dominio de la frecuencia mediante la transformada discreta de Fourier cuaternión, junto con la imagen generada por un atractor caótico que se usará como clave. Los procesos de encriptación y desencriptación se realizaron utilizando las operaciones XOR y álgebra de cuaterniones principalmente..

(12) 3. Parte I. Contextualización De La Investigación 1.1. Planteamiento Del Problema El intercambio de información a través de canales públicos ha ido aumentando sustancialmente gracias al avance de las tecnologías, lo que ha incrementado la necesidad de proteger la información confidencial. Los archivos multimedia también han ido incrementando su peso generando nuevos retos para su transmisión y encriptamiento, esto lo demuestra la firma FileCatalyst, encargada de proveer servicios de software para acelerar y optimizar el envío de archivos multimedia, la cual a través de un artículo demuestra cómo el peso de la multimedia que se consume ha ido en aumento. La Tabla 1 consolidada a partir de los datos dados en (FileCatalyst, 2013) muestra algunos promedios de peso para ciertos archivos multimedia. Tabla 1 Pesos de diferentes formatos en MB. Tipo de archivo Peso (MB) E-Book. 1-5. MP3. 3.5. CD-ROM. 750. DVD (película). 4.096. Película Full HD. 8.192 - 15.360. Película Blue-Ray. 20.480 - 25.534. Película 4K. 102.400 +. Se observa que el incremento del peso en los archivos multimedia tiene una tendencia exponencial. Para los próximos años con la realidad virtual, realidad aumentada y 8K se esperan un incremento que sigue este comportamiento..

(13) 4. El tamaño de los datos sumado al problema del cifrado eficiente de datos multimedia recientemente ha ganado más atención tanto en el mundo académico como en la industria (Xie & Kuo, 2007) debido al creciente consumo de multimedia en los últimos años (Farahbakhsh, Crespi, Cuevas, Cuevas, & González, 2013) y a la adaptación de la industria para la demanda de servicios como Netflix. La compañía Canadiense Sandvine especializada en proveer soluciones de control de políticas de redes y servicios de comunicaciones fijas y móviles haciendo énfasis en la seguridad cibernética informó recientemente en su reporte global de fenómenos de internet, que la plataforma Netflix ya tiene un 14.97% de tráfico de descarga mundial, seguido por la descarga HTTP de stream multimedia con un 13.07%, Youtube con 11.35% y la descarga de imágenes MPEG con 4.39%, las 4 suman en total un 43.78%, por lo tanto el consumo de los 4 principales flujos de descarga en internet son multimedia y además abarcan casi el 45% del flujo de descarga total (Sandvine, 2018). El problema del rendimiento y velocidad de los procesos de encriptación de archivos multimedia con algoritmos tradicionales ha sido tratado en (Ahamad & Abdullah, 2016) el autor concluye que varios algoritmos exceptuando el AES no funcionan bien para archivos multimedia, lo que exige la necesidad de proponer nuevos enfoques especializados en el cifrado de multimedia. Con el propósito de contribuir en el diseño de mecanismos de encriptación de información multimedia confidencial, en este trabajo se busca dar respuesta a la siguiente pregunta: ¿De qué manera es posible aprovechar las propiedades de los sistemas dinámicos caóticos y la teoría de cuaterniones para proponer un nuevo criptosistema dirigido a archivos multimedia? Para dar respuesta a este eje de trabajo y basados en los desarrollos planteados en (Khalil, 2017) y (Anand, Bajpai, & Bhaskar, 2009) se utilizó un atractor caótico para generar una.

(14) 5. imagen que se adoptó como clave privada del criptosistema. El mecanismo de encriptación consiste en descomponer cada píxel tanto de la imagen clave como del frame a encriptar en sus componentes RGB, luego realizar un tratamiento especial con operaciones XOR a las capas imagen y agregarlas en las tres últimas coordenadas de una matriz de cuaterniones, reservando la primera componente para la señal de audio correspondiente. Posteriormente se aplica la transformada discreta de Fourier cuaternión sobre cada una de estas matrices para aprovechar las operaciones de multiplicación y división de este conjunto numérico, encriptando en el dominio de la frecuencia mediante el producto de las dos transformadas obtenidas y desordenando la información a través de un algoritmo de dispersión..

(15) 6. 1.2. Justificación De La Investigación El problema que se abordó en este trabajo aunque es un ejercicio académico tiene gran interés ya que con el avance de la tecnología cada vez se está más expuesto a la vulnerabilidad de la información privada, hecho que puede generar problemas de orden social, económico, político o cultural, razón por la cual la criptografía, que tiene sus orígenes desde hace miles de años, cumple un papel importante frente a la necesidad de proteger en este caso archivos multimedia aplicando fundamentación conceptual de teorías que han evolucionado en las últimas décadas de la mano del poder de procesamiento y la capacidad de almacenamiento de la información digital. De hecho, una de las razones por las cuales han surgido nuevos desarrollos en esquemas de criptografía radica en la necesidad de lograr de forma cada vez más precisa, segura y rápida el intercambio de información en el mundo real, lo que ha generado líneas de trabajo en las que utilizan autómatas celulares, sistemas dinámicos, curvas elípticas, código ADN y computación cuántica, éstos últimos desarrollos aún bastante teóricos pero con promitentes resultados que romperían muchos de los esquemas tradicionales basados en la factorización de números primos. La ejecución de este trabajo para la formación profesional de los autores, permite articular varias áreas del conocimiento relacionadas con la ingeniería de sistemas tales como teoría de números, cibernética, y ciencias de la computación, lo cual contribuye a consolidar un pensamiento integral y sistémico para afrontar problemas y proyectos en pro del quehacer como futuros ingenieros de sistemas..

(16) 7. 1.3. Objetivos 1.3.1. Objetivo General Plantear un nuevo sistema para encriptación de archivos multimedia utilizando la teoría de cuaterniones y atractores caóticos con indicadores de seguridad y rendimiento enmarcados dentro de la literatura disponible. 1.3.2. Objetivos Específicos . Seleccionar una herramienta para el cálculo de la transformada discreta de Fourier de cuaterniones.. . Seleccionar un atractor con características dentro del caos para generar el esquema de clave.. . Diseñar un mecanismo seguro para el envío de la clave.. . Diseñar y construir una nueva propuesta de criptosistema simétrico basado en la teoría de cuaterniones y atractores caóticos para archivos multimedia.. . Realizar pruebas experimentales para validar el funcionamiento del criptosistema y hacer los ajustes necesarios. . Evaluar el desempeño del criptosistema de acuerdo a estándares encontrados en la literatura tales como los propuestos por la NIST (National Institute of Standards and Technology)..

(17) 8. 1.4. Estado del arte En la literatura científica de los últimos años se ha consolidado una comunidad académica interesada en fortalecer los esquemas de encriptación dirigidos a textos, imágenes, videos, audios y archivos multimedia, aplicando métodos novedosos que incluyen desde curvas elípticas, código ADN, autómatas celulares, computación cuántica y teoría del caos, todos estos motivados por el masivo aumento de intercambio de información a través de canales públicos y la necesidad de proteger datos privados de grandes tamaños, para los cuales los esquemas tradicionales de criptografía no son apropiados. Como el propósito de este trabajo es utilizar teoría del caos y matemática de los cuaterniones para encriptación de archivos multimedia, a continuación, se analizan algunos trabajos que se destacan en esta dirección. En (Khalil, 2017) se presenta una nueva técnica de encriptación para archivos multimedia utilizando cuaterniones para integrar señales de video y texto mediante una única señal de cifrado y trabajar sobre el dominio de la frecuencia debido a la transformada discreta de Fourier cuaternión. Logran proponer un esquema simétrico a partir de una imagen predeterminada que utilizan como clave y por medio de la multiplicación y el cociente de cuaterniones definen el cifrado y descifrado. El autor indica que el esquema que propone sirve tanto para archivos multimedia, como para información en tiempo real usando como clave pública una imagen cualquiera; sin embargo, en las pruebas solo se presenta el manejo de un fotograma, sin demostrar la aplicación en tiempo real. En (Anand et al., 2009) los autores proponen un modelo para generar claves en tiempo real mediante el uso de imágenes fractales obtenidas a partir del conjunto de Julia cuaternión, esquema que es apropiado por su estructura compleja y comportamiento caótico, ya que.

(18) 9. pequeñas variaciones en los parámetros de Julia implican un cambio drástico en su estructura debido a la naturaleza caótica la función matemática por la cual se obtiene dicho conjunto. El esquema de seguridad involucra los aspectos de confidencialidad, autentificación, no repudiación e integridad del sistema, se destaca el método que usan en la confidencialidad, el cual consiste en generar una clave pública en tiempo real a partir del conjunto de Julia Cuaternión, la seguridad consiste en que es muy difícil averiguar los parámetros iniciales, y que el envío de éstos no se hace a través de un canal público, lo hacen por medio de una base de datos conjunta del emisor y el receptor, así la seguridad en la transmisión de los parámetros iniciales queda delegada al componente de seguridad de la base de datos. En (Valluri & Narayan, 2017) se plantea un criptosistema con cuaterniones que hace uso de un método con clave pública, el cual basa su seguridad en dos problemas matemáticos como son el problema de la búsqueda del conjugado y el problema del logaritmo discreto, los cuales al ser combinados proveen una seguridad que requiere 2. intentos por fuerza bruta para encontrar. los valores de las claves privadas, pero aun encontrando estas claves no es suficiente para descifrar el mensaje, ya que además se debe resolverse el problema de la búsqueda del conjugado el cual solo puede ser solucionado mediante fuerza bruta. Para hallar de forma cómoda la transformada discreta de Fourier cuaternión en (Ell & Sangwine, 2000) se describe una manera de representar un cuaternión como la suma de 2 números complejos que comparten bases ortogonales entre ellas, para después calcular una transformada de Fourier cuaternión como la suma de dos transformadas de Fourier complejas, pero ¿Cuál es el fin de realizar todo este proceso?, a nivel computacional cuando se logra una representación de un modelo de manera menos compleja, se logra que se realicen más rápido los cálculos..

(19) 10. Dadas las cualidades de los cuaterniones, estos se ajustan muy bien para representar datos multimedia, en (Xiaomei Xing, Yuesheng Zhu, Zhiwei Mo, Ziqiang Sun, 2015) se propone una solución para la identificación de imágenes con un método de hashing perceptual, este método a diferencia de su contraparte para texto no tiene la intención de generar cadenas impredecibles, por el contrario, busca identificar una imagen aun cuando se le realicen varios tipos de modificaciones, esto con el fin de que cada imagen tenga una firma única y sea posible reducir la piratería de multimedia vía internet. Debido a la no conmutatividad del producto de cuaterniones es posible realizar esquemas de trabajos novedosos, uno de estos se presenta en (Kamlofsky & Hecht, 2015), los autores muestran que el uso de cuaterniones es más rápido comparado con la representación matricial pese a que tienen en común la no conmutatividad para el producto, hecho que implica que el modelo de seguridad planteado tenga un nivel más robusto que aquellos propuestos sobre estructuras algebraicas conmutativas, los autores proponen un esquema criptográfico asimétrico y de envío de clave a través del uso de polinomios como claves privadas, logrando obtener buenos indicadores de desempeño. Continuando con el lenguaje de cuaterniones y las aplicaciones de la no conmutatividad, en (Kumar & Saini, 2017) los usan para definir un anillo no conmutativo y crear un esquema de seguridad el cual sirve para envío de mensajes e intercambio de contraseñas, el esquema es parecido al propuesto por Diffie-Hellman (Diffie & Hellman, 1976), pero haciendo uso de monomios de cuasi-polinomios al azar como claves privadas y basando la seguridad en los problemas computacionales de la búsqueda del conjugado y del conjugado decisional. En (Rodriguez, Amaya, Suárez, & Moreno, 2017) proponen un método para encriptar imágenes en escala de grises usando una clave generada por el sistema caótico de Lorenz debido.

(20) 11. a su alto grado de sensibilidad a las condiciones iniciales, además, hacen uso de la sincronización caótica para garantizar la autentificación del receptor de la imagen cifrada. Las imágenes en escala de grises han sido utilizadas en sistemas de información médicos, como es el caso de (Sokouti, Zakerolhosseini, & Sokouti, 2016) donde proponen un método de caracol para incrementar la sensibilidad de un esquema de encriptación aplicado a imágenes médicas empleando el algoritmo GGH (Goldreich–Goldwasser–Halevi) con buenos indicadores de NPCR (Number of Pixel Change Rate) y UACI (Unified Average Changing Intensity). Aprovechando la facilidad de rotación en los cuaterniones es posible realizar un esquema de seguridad como se presenta en (Nagase, Komata, & Araki, 2004), quienes lo usan para asegurar el flujo de información encriptada por una red wifi, los autores destacan que al usar un cuaternión como clave, éste tiene la ventaja de que cada una de sus componentes también funciona como una clave dependiente de las demás, brindando una mayor seguridad. Dados los avances en la computación cuántica, los algoritmos convencionales de criptografía en este ambiente son vulnerados debido a la solución de los problemas matemáticos en que se están basada la seguridad de estos, razón que ha motivado la búsqueda de alternativas que ofrezcan mayor seguridad. En la literatura se han propuesto varios esquemas de seguridad o criptosistemas utilizando estructuras matemáticas tales como anillos conmutativos y no conmutativos, en (Huaqun Wang, Futai Zhang, & Yanfei Sun, 2009) proponen un criptosistema para realizar autentificación por medio de anillos, el sistema que usan consiste en realizar varias posibles firmas, donde todas parecen ser la real, pero solo la persona con la información necesaria puede realizar las operaciones dentro del anillo y autentificarse. Por otro lado, en (Du & Bai, 2016) el autor propone una mejora a un sistema basado en anillos, definiendo polinomios y aplicándoles una transformación NTT (Number Theoretic Transform)..

(21) 12. Una ventaja de usar teoría de anillos es poder aplicarlo a otros campos ya explorados, tales como la criptografía de curvas elípticas. En (Hassib, Chillali, & Elomary, 2013) enseñan las propiedades de una curva elíptica sobre un anillo especial de característico 3 y una aplicación en la criptografía, además los autores dicen que en trabajos futuros seguirán estudiando el caso general de estos anillos especiales ya que son de gran interés en la criptografía. Para abordar el desarrollo del criptosistema que se propuso en este trabajo, fue necesario aplicar varias técnicas a fin de garantizar la seguridad, entre ellas están el uso de máscaras y algoritmos de dispersión, los cuales basan su seguridad en un generador de números pseudoaleatorios PRNG (Pseudo Random Number Generator por sus siglas en inglés). Un generador de números pseudoaleatorios fue propuesto en (Min, Zhang, & Zhang, 2013) haciendo uso de un atractor caótico de 3 y 6 dimensiones diseñan un PRNG y demuestran sus propiedades realizando la prueba FIPS 140-2 (Federal Information Processing Standard por sus siglas en ingles). Una de las cualidades más importantes de un PRNG debe ser la velocidad con que calcula números, en (Risqi & Windarta, 2017) explican tres algoritmos , en los cuales usan compuertas lógicas XOR y AND, además realizan la prueba NIST sts-2.1.1, y concluyen que dos de las tres arquitecturas satisfacen las pruebas para funcionar como PRNG. En este trabajo, aprovechando las estrategias descritas en la literatura anterior se presenta un algoritmo para encriptación de imagen y sonido multimedia, utilizando cuaterniones, teoría del caos, anillos no conmutativos, máscaras, generador de números pseudoaleatorios y transformada discreta de Fourier cuaternión, todo esto con el propósito de obtener indicadores de seguridad y rendimiento ajustados a los estándares de la literatura actual..

(22) 13. 1.5. Marco Teórico Antes de entrar en detalle con el esquema de criptografía propuesto del presente documento, conviene definir las bases teóricas que sustentan los diferentes subsistemas del criptosistema. Primero se hablará de las características fundamentales en la seguridad de la información junto con las dos grandes categorías de criptosistemas: los simétricos y asimétricos. A continuación, se definen las bases matemáticas del esquema de encriptación y desencriptación donde se detalla la teoría de cuaterniones y conceptos asociados a la transformada discreta de Fourier tipo cuaternión que son el pilar del criptosistema. En la sección 1.5.3 y 1.5.4 se hablará de estructuras de anillos y sistemas dinámicos caóticos los cuales juegan un papel importante a la hora de generar la clave del criptosistema y la forma en la que ésta se distribuye por medio de un canal inseguro. Finalmente, en la sección 1.5.5 se revisarán algunos conceptos de aleatoriedad y pseudoaletoriedad así como también de los generadores pseudoaleatorios más comunes junto con el generador que se empleará en algunas partes del criptosistema.. 1.5.1. Seguridad de la información y criptosistemas El término seguridad de la información se emplea frecuentemente para describir las tareas del aseguramiento de la confidencialidad de la información en formato digital. Sin embargo no se puede evitar por completo que haya ataques exitosos o garantizar que un sistema sea totalmente seguro. Por eso se deben determinar medidas de protección e implementarlas de manera apropiada para desviar ataques y prevenir el colapso total del sistema cuando un ataque exitoso ocurre..

(23) 14. Existen varios aspectos de protección que deben extenderse a la información, algunos de estos son: Confidencialidad, integridad, disponibilidad, autenticación y no-repudio. . Confidencialidad: Asegura que solo las partes autorizadas puedan tener acceso a la información.. . Integridad: Asegura que la información sea correcta, es decir, evita que personas no autorizadas o software malicioso alteren la información.. . Disponibilidad: Asegura que la información sea accesible a usuarios autorizados.. . Autenticación: Asegura que el individuo es aquél quien dice ser y no un impostor.. . No-repudio: Es el proceso de validar que un usuario ejecuta una acción, por ejemplo, enviar un correo electrónico. El no-repudio previene que un individuo fraudulento niegue una acción que ha cometido.. Para garantizar la protección de la información existen mecanismos que son combinaciones complejas de hardware y software y que se usan junto a una clave para transformar información en una serie de caracteres incomprensibles, lo cual hace parte del estudio de la criptografía. En la criptografía, existen dos tipos de cifrados o criptosistemas: simétricos y asimétricos Criptosistemas simétricos. Los algoritmos originales para encriptar y desencriptar información se basaron en criptosistemas simétricos. Este tipo de criptosistema, emplea la misma clave para encriptar y desencriptar un documento. Es por esta razón, que es esencial que la clave utilizada se mantenga privada, pues si un atacante la obtiene, tendrá acceso también a los documentos encriptados. De esta manera, los criptosistemas simétricos también reciben el nombre de criptosistemas de clave.

(24) 15. privada. Este tipo de criptosistemas pueden proveer una fuerte protección ante ataques mientras la clave se mantenga segura. Las características de protección que proveen los criptosistemas simétricos se resumen en la tabla 2: Tabla 2 Características criptosistema simétrico. Fuente: (Ciampa, 2014) Característica ¿Protección? Confidencialidad. Si. Integridad. Si. Disponibilidad. Si. Autenticidad. No. No-repudio. No. Entre los algoritmos simétricos más populares se pueden encontrar: . Data Encryption Standard (DES): DES es un cifrador de bloque. Divide el texto plano en bloques de 64-bits y luego ejecuta el algoritmo 16 veces. Pese a que DES fue alguna vez ampliamente usado, su clave de 56-bits ya no es considerada segura y ha sido vulnerado muchas veces. Hoy en día no es recomendado su uso.. . Triple DES (3DES): Fue diseñado para reemplazar DES. 3DES usa tres rondas de encriptación en vez de una sola. El texto cifrado de una ronda se convierte en la entrada completa para la segunda iteración. 3DES emplea un total de 48 iteraciones en su encriptación. Las versiones más seguras de 3DES usan diferentes claves para cada ronda, sin embargo, su implementación funciona mejor en hardware que software..

(25) 16. . Advanced Encryption Standard (AES): Es un cifrador simétrico aprobado por el National Institute of Standards and Technology (NIST) a finales del año 2000 como reemplazo de DES. AES ejecuta 3 pasos en cada bloque de 128 bits de texto plano. En el paso 2, se aplican múltiples rondas y se ejecutan dependiendo del tamaño de la clave. Con cada ronda, los bytes son sustituidos y reorganizados, para luego ejecutar una multiplicación especial basada en la nueva organización. Al día de hoy, ningún ataque ha sido exitoso contra AES.. Criptosistemas asimétricos Este tipo de criptosistema emplea dos claves en lugar de una. Estas claves son matemáticamente relacionadas y son conocidas como clave privada y clave pública. La clave pública es conocida y puede ser distribuida libremente, mientras que la clave privada es solo conocida por el receptor. La clave pública se emplea para encriptar los mensajes, mientras que la clave privada es usada para desencriptar los mensajes. Tabla 3 Características criptosistema asimétrico. Fuente: (Ciampa, 2014) Característica ¿Protección? Confidencialidad. Si. Integridad. Si. Disponibilidad. Si. Autenticidad. Si. No-repudio. Si. Este tipo de criptosistemas son muy populares a la hora de generar firmas digitales con las que se verifica la identidad de las personas que envían y reciben los mensajes. Gracias a esto,.

(26) 17. una firma digital permite identificar el remitente del mensaje, previene que los destinatarios repudien el mensaje y provee integridad de éste. Las características de protección que proveen los criptosistemas simétricos se resumen en la tabla 3. Entre los algoritmos asimétricos más populares se pueden encontrar: . RSA: Publicado en 1977 y patentado por el Massachusetts Institute of Technology (MIT) en 1983. RSA es el criptosistema asimétrico más común y ha sido utilizado en varios ámbitos. En el algoritmo RSA se aprovecha del hecho de la dificultad de factorizar números primos muy grandes por lo que lo hace más seguro. Sin embargo, RSA es más lento que otros algoritmos. Por ejemplo, DES es aproximadamente 100 veces más rápido que RSA en software y entre 1000 y 10000 veces más rápido en hardware.. . Criptografía de curva elíptica (ECC): Propuesto a mediados de los años 80. En vez de emplear números primos muy largos como RSA, la criptografía de curva elíptica usa curvas inclinadas. Una curva elíptica es una función dibujada sobre el plano X-Y como una curva suave. Al sumar los valores de dos puntos en la curva, se puede obtener un tercer punto. Con ECC los usuarios comparten una curva elíptica y un punto en la curva. El emisor escoge un número secreto aleatorio y calcula una clave pública basada en un punto de la curva y el receptor ejecuta el mismo procedimiento. Luego pueden intercambiar mensajes puesto que las claves públicas compartidas pueden generar una clave privada en una curva elíptica. ECC es empleado como un criptosistema asimétrico en dispositivos inalámbricos y móviles, puesto que estos dispositivos están limitados en términos de poder computacional dado su tamaño..

(27) 18. . NTRUEncrypt: Es un algoritmo asimétrico reciente que usa un concepto muy diferente al de RSA y ECC. En este caso, emplea criptografía basada en retículos que dependen de un conjunto de puntos en el espacio. El reciente criptosistema además de ser más rápido que RSA y ECC, se cree que será más resistente a los ataques de computación cuántica. Este criptosistema ha sido aprobado en la industria de los servicios financieros, en la actualidad se emplea para encriptar información de las tarjetas de crédito de los clientes.. . Criptografía cuántica: La criptografía cuántica trata de usar el comportamiento inusual y único de objetos microscópicos para permitir que los usuarios puedan generar de manera segura claves compartidas.. Para obtener más información sobre la seguridad de la información y criptosistemas se puede consultar la referencia (Ciampa, 2014). 1.5.2. Cuaterniones y transformada discreta de Fourier. En el año 1843 el matemático William Rowan Hamilton, formuló un nuevo conjunto de números a partir de los números complejos, que dio origen a la teoría de cuaterniones, es por tal razón que es considerado padre de esta teoría (Sánchez Muñoz, 2011). El conjunto de cuaterniones 𝐻𝚤 se define a partir de las tres unidades imaginarias 𝑖, 𝑗, 𝑘 teniendo en cuenta las operaciones algebraicas definidas en la ecuación 1: 𝑖𝑗 = −𝑗𝑖 = 𝑘 𝑗𝑘 = −𝑘𝑗 = 𝑖 𝑘𝑖 = −𝑖𝑘 = 𝑗 𝑖 = 𝑗 = 𝑘 = 𝑖𝑗𝑘 = −1. (1).

(28) 19. A partir de las cuales se define un elemento cuaternión 𝑞 ∈ 𝐻, de la forma dada en la ecuación 2: 𝑞 = 𝑎 + 𝑖𝑏 + 𝑗𝑐 + 𝑘𝑑,. 𝑎, 𝑏, 𝑐, 𝑑 ∈ ℝ. (2). Alternativamente se puede notar el cuaternión 𝑞 como se muestra en la ecuación 3: 𝑞 = (𝑎, 𝑣). (3). Siendo 𝑣 el vector 𝑣 = (𝑏, 𝑐, 𝑑); 𝑎 y 𝑣 se llaman parte real y parte vectorial del cuaternión, respectivamente. Si la parte escalar del cuaternión es cero, este se conoce como un cuaternión puro. Dados dos números cuaterniones 𝑝 = 𝑝 + 𝑖 𝑝 + 𝑗 𝑝 + 𝑘 𝑝 = (𝑝 , 𝑣) 𝜖 𝐻, 𝑣 = (𝑝 , 𝑝 , 𝑝 ), 𝑞 = 𝑞 + 𝑖 𝑞 + 𝑗 𝑞 + 𝑘 𝑞 = (𝑞 , 𝑤) 𝜖 𝐻, 𝑤 = (𝑞 , 𝑞 , 𝑞 ). Se define la suma o resta como se representa en la ecuación 4: 𝑝 ± 𝑞 = (𝑝 ± 𝑞 ) + 𝑖 (𝑝 ± 𝑞 ) + 𝑗 (𝑝 ± 𝑞 ) + 𝑘 (𝑝 ± 𝑞 ). (4). Y el producto por medio de la expresión dada en la ecuación 5. 𝑝𝑞 = (𝑝 𝑞 − 𝑝 𝑞 − 𝑝 𝑞 − 𝑝 𝑞 ) +𝑖 (𝑝 𝑞 + 𝑞 𝑝 + 𝑝 𝑞 − 𝑝 𝑞 ) +𝑗 (𝑞 𝑝 + 𝑝 𝑞 + 𝑝 𝑞 − 𝑝 𝑞 ). (5). +𝑘 (𝑞 𝑝 + 𝑝 𝑞 − 𝑝 𝑞 + 𝑝 𝑞 ) La expresión anterior puede reducirse a la ecuación 6: 𝑝𝑞 = 𝑝 𝑞 − 𝑣. 𝑤 + 𝑝 𝑤 + 𝑞 𝑣 + 𝑣 × 𝑤. (6). Donde los símbolos ⋅ y ×, denotan el producto punto y vectorial definido en ℝ . El conjunto de todos los cuaterniones con operaciones de adición y multiplicación definen un anillo, o más explícitamente un anillo de división no-conmutativo. Esto quiere decir que cualquier cuaternión diferente de cero tiene una inversa y que el producto de cuaterniones en general, es.

(29) 20. no-conmutativo, Se puede establecer una correspondencia entre el espacio vectorial ℝ y el espacio de cuaterniones puros como se muestra en la figura 1.. Figura 1. Correspondencia vector - cuaternión. Fuente: (Kuipers, 2000). De forma similar al álgebra de números complejos se define el conjugado, la norma, el inverso y la exponencial de un cuaternión como sigue: Complejo conjugado El complejo conjugado del cuaternión 𝑞 = 𝑞 + 𝑖 𝑞 + 𝑗 𝑞 + 𝑘 𝑞 se denota como en la ecuación 7: q=𝑞 −𝑖𝑞 −𝑗𝑞 −𝑘𝑞. (7). Y cumple lo expresado en la ecuación 8: pq = qp. y. p𝑞 = qp. Producto punto entre cuaterniones Si 𝑝 = 𝑝 + 𝑖 𝑝 + 𝑗 𝑝 + 𝑘 𝑝 = (𝑝 , 𝑣) 𝜖 𝐻, 𝑣 = (𝑝 , 𝑝 , 𝑝 ) y 𝑞 = 𝑞 + 𝑖 𝑞 + 𝑗 𝑞 + 𝑘 𝑞 = (𝑞 , 𝑤) 𝜖 𝐻, 𝑤 = (𝑞 , 𝑞 , 𝑞 ) Se define el producto punto entre cuaterniones como se aprecia en la ecuación 9:. (8).

(30) 21. (9). 𝑝⋅𝑞 =𝑝 𝑞 +𝑝 𝑞 +𝑝 𝑞 +𝑝 𝑞 Norma cuaternión. La norma de un cuaternión 𝑞 se denota por el escalar 𝑁(𝑞) especificado en la ecuación 10: 𝑁(𝑞) =. 𝑞 ⋅ 𝑞 ó 𝑁 (𝑞) = 𝑞 ⋅ 𝑞. (10). Un cuaternión con norma igual a uno se conoce como un cuaternión unitario, tal y como se aprecia en la ecuación 11: |𝑞| = |q| = 1 y 𝑁 (𝑞) = 𝑞 ⋅ 𝑞 = 1. (11). Inversa de un cuaternión Por definición de inversa se tiene la propiedad de la ecuación 12: 𝑞. 𝑞 = 𝑞𝑞. = 1.. (12). Por lo que el inverso de un cuaternión se define como en la ecuación 13: 𝑞. =. q |𝑞|. (13). Además, si 𝑞 es un cuaternión unitario, entonces se cumple la propiedad de la ecuación 14: 𝑞. =q. (14). Al emplear la forma de la inversa de cuaterniones, es posible definir el cociente entre dos cuaterniones como se aprecia en la ecuación 15: 𝑝 𝑝q = ,𝑞 ≠ 0 𝑞 |𝑞|. (15).

(31) 22. De forma análoga a la exponencial compleja para números complejos, se define la exponencial del cuaternión 𝑞 = (𝑞 , 𝑞 , 𝑞 , 𝑞 ) como en la ecuación 16:. 𝑒 =𝑒. = 𝑒 [𝑐𝑜𝑠 𝑞. +𝑞. +𝑞. +. 𝑠𝑒𝑛 𝑞 𝑞. +𝑞 +𝑞. +𝑞 +𝑞. .. (𝑖 𝑞 + 𝑗 𝑞 + 𝑘 𝑞 )]. (16). En general un cuaternión 𝑝 = 𝑝 + 𝑖 𝑝 + 𝑗 𝑝 + 𝑘 𝑝 se puede descomponer utilizando dos planos perpendiculares los cuales se intersectan solo en el origen del espacio cuatridimensional, cada uno de estos planos puede ser interpretado como un plano complejo, es decir, se usan un par de ejes ortogonales 𝜇 y 𝜇 para expresar el cuaternión p en la forma de la ecuación 17: 𝑝 = 𝑝′ + 𝜇 𝑝′ + 𝜇 𝑝′ + 𝜇 𝑝′. (17). Donde 𝜇 =𝜇 𝜇 𝑝 = 𝑠(𝑝) + 𝑣(𝑝) 𝑠(𝑝) = 𝑝′ 𝑣(𝑝) = 𝜇 𝑝′ + 𝜇 𝑝′ + 𝜇 𝑝′ 𝑝′ = 𝑝 𝑝′ = 𝑣(𝑝) ⋅ 𝜇 𝑝′ = 𝑣(𝑝) ⋅ 𝜇 𝑝′ = 𝑣(𝑝) ⋅ 𝜇 Siendo 𝑠(𝑝)y 𝑣(𝑝)las partes real y vectorial del cuaternión 𝑝 respectivamente, de esta forma el cuaternión 𝑝 se puede reescribir como en la ecuación 18: 𝑝 = (𝑝′ + 𝜇 𝑝′ ) + (𝑝′ + 𝜇 𝑝′ )𝜇 Lo cual se puede sintetizar por medio de la ecuación 19:. (18).

(32) 23. (19). 𝑝=𝑎+𝑏𝜇 Con 𝑎 = 𝑝′ + 𝜇 𝑝′ y 𝑏 = 𝑝′ + 𝜇 𝑝′ las cuales se llaman parte simple y parte perpleja del cuaternión 𝑝 respectivamente. Esta forma de representación de un cuaternión es conocida como descomposición simpléctica del cuaternión y es utilizada para definir la. transformada discreta de Fourier cuaternión en términos de la transformada discreta compleja (Ell & Sangwine, 2000). Dado un arreglo rectangular 𝑓(𝑚, 𝑛) de tamaño 𝑀𝑋𝑁, se definen el par de transformadas de Fourier discretas por medio de las ecuaciones 20 y 21:. 𝑓(𝜇, 𝑣) =. 1 √𝑀𝑁. 𝑓(𝑚, 𝑛) =. 1 √𝑀𝑁. 𝑓(𝑚, 𝑛)𝑒. 𝐹(𝜇, 𝑣)𝑒. (20). (21). Siendo 𝜇 = 0,1,2, . . . , 𝑁 − 1 y 𝑣 = 0,1,2, . . . , 𝑀 − 1. Si por el contrario 𝑓(𝑚, 𝑛) representa un arreglo rectangular de cuaterniones, utilizando la descomposición en forma simpléctica se tiene una expresión como la de la ecuación 22: 𝑓(𝑚, 𝑛) = 𝑐 (𝑚, 𝑛) + 𝑐 (𝑚, 𝑛)𝜇. (22). Donde 𝑐 (𝑚, 𝑛) y 𝑐 (𝑚, 𝑛) están dadas por las ecuaciones 23 y 24 respectivamente: 𝑐 (𝑚, 𝑛) = 𝑝 ′(𝑚, 𝑛) + 𝜇 𝑝′ (𝑚, 𝑛). (23). 𝑐 (𝑚, 𝑛) = 𝑝 ′(𝑚, 𝑛) + 𝜇 𝑝′ (𝑚, 𝑛). (24). De esta forma se define el par de transformadas cuaternión por medio de las ecuaciones 25 y 26.

(33) 24. 𝐹(𝜇, 𝑣) =. 1 √𝑀𝑁. =. +. (. (𝑐 (𝑚, 𝑛) + 𝑐 (𝑚, 𝑛)𝜇 )𝑒. 1. 𝑐 (𝑚, 𝑛)𝑒. √𝑀𝑁. ). (25). 1. 𝑐 (𝑚, 𝑛)𝜇 𝑒. √𝑀𝑁. 𝑓(𝑚, 𝑛) =. (. ). 1. (. 𝐹(𝜇, 𝑣)𝑒. √𝑀𝑁. ). (. ). (26). Cabe resaltar que el par de transformadas discretas de Fourier Cuaternión que se han definido aquí, son llamadas transformadas derechas, de manera similar se definen las transformadas discretas izquierdas y bilateral (Khalil, 2017). Para consultar más información sobre la teoría de cuaterniones y transformada discreta de Fourier cuaternión pueden consultarse las referencias (Kuipers, 2000), (Gómez-mont, 2010) y (Ell & Sangwine, 2000). 1.5.3. Estructuras de anillos Sea A un conjunto no vacío y dos operaciones internas, usualmente llamadas suma (+) y producto (. ). La terna (𝐴, + , . ) es un anillo si y sólo si I.. (𝐴, + ) es un grupo abeliano.. II.. (𝐴, . ) es un grupo cerrado.. III.. La operación . es asociativa. IV.. Las siguientes leyes distributivas de las ecuaciones 27 y 28 aplican para todo 𝑎, 𝑏, 𝑐 ∈ 𝐴 𝑎(𝑏 + 𝑐) = 𝑎𝑏 + 𝑎𝑐. (27). (𝑏 + 𝑐)𝑎 = 𝑏𝑎 + 𝑐𝑎. (28).

(34) 25. V.. A podría o no tener un elemento identidad bajo . y podría o no tener elementos inversos bajo . Un anillo (𝐴, + , . ) es conmutativo si ∀𝑎, 𝑏 ∈ 𝐴 ⇒ 𝑎. 𝑏 = 𝑏. 𝑎 Por lo tanto, el anillo será no conmutativo si ∃ 𝑎, 𝑏 ∈ 𝐴 ∶ 𝑎. 𝑏 ≠ 𝑏. 𝑎 Un anillo (𝐴, + , . ) es un anillo con identidad o unidad si existe un elemento neutro o. identidad multiplicativa, denotado con 1, tal que 𝑎. 1 = 1. 𝑎 = 𝑎 ∀𝑎 ∈ 𝐴 Si 𝐴 es un anillo con identidad de 1 bajo . , entonces se dice que un elemento de 𝑎 es un inverso de 𝑎 ∈ 𝐴 si 𝑎𝑎. de 𝐴. =1=𝑎 𝑎. Un anillo con identidad es un anillo de división si sus elementos no nulos son invertibles. Es decir ∀𝑎 ∈ 𝐴: 𝑎 ≠ 0 ∃ 𝑥, 𝑦 ∈ 𝐴: 𝑎. 𝑥 = 1 ∧ 𝑦. 𝑎 = 1 Algunos ejemplos de anillos que se enuncian en (Russ, 1992) son: . Cada uno de los conjuntos ℤ, ℝ y ℂ son anillos conmutativos con identidad bajo las operaciones de suma y producto.. . Sea 𝑛 ≥ 2 un entero, el conjunto ℤ = {0,1, … , 𝑛 − 1} de enteros 𝑚𝑜𝑑 𝑛. En este anillo se tiene que 𝑎𝑏 = 𝑝 y 𝑎 + 𝑏 = 𝑠 sí y solo sí 𝑝 y 𝑞 son enteros distintos con 0 ≤ 𝑝, 𝑞 ≤ 𝑛 − 1 y 𝑎𝑏 ≡ 𝑝 mod n, 𝑎 + 𝑏 ≡ 𝑞 mod n. . Sea 𝑛 ≥ 2 un entero. El conjunto de matrices 𝑛 × 𝑛 con valores en ℝ, es un anillo con identidad bajo la suma y producto de matrices. La identidad es la matriz idéntica 𝑛 × 𝑛 y el elemento cero es la matriz nula de 𝑛 × 𝑛. El presente anillo no es conmutativo.. . El conjunto de todos los enteros pares forma un anillo conmutativo bajo las correspondientes operaciones de adición y producto de enteros. Sin embargo, este anillo no cuenta con una identidad..

(35) 26. . El álgebra Booleana se convierte en un anillo conmutativo cuando la adición y la multiplicación se definen mediante las ecuaciones 29 y 30: 𝑎 + 𝑏 = (𝑎 ∧ 𝑏′) ∨ (𝑎 ∧ 𝑏). (29). 𝑎. 𝑏 = 𝑎 ∧ 𝑏. (30). Por otro lado, como se presentó en la sección 1.5.2, el primer anillo de división no conmutativo fue el anillo de los cuaterniones. La importancia de destacar la no conmutatividad de un anillo de división radica en el teorema de Wedderburn que establece que todo anillo de división finito es conmutativo. Luego, disponer de infinitos elementos en el anillo a utilizar, éste agregará mayor complejidad a la resolución del algoritmo de cifrado (Kamlofsky & Hecht, 2015). Para el caso particular del presente esquema de encriptación, los anillos no conmutativos juegan un papel importante en la forma de distribuir los parámetros iniciales de las claves del criptosistema lo cual se describirá detalladamente en la sección 2.2. 1.5.4. Sistemas dinámicos caóticos El precursor de la teoría de los sistemas dinámicos fue Henri Poincaré (1854-1912) es él quien se interesa por el estudio del comportamiento cualitativo de las ecuaciones diferenciales, por lo cual se puede considerar que el enfoque de la teoría de los sistemas dinámicos se centra en el análisis cualitativo de fenómenos que varían a través de la evolución del tiempo, lo que puede dar origen a sistemas con comportamiento complejo. Poincaré asumía que un sistema dinámico estaba compuesto por un campo de vectores en un conjunto llamado espacio de fases y que una solución en este sistema dinámico es una curva tangente en cada punto a los vectores de dicho campo, y trataba de describir el conjunto de soluciones lo que actualmente se conoce como retrato de fase. En su evolución histórica los sistemas dinámicos han permeado muchas áreas del.

(36) 27. conocimiento tales como física, biología, economía, medicina, sociales e ingeniería entre otras, algunos de los matemáticos que se han destacado en este campo son Arnold, Andronov, Birkhoff, Kolmogorov, Liapunov, Lorenz, Moser o Smale entre otros, los cuales han contribuido a sustentar con rigor científico el comportamiento de muchos problemas de diversas áreas del conocimiento, todo esto de la mano del avance de los computadores. Los sistemas dinámicos en general pueden ser de tipo continuo o discreto y se modelan por medio de ecuaciones diferenciales o ecuaciones en diferencias finitas o iteradas de una función, además pueden ser lineales o no lineales, dependiendo de si se satisface o no el principio de superposición. Cuando se está en presencia de sistemas dinámicos no lineales, es posible que se generen comportamientos que se enmarcan dentro de lo que en la actualidad se conoce como teoría del caos. La definición de sistema dinámico caótico que se adopta en este trabajo fue propuesta en el año 1.986 por Robert Devaney y se sintetiza así: Sea (𝑋, 𝑑) un espacio métrico sin puntos aislados, un sistema dinámico 𝑓: 𝑋 → 𝑋, se dice que es caótico si presenta las siguientes tres propiedades: a) 𝑓 tiene dependencia sensible de las condiciones iniciales. Es decir, existe algún. 𝛿 >. 0 tal que, para todo 𝑥 ∈ 𝑋 y 𝜀 > 0, existe 𝑦 ∈ 𝑋 con 𝑑(𝑥, 𝑦) < 𝜀 tal que, para algún 𝑛 ≥ 0, 𝑑(𝑓 (𝑥), 𝑓 (𝑦) ) > 𝛿. La expresión 𝑓 describe la composición de 𝑓 consigo misma 𝑛 veces b) 𝑓 tiene un conjunto denso de puntos periódicos en 𝑋. 𝑐 es un punto periódico de 𝑓 de periodo 𝑘 ∈ 𝑁, 𝑘 ≥ 2, si 𝑓 (𝑐) = 𝑐 y 𝑓 (𝑐) ≠ 𝑐 para 0 < 𝑝 < 𝑘. c) 𝑓 es topológicamente transitiva. Esto es, para todo par 𝑈, 𝑉 subconjuntos de 𝑋 abiertos y no vacíos, existe 𝑛 ≥ 0 tal que: 𝑓 (𝑈) ∩ 𝑉 ≠ ∅..

(37) 28. El caos es un comportamiento aperiódico y sensible a las condiciones iniciales presente en un sistema a medida que evoluciona en el tiempo, lo cual se enmarca dentro de lo que en la literatura de los sistemas dinámicos se conoce como existencia de un atractor extraño y surge por ejemplo cuando varios ciclos límites y puntos fijos del sistema tipo silla se encuentran. Una medida del caos se basa en los exponentes de Lyapunov, los cuales a la larga lo que miden es la tasa de divergencia exponencial que se genera entre las órbitas de un sistema dinámico con una condición dada y una pequeña perturbación de ésta. Uno de los problemas que dio origen al estudio de la teoría del caos es debido al matemático y meteorólogo Edward Lorenz, quien en un intento por describir el comportamiento del clima y otros fenómenos atmosféricos propuso un modelo matemático, encontrando algo sorprendente para la época, cuando variaba las condiciones iniciales en rangos muy pequeños, para simular las trayectorias del sistema se generaban retratos de fase bastante diferentes, hecho que dio origen a lo que en la actualidad se conoce como efecto mariposa, y el sistema propuesto por él es conocido en la literatura matemática como Atractor de Lorenz. A lo largo del estudio de la teoría de sistemas dinámicos caóticos se han encontrado muchos atractores que se enmarcan en esta línea, algunos derivados de modelos matemáticos bastante sencillos, como por ejemplo el caso del atractor generado por la función logística, la cual surgió para modelar un fenómeno biológico, o los atractores generados por la función tienda o la función de Henón los cuales se definen de manera simple a través de una función unidimensional. Otro sistema caótico generado a partir de la iteración de la función cuadrática en el campo de los complejos 𝑓(𝑧) = 𝑧 + 𝑐, siendo c un parámetro arbitrario, se conoce como conjunto de Julia en honor al matemático Gaston Julia. Dicho conjunto está formado por todos.

(38) 29. los puntos que bajo la iteración de la función 𝑓, presentan un comportamiento caótico, éste tiene una estructura fractal. El conjunto de Julia se puede generalizar para cualquier función holomorfa (analítica en todo su dominio) que actúe en un espacio de 2 o más dimensiones, también se puede obtener a partir de cuaterniones, una muestra de esto se aprecia en la figura 2. Se resalta el hecho que la teoría de sistemas dinámicos caóticos en las últimas décadas ha tenido un avance significativo, gracias a la evolución de la tecnología, hecho fundamental para la ejecución de este trabajo.. Figura 2. Corte transversal conjunto de Julia cuaternión. Fuente: (Anand et al., 2009). Otros atractores caóticos conocidos son el atractor de Duffing (Georg Duffing), que describe el movimiento de una partícula clásica dentro de un potencial, el oscilador de Van der Pol (Balthasar van der Pol), el cual tiene amortiguamiento no lineal. Fusionando estos dos atractores se define el atractor Duffing-van der Pol, el cual exhibe un comportamiento dinámico más complejo que los dos atractores considerados de manera independiente. Además, está el atractor caótico de Rossler (Otto Rossler) es un sistema no lineal de tres ecuaciones diferenciales planteado a partir del sistema de Lorenz, para modelar la concentración de alguna sustancia química, buscando desde luego obtener un modelo sencillo, que resultó con un comportamiento igualmente caótico..

(39) 30. De otra parte, se puede mencionar el atractor cat de Arnold (Vladimir Arnold), el cual surgió a partir de una transformación definida del toro en sí mismo, Arnold, utilizó como base la imagen de un gato, y mostró que tenía características que se enmarcaban dentro del caos, pero que se podía evolucionar del orden al caos, ya que iterando varias veces la función se observaba que la imagen se iba distorsionando bastante y sin embargo en la iterada número 300, se volvía a recuperar la imagen original como se muestra en la figura 3. Estos son algunos atractores caóticos conocidos, pero en realidad existen muchos más, y todos ellos, aunque exhiben caos, su complejidad no es la misma, por mencionar un aspecto, la complejidad de los sistemas dinámicos caóticos unidimensionales es menor que la que se presenta en los sistemas caóticos de dos o más dimensiones.. Figura 3. Iteradas de la función cat de Arnold. Fuente: (Rocchini, 2006).

(40) 31. De hecho, históricamente, cuando se empezaron a presentar los comportamientos extraños en ciertos sistemas no lineales, que en la actualidad se enmarcan dentro de la teoría del caos, estas situaciones eran incómodas, pero con el paso del tiempo, y con el avance de la tecnología, se ha podido aprovechar la potencialidad de los sistemas caóticos para describir o modelar situaciones de otras ramas del conocimiento. En las referencias (Alligood, Sauer, & Yorke, 1996) y (Devaney, 1948) se puede consultar más a fondo los fundamentos de los sistemas dinámicos caóticos. El propósito en este trabajo es utilizar las propiedades inherentes a los atractores caóticos tales como sensibilidad, pseudoaleatoriedad, y densidad de sus órbitas periódicas, para proponer un esquema de generación de clave a partir del uso de un atractor caótico y consolidar un modelo de encriptación de archivos multimedia utilizando además la matemática de los cuaterniones, todo esto es posible gracias a la similitud que existe entre las propiedades de los sistemas dinámicos caóticos y las propiedades de permutación y difusión de los sistemas criptográficos. 1.5.5. Aleatoriedad Y Pseudoaleatoriedad Muchos esquemas criptográficos tienen sus bases en la aleatoriedad de la generación de claves, para ello se necesita un generador de números aleatorios o RNG en sus siglas en inglés. El propósito de la información aleatoria es que sea impredecible para un atacante, incluso si éste realiza pasos con el fin de romper la aleatoriedad. Sin embargo, generar números aleatorios es muy desafiante, incluso en un mundo ideal donde se emplea información “aleatoria real”. Las computadoras cuentan con mecanismos para generar información aleatoria, pero en muchos de los casos esta información puede ser predecible o influenciada por un atacante para derrotar el mecanismo de aleatoriedad. Existen varias dificultades al emplear información aleatoria real, la primera es la dificultad de generarla, la segunda es que fuentes aleatorias reales, tales como generadores de números.

(41) 32. aleatorios basados en fenómenos físicos se pueden romper, quizá el generador será predecible en ciertas formas, y lo peor de todo es que no hay forma de determinar cuándo se romperá. Y un tercer problema consiste en determinar qué tanta entropía se puede extraer de un evento físico, a menos de que se cuente con un hardware dedicado para el generador de información aleatoria, es extremadamente difícil determinar qué tanta entropía se obtiene con el mecanismo. Es por ello que una alternativa de la información aleatoria real es usar información pseudoaleatoria. Este tipo de información es generada a partir de una semilla por un algoritmo determinístico. Si se conoce la semilla, se puede predecir la información aleatoria. Tradicionalmente los generadores de información pseudoaleatoria o PRNGs en sus siglas en inglés, no son muy seguros contra un adversario inteligente. Estos generadores están diseñados para eliminar artefactos estadísticos, no para contener un atacante inteligente (Ferguson, Schneier, & Kohno, 2010). 𝐷ado 𝑋 un conjunto finito de estados, un PRNG es un algoritmo basado en una estructura de la forma (X, x , T, U, G), donde 𝑥 es la semilla, U es el conjunto finito de posibles observaciones, 𝑇 y 𝐺 son las funciones de transición y salida respectivamente (Pulido, 2008), es decir: 𝑇: 𝑋 → 𝑋 ; 𝐺: 𝑋 → 𝑈. El periodo 𝜌 del generador es la cantidad de números aleatorios que pueden ser mapeados antes de que la secuencia de números se repita (Grun & Rotter, 2010). En (Brent, 2006) se listan los siguientes requerimientos para un buen PRNG: . Uniformidad: Los números generados (𝑥 , 𝑥 , …) deben ser distribuidos uniformemente sobre 𝑋.. . Independencia: Cualquier subsecuencia de la secuencia completa (𝑥 , 𝑥 , …) de los números aleatorios deben ser estadísticamente independiente..

(42) 33. . Periodo extenso: Para un PRNG con periodo 𝜌, se debería mapear a lo mucho 𝜌. . /. números aleatorios. Inicialización: Cualquier elección de una semilla debe arrojar números aleatorios similares.. . Salto: Algunos PRNG proveen la posibilidad de saltar a una posición específica de la secuencia.. . Repetibilidad: Especialmente cuando se hacen simulaciones de debugging, es crucial que la misma secuencia de números aleatorios pueda ser generada una y otra vez.. . Portabilidad: Un PRNG debe producir exactamente la misma secuencia de números aleatorios para cualquier computadora en la que se ejecute.. . Eficiencia: PRNGs deben consumir el menor tiempo posible del total de la simulación.. . Impredecibilidad: Una verdadera secuencia de números aleatorios es impredecible.. Algunos de los PRNGs más conocidos que se mencionan en (Grun & Rotter, 2010) son: Generadores basados en recurrencias Se definen a partir de una semilla dada y una relación de recurrencia de la forma de la ecuación 31. 𝑥 = 𝑇(𝑥. ). (31). La cual proporciona números pseudoaleatorios 𝑢 definidos a partir de la relación presentada en la ecuación 32. 𝑢 = 𝑔(𝑥 ). (32). Por el hecho de ser 𝑋 finito, la sucesión de estados es periódica y dicho periodo no puede exceder el cardinal del espacio de estados 𝑋. Este tipo de generador tiene un factor limitante, ya.

Referencias

Documento similar