Instituto Politécnico Nacional CENTRO DE INNOVACIÓN Y DESARROLLO TECNOLÓGICO EN CÓMPUTO CIFRADO DE AUDIO POR MEDIO DEL ALGORITMO TRIPLE-DES-96 TESIS Que para obtener el grado de Maestría en Tecnología de Cómputo PRESENTA: Erick Armando Hernández Díaz Dr. Víctor Manuel Silva García Directores de Tesis: Dr. Rolando Flores Carapia Ciudad de México. Julio, 2016. ii iii Resumen La información tiene un valor intrínseco, el cual puede ser mayor o menor dependiendo de su contenido. Así mismo, puede ser expresada en forma oral, escrita o visual, y puede ser almacenada en formatos de texto, audio y vídeo o combinaciones de cualquiera de ellas. Una de las metas principales de la criptografía es mantener segura la información, específicamente de aquellas personas que deseen obtenerla con fines no éticos. Para esto, se han desarrollado a lo largo del tiempo, algoritmos y sistemas de cifrado, que casi siempre han sido capaces de ser una solución. Sin embargo, conforme la tecnología evoluciona, esta tarea se vuelve más compleja, por lo cual, es importante desarrollar innovaciones que permitan a la criptografía cumplir con su meta. Esta tesis está enfocada en el campo de la criptografía y su objetivo principal es mostrar la implementación de un sistema de cifrado. En específico, se propone un método de cifrado de audio, el cual será sin compresión para evitar perder información del mensaje original. Para implementarlo se utilizará el algoritmo Triple-DES-96 debido a que es más rápido que Triple DES, lo cual se abordará en el transcurso del trabajo de tesis. La programación será a través del lenguaje C++, debido a su compatibilidad con los sistemas operativos más utilizados, sin necesitar de una máquina virtual, como si es requerido en otros (más populares) como C# o Java. Por último, la aplicación será dotada de una interfaz gráfica por medio del IDE C++ Builder. debido a la alta compatibilidad con C++ estándar. Éste trabajo de tesis pretende ser una nueva alternativa, y cumplirá con los objetivos y características que serán expuestos más adelante. Se busca que este trabajo sea el inicio, para el desarrollo de otros sistemas de cifrados y también para crear conciencia de la necesidad de seguir creando alternativas que sean capaces de hacer frente a las problemáticas de los tiempos modernos. iv Abstract Information has an intrinsic value, which can be greater or smaller depending of its content. So, can be expressed in orally, in writing or also in visually, and can be stored in different formats like audio, video or combinations of any of them. One of main goals of cryptography is keeping secure the information, specifically, of those who want to get it with unethical purposes. For this reason, it has developed through time, algorithms and cryptosystems, which mostly have been a solution. However, as technology evolves this work is increasingly complex, whereby, it is important to develop capable innovations to get the cryptography’s main objective. This thesis is focused on cryptography field and its main goal is to show the implementation of a cryptosystem. In specific, an audio encryption method is proposed, which will be uncompressed to avoid having information lost from original message. For the software implementation will be used Triple-DES-96 because is fastest than Triple DES, this affirmation will be explicated along the thesis work. It will be developed through programming language C++, because it's compatible with the operating systems most used, and also because doesn't need a virtual machine, unlike others (most popular) like C# or Java. For the last, it will be provided of a graphic interface by means of C++ Builder IDE, because it's compatible with standard C++. The aim of this thesis is to become a new alternative, and achieving the objectives and features that will be discussed below. It is intended that this work to become an inspiration, to develop other cryptosystems also to raise awareness about the necessity to develop new alternatives that can be able to face current problems. v Agradecimientos A Dios Gracias a su misericordia he logrado llegar a donde estoy, no soy nada sin él. A mis padres y mis hermanos. Por creer en lo que hago y apoyarme en todo momento. En especial a mi hermano Luis Fernando quien está con Dios en estos momentos y siempre guardará un lugar importante en mi corazón. A mi tío Luis Díaz Quien me ha ayudado cuando así lo he requerido. A mis directores de tesis Dr. Víctor Manuel Silva García y Dr. Rolando Flores Carapia. Al Instituto Politécnico Nacional, a CIDETEC y al CONACyT Por confiar en mis habilidades y apoyarme para lograr mis objetivos, espero haber correspondido a sus expectativas y seguir haciéndolo en un futuro próximo. vi Índice General Índice de Figuras y Tablas x Simbología xiii Glosario xiv Capítulo 1 Introducción 01 1.1 Contexto …...………………………………………………………………………………………………………..……... 01 1.2 Problemática …………………………………………………………………………….……………………………….. 02 1.3 Justificación ………………………………………………………………………………………………………….……. 02 1.4 Objetivo General …………………………………………………………………………………………………..……. 03 1.5 Objetivos Particulares ……………………………………………………………………………………………..…. 04 1C.a6p Oítruglaon 2iz Aacnitóenc deed elan tteessi s … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … . … . . . 0054 2.1 Evolución de los algoritmos de cifrado ………………………………………………………………………… 05 2.1.1 Algoritmo Atbash ……………………….………………………………………………………………………. 05 2.1.2 Algoritmo Polybius ……………………..……………………………………………………………............... 05 2.1.3 Cifrado de César ……………………….……………………………………………………………………...… 06 2.1.4 Cifrado de Della Porta ………………..…………………………………………………………………..…… 06 2.1.5 Cifrado de Blaise de Vigenère ……..…………………………………………………………………….…. 07 2.2 Dispositivos de cifrado .……….…………………………………………………………………………………...…. 08 2.2.1 La Escitala ………………….…………………………………………………………………………………….,.. 08 2.2.2 Cifrador de Alberti ………………….…………………………………………………………………….……. 08 2.3 Máquinas Criptográficas ...………….………………………………………………………………………….……. 09 2.3.1 Máquinas criptográficas de rotor …..……………………………………………………………….……. 09 2.3.2 La Máquina Enigma ……..…………..…………………………………………………………………….…… 10 2.4 Algoritmos Simétricos ………………….………………………………………………………………………….…. 11 2.5 Estado del Arte ………………………………………………………………………………………………….….….… 11 2.5.1. Algoritmos A3, A4 y A8 …………………………………………..………………..…………………….…… 12 2.5.2 Algoritmo COMP18 …………………………………………………………………………..………..….…… 12 2.5.3 Algoritmo Misty ………………………………………………………………………………………..………...12 2.5.4 Algoritmo Kasumi …………………………………………………………………………………………….... 12 2.5.5 Algoritmo MILENAGE ……………………………………………………….…………………………..…..... 13 2.5.6 Algortimo Camellia …………..……………………………………………………………………..…….….....14 2.5.7 Radios de Motorola SABER y KVL ………..……………………………….……………….…………......14 2.5.8 AES Modificado para Plataformas de Smartphones ………………..……..……………..………...14 2.5.9 Mobiflage …………………………………………………………………………………………………….…….. 15 2.5.10 TAMCE …………………………..…………………………………………………………………………..……. 15 C a p 2ít.5u.l1o1 3 B Mlaackrcpoh oTneeó …ri…co… … … . . … … … … … … … … … … … … … … … . … … … … … … … … … … … … … . . . … … … . . . . . 1157 3.1 Algoritmo DES ……………………….……………………K…………………………………………………………...… 17 3.1.1 Implementación del algoritmo DES .………..…………………………..………………………… 19 i 3.1.2 Procesamiento de la llave de cifrado para obtener las 16 subllaves k …...…....… 23 3.2 Algoritmo Triple DES …………………………………………………………………………………………...….…. 25 vii 3.3 Algoritmo Triple-DES-96 ………………………………………………………………………………………...….. 27 3.3.1 Características de Triple-DES-96 ……………………………………………………………….…....….. 28 3.4 Teoría del Audio ………………………………………………………………………………………….………….….. 31 3.4.1 Concepto de Onda ………………………………………………………………………….……………….….. 31 3.4.2 Características de una Onda ……………………………………………………….…………………..…… 31 3.4.3 Definición de Audio ………………………………………………………………..……………………….….. 33 3.4.3.1 Velocidad de propagación del audio ……………………….…………………………….….. 33 3.4.3.2 El espectro auditivo …………………………………………..……………………………….……. 34 3.5 Conversión de audio analógico a audio digital ………………………...……………………………….….... 35 3.5.1 Teorema de Nyquist ………………………………………….………………………………………..……… 35 3.5.1.1 Muestreo …………………………………………….…………………………………….…………….. 35 3.5.1.2 Cuantificación ………………………………….………………………………………..…………….. 36 3.5.1.3 Codificación ……………………………….…………………………………………..……………….. 37 3.6 El formato de audio WAV …………………………..…………………………………………………………….….. 38 3.6.1 Estructura de un archivo WAV ……….………………………………………………………………..….. 38 3.6.1.1 El bloque descriptor RIFF ………….…………………………………………………………..…. 39 3.6.1.2 El sub bloque fmt ……………………..………………………………………………………………. 40 3.6.1.3 El sub bloque da datos …………..……………………………………………………………….…. 40 3.7 Medidas de Aleatoriedad ……………………………………………….………………………………………..….. 41 3.7.1 Entropía …X…2…………………………………………….……………………………………….....…..…. 41 3.7.2 CoeficieXn2te de Correlación ……………………………………………………………………….…. 42 3.7.3 Prueba de …………………..……………………………………………………............................…. 45 Capítulo 4 S i s t3e.7m.3a. 1d e c pifarraad loa sd per auuedbiaos pdreo bpounedsatdo d e a j u s t e … … … … … … … … … … … … … … … … … 4496 4.1 Elección del lenguaje de programación e IDE ………….………………………………………………....…. 49 4.2 Planificación del sistema de cifrad o de audio ………...…………………………………………………..…. 49 4.3 Elección de clases y funciones …….………………….……………………………………………………..…..…. 50 4.4 Programación de la clase TDES96………………………………………………………………………………,,. 51 4.4.1 Función permutation .……………………………………………………………………………………...…. 51 4.4.2 Función setKey …………………………………………………………………………………………………... 53 4.4.3 Función f ………………………………………………………………………………………………………….... 54 4.4.4 Funciones cipher y decipher ……………………………………………………………………………….. 54 4.5 Programación de las otras funciones ………………………………………………………………………….... 57 4.5.1 Función GetHisto ……………………………………………………………………………………………….. 57 4.5.2 Función Log2 …………………………………………………………………………………………………...… 57 4.5.3 Función Entropy ………………………………………………………………………………………………... 58 4.5.4 Función Coefc …………………………………………………………………………………………………….. 58 4.5.5 Función X2 ……………………………………………………………………………………………………….... 59 4C.a6p Iínttuelrof a5z R Gersáufilctaa …do…s… … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … . . . … 6620 5.1 Recursos utilizados ……………………………………………………………………………………….………...…. 62 5.2 Señales antes del cifrado ……………………………………………………………………………..…………..….. 62 5.3 Señales después del cifrado ……………………………………………………………………..……………….…. 65 5.4 Análisis de resultados ……………………………….……………………………………….…………………….…. 68 5.4.1 Resultados de Entropía ……………………….………………………………..………………………….…. 68 5.4.2 Resultados de Coeficiente de correlación …………………………..……………………………..…. 69 viii X2 5.4.3 Resultados de ………………………………………………………….…………………………………..…. 70 5.4.4 Tiempos de Cifrado de Triple-DES-96 con respecto a Triple DES ……….…...…………..…. 71 5.4.5 Comparación de histogramas de los archivos WAV originales y descifrados …….....…. 72 C a p 5ít.4u.l6o H 6i sCtoongcralumsaios ndees l oys t raarcbhaijvooss f WutAuVro csi f r a d o s … … … … … … … … … … … … … … … … … … … … … … . 9837 6.1 Conclusiones …………………..…………………………………………………………………………………..…..…. 93 6A.n2e Txroa b a j o s F uturos ……..…………………………………….………………………………………………………..…. 9954 Referencias 98 ix Índice de Figuras y Tablas Figuras Figura 2.1 Escitala aplicada al alfabeto americano ……………..............…………………………………….... 08 Figura 2.2 Cifrador de Alberti aplicado al alfabeto americano ………………….…………………………. 08 Figura 2.3 Cifrador de Thomas Jefferson …………………………………………...………………………………. 09 Figura 2.4 Máquina Enigma ……………………………………………………………………………………………... 10 Figura 2.5 Esquema General del Algoritmo Kasumi ………………………………………………………….... 13 Figura 3.1 Esquema General del Algoritmo DES ……………………………………………………………….... 18 Figura 3.2 Operación de Cifrado de Triple DES ………………………….……………………………………….. 26 Figura 3.3 Operación de Descifrado de Triple DES …………………….……….………………………………. 27 Figura 3.4 Esquema General de Triple-DES-96 ………………………….….……………………………………. 29 96 Figura 3.5 Función f …………………………………………………………...….………………………………………. 30 Figura 3.6 Onda Senoidal ………………………………………………………….………………………………………. 32 Figura 3.7 Muestreo de una señal de 2 muestras por ciclo y 4 muestras por ciclo ….……………. 36 Figura 3.8 Cuantificación de una señal a 3 bits …………………………………………………….…….……..... 36 Figura 3.9 Codificación de una señal a 3 bits ………………………………………………………....………….... 37 Figura 3.10 Estructura de un archivo de audio WAV …………………………………………….…………….. 39 Figura 3.11 Diagrama de dispersión de la cotización del dólar y euro del 2006 al 2015 ……….. 43 Figura 3.12 Diagrama de dispersión de los datos modificados ……………………………...……….……. 45 Figura 3.13 Cálculos de ejemplo de la prueba de nivel α …………….……………………………………..… 47 Figura 3.14 Curva de la normal …………………………………………………………………………………………. 48 Figura 4.1 Etapas del diseño del sistema de cifrado de audio ………………………………………….…... 50 Figura 4.2 Clase TDES96………………………………………………………………….…………...……………….….. 50 Figura 4.3 Diagrama de flujo de la función Permutation ……………………………….………………….…. 52 Figura 4.4 Captura de la interfaz gráfica de la aplicación sin compilar ….……………….………….…. 60 Figura 4.5 Captura de la interfaz gráfica de la aplicación compilada …………………….…..……….…. 61 Figura 5.1 Señal del archivo Música1.wav ….…………………………………………………...………………..... 63 Figura 5.2 Señal del archivo Música1.wav ….…………………………………………………...………………..... 63 Figura 5.3 Señal del archivo Música1.wav ….…………………………………………………...………………..... 63 Figura 5.4 Señal del archivo Conversación1.wav ……………………………………………………………….. 63 Figura 5.5 Señal del archivo Conversación2.wav ……………………………………………………………….. 64 Figura 5.6 Señal del archivo Conversación3.wav ……………………………………………………………….. 64 Figura 5.7 Señal del archivo Mixto1.wav ……………………….……………………...………………………...…. 64 Figura 5.8 Señal del archivo Mixto2.wav ……………………….……………………...………………………...…. 64 Figura 5.9 Señal del archivo Mixto3.wav ……………………….……………………...………………………...…. 64 Figura 5.10 Señal del archivo Música1_cipher.wav …………….……….………………………………..….…. 65 Figura 5.11 Señal del archivo Música1_cipher.wav …………….……….………………………………..….…. 65 Figura 5.12 Señal del archivo Música1_cipher.wav …………….……….………………………………..….…. 65 Figura 5.13 Señal del archivo Conversación1_cipher.wav ………… ...………………………………….…. 66 Figura 5.14 Señal del archivo Conversación1_cipher.wav ………… ...………………………………….…. 66 Figura 5.15 Señal del archivo Conversación1_cipher.wav ………… ...………………………………….…. 66 Figura 5.16 Señal del archivo Mixto1_cipher.wav ……………………………………………………...…….…. 67 Figura 5.17 Señal del archivo Mixto1_cipher.wav ……………………………………………………...…….…. 67 Figura 5.18 Señal del archivo Mixto1_cipher.wav ……………………………………………………...…….…. 67 Figura 5.19. Histogramas de los primeros archivos de conversación, original y cifrado ……….. 73 Figura 5.20. Histogramas de los segundos archivos de conversación, original y cifrado ……….. 74 Figura 5.21. Histogramas de los terceros archivos de conversación, original y cifrado …………. 75x
Description: