CRIPTOGRAFÍA Carlos Andrés Martínez Alayón Ing. MSc Ingen Ingenier ieroo Electrónic Electrónicoo
AGENDA 3 CRIPTOGRAFÍA 3.1 Introducción 3.2 Cifradores Clásicos 3.2.1. Escítala 3.2.2. Sustitución por desplazamiento 3.2.3. Sustitución Aleatoria Aleatoria 3.2.4. Maquina Enigma 3.2. 3. 2.5. 5. One One ti time me Pad Pad 3.3 Estenografía 3.4 Cifradores de Bloque Simétricos
AGENDA 3 CRIPTOGRAFÍA 3.1 Introducción 3.2 Cifradores Clásicos 3.2.1. Escítala 3.2.2. Sustitución por desplazamiento 3.2.3. Sustitución Aleatoria Aleatoria 3.2.4. Maquina Enigma 3.2. 3. 2.5. 5. One One ti time me Pad Pad 3.3 Estenografía 3.4 Cifradores de Bloque Simétricos
3.1
Introducción a la Cr Criptografía
La palabra criptografía proviene de los vocablos voca blos griego kriptos (ocultar) y grafos (escribir), cuya unión significa “escritura secreta”.
Actualmente, se entiende por criptografía el arte o ciencia de cifrar y descifrar información utilizando técnicas matemáticas que hagan posible intercambio de mensajes de manera que sólo puedan ser leídos por por las personas a quienes van dirigidos.
3.1
Introducción a la Criptografía
3.1.1 Objetivo de la criptografía. • Garantizar el secreto en la comunicación entre dos
entidades (Confidencialidad). • Asegurar que la información que se envía es auténtica en un doble sentido: que tanto el remitente como el destinatario sean realmente quienes dicen ser (Autenticación y no repudio). • Impedir que el contenido del mensaje enviado sea modificado en su trayecto (Integridad).
3.1
Introducción a la Criptografía
3.1.2 Conceptos básicos. • Texto plano: Secuencia de caracteres con algún
significado inteligible. El texto plano tiene un lenguaje y una sintaxis definida. • Criptograma: Texto cifrado o encriptado. • Cifrar o encriptar : Acción de transformar el texto plano en el criptograma. • Descifrar o desencriptar : Acción de transformar el criptograma en el texto plano.
3.1
Introducción a la Criptografía
3.1.2 Conceptos básicos (2) • Clave o llave: Es uno de los elementos críticos del cifrador, y sin ella no sería posible desencriptar el texto cifrado. • Criptosistema: Es todo el modelo criptográfico. Está formado por los algoritmos de cifrado, la clave y el algoritmo de descifrado. • Criptoanalista: Es la persona que realiza el criptoanálisis. • Criptógrafo: Es la persona que se encuentra activa en el mundo de la criptografía.
3.1
Introducción a la Criptografía
3.1.3 Criptoanálisis y ataques criptográficos Denominamos criptoanálisis al ataque a un criptosistema. Principales tipos de ataque: • Ataque de texto cifrado: El criptoanalista sólo conoce el criptograma y se requiere conseguir el texto plano y la clave. • Ataque con texto plano conocido: Se conoce el texto llano y el texto cifrado y se requiere determinar la clave. • Ataque con texto plano escogido: Se pueden encriptar textos planos pero se desconoce la clave.
3.2
Cifradores Clásicos
3.1. LA ESCITALA. Una de las técnicas criptográficas usadas en la antigüedad fue creada por los éforos espartanos, la llamada escítala. Este mecanismo consistía en enrollar una tira de cuero alrededor de una vara de un diámetro concreto e ir escribiendo el mensaje en líneas horizontales. Al desenrollar la tira, lo que se obtiene es una serie de letras sin sentido a lo largo de la misma, y al ser enrollada nuevamente, en la vara del receptor aparecerá el mensaje que contiene. Esto obliga a que el destinatario sepa de antemano el diámetro de la vara que debe ser utilizada para poder descifrar el mensaje.
3.2 3.2.2
Cifradores Clásicos Cifrador del César
“Si el tenía algo confidencial que decir, lo escribía en secreto. Cambiaba el orden de las letras del alfabeto de forma tal que ninguna palabra pudiese entenderse. Si alguien quería descifrarlo y encontrar el significado, debía remplazar la cuarta letra del alfabeto D por la A, la E por la B, y así sucesivamente”
Suetonio Galio.
3.2.2 Cifrador del César La matemática moderna nos permite describir en general un cifrador de sustitución por desplazamiento, de la siguiente forma:
x n
mod
x n
mod
E n x
Dn x
m m
(Cifrado) (Descifrado)
3.2.2 Cifrador del César (Criptoanálisis) En general los cifradores por sustitución pueden ser atacados haciendo uso de diferentes técnicas como lo son: el análisis de frecuencias, los patrones de palabras y por fuerza bruta. • Patrones de palabras:
Todos los idiomas tienen algunas palabras que son más comunes que otras. Ej: Los digramas de, el, en, al, un; los trigramas las, los, del, una, con; las terminaciones ente, ción. Además, dependiendo del contexto en el que se desenvuelva el criptoanálisis es posible que algunas palabras especiales puedan estar incluidas en el mensaje.
3.2.2 Cifrador del César (Criptoanálisis) • Fuerza bruta: • Este es el ataque más efectivo, sin embargo, suele ser el
menos eficiente cuando el conjunto de opciones es considerablemente grande. • En el caso de los cifradores de sustitución, el ataque de
fuerza bruta consistiría en probar cada una de las opciones posibles sustituciones para tratar de descifrar el criptograma.
3.2.2 Cifrador del César (Criptoanálisis) • Análisis de frecuencias: • Cada una de las letras del alfabeto tiene una frecuencia de
ocurrencia asociada. Por ejemplo: En el idioma español, las letras más comunes son la E y la A, las menos frecuentes son la W, la K y la Ñ. • Un AF sobre el texto cifrado y una correlación con el patrón de frecuencias estándar permitirá determinar el factor de desplazamiento que se utilizó para generar la sustitución. • Los patrones de frecuencias varían de un idioma a otro.
3.2.2 Cifrador del César (Criptoanálisis) Análisis de frecuencias:
Ejemplo: Sustitución por desplazamiento
Pistas: El texto está encriptado con el Método de sustitución por desplazamiento (Cifrador de Cesar) . El texto está en Español. (El alfabeto contiene la letra Ñ) Los signos de puntuación no están cifrados (es decir la coma es la coma, el punto es el punto etc.) Se trata de una Frase celebre de un personaje muy importante en la Historia de la Humanidad
Ejemplo: Sustitución por desplazamiento
Ejemplo: Sustitución por desplazamiento
Si desplazamos la letra E hasta la letra Y no tenemos resultados con frases coherentes,
Pero si remplazamos la E en la K tenemos la respuesta.
Taller 1: Sustitución por desplazamiento YNVBJA NB NT CAJKJRX UJB MQÑQLQT ZDN NGQBCN. CJTENI BNJ NBCJ TJ AJIXV YXA TJ ZDN YXLJB YNABXVJB TX YAJLCQZDNV LXVBCJVCNUNVCN. PNVAH ÑXAM.
Pistas: El texto está encriptado con el Método de sustitución por desplazamiento (Cifrador de Cesar) . El texto está en Español. (El alfabeto contiene la letra Ñ) Los signos de puntuación no están cifrados (es decir la coma es la coma, el punto es el punto etc.) Se trata de una Frase celebre de un personaje muy importante en la Historia de la Humanidad
3. Cifradores Clásicos 3.2.3 Cifrador por sustitución aleatoria El cifrado por sustitución se basa en un secreto compartido por el emisor y el receptor, y consiste en realizar una sustitución arbitraria de cada una de las letras del alfabeto por otra o por un símbolo. a b c d e f g h i j k l m n o p q r s t u v w x y z q a z w s x e d c r f v t
g b y h n u j m i k o l p
Criptoanálisis: • Fuerza bruta -> 27! Combinaciones (aprox. 10.88x1025) • Análisis de Frecuencias puede romperlo fácilmente.
Taller 2: Sustitución Aleatoria Descubra el texto encriptado:
ugyb ug df tufgñlu mu nvdurñ nñvñ jñ ejñgu mu evznybqvñazñ ebf jbg nvbaugbvug eñvjbg p Añrzb uf uj gutzfñvzb qvdnb ñ Pistas: El texto está encriptado por sustitución por sustitución aleatoria El texto está en Español. Los signos de puntuación no están cifrados (es decir la coma es la coma, el punto es el punto etc.) •
•
•
3.2
Cifradores Clásicos
3.2.3 Cifrador de Vigenere • Recibe el nombre en honor a Blaise de Vigenere en XIX. • El primero en describirlo fue Giovanni Batista Belaso. • Está basado en un sistema de sustitución polialfabético o de
sustitución múltiple. • Apareció para sustituir los cifradores monoalfabéticos pues
estos presentaban debilidades frente a los análisis de frecuencias.
3.2.3 Cifrador de Vigenere El principal elemento de este sistema es la llamada Tabula Recta, una matriz de caracteres de dimensión mxm, dónde m es el número de caracteres que componen el alfabeto. Sin embargo, la fortaleza del criptosistema radica en elección de una palabra clave, la cual se repetirá cuantas veces sea necesario para igualar la longitud del texto plano. Matemáticamente: C i
P K i i
P i
C i
K i
mod
m
(Cifrado)
mod
m
(Descrifrado)
3.2.3 Cifrador de Vigenere Texto: POR MAS DE TRES SIGLOS SE PENSO QUE EL CIFRADOR DE VIGENERE ERA INDESCIFRABLE TRES Clave: SEC RET OS ECRE TOSECR ET OSECR ETO SE CRETOSEC RE TOSECRET OSE CRETOSECRETOS ECRE Cripto: HST DEL RW XTVW LWYPQJ WX DWRUF UNS WP EZJKOVST UI OWYIPVVX SJE KEHXGUMHIEUZW XTVW
Criptoanálisis:
Menos sensible a los análisis de frecuencias, pero aún así, no son tan fuertes como se pensó durante varios siglos. Charles Babage y Friderich Kasiski trabajaron de forma independiente en el criptoanálisis del cifrador de Vigenere.
3.2.3 Cifrador de Vigenere (Criptoanálisis) Criptograma: IS SIHSSD EYI EA UIREGC LYMPBS POVFI GRTOV YN TBMKMP EYI EA AMWMD WRKECWS LUBORS ND FIWUTZZE ESUEV A ECI IS SIHSSD EYI EA UIREGC LYMPBSº POVFI GRTOV YN TBMKMP EYI EA AMWMD WRKECWS LUBORS ND FIWUTZZE ESUEV A ECI Hay 35 caracteres entre los patrones repetidos EYI EA incluyendo el patrón repetido
Se descompone 35 = 5 x 7, lo cual quiere decir que la clave, probablemente, sea de 5 o 7 caracteres.
3.2.3 Cifrador de Vigenere (Criptoanálisis) Suponiendo que el tamaño de la clave es 5 ISSIH SSDEY IEAUI R EGCL YMPBS POVFI GRTOV Y NTBM K MPEY IEAAM WMDWR K ECWS LUBOR S NDFI WUTZZ EESUE VAECI
Se extrae cada uno de los 5 alfabetos: ISIRYPGYKIWKLSWEV SSEEM ORNME MEUNU EA SDAGPVTTPADCBDTSE IEU CB FOB EAWWO FZU C HYILSIVMYMRSRI ZEI
I (3) -> I = E E (5) -> E = E T,D (3) -> T,D = E E,U,C,W,F,B -> ???? I (4) -> I = E
3.2.3 Cifrador de Vigenere (Criptoanálisis) ¿Cuál es el desplazamiento necesario para qué ….?
• E=I, requieren 4 desplazamientos A=0, B=1, C=2, D=3, • E=E, no se requiere desplazamiento A=0
P=15 E=D, se requiere un desplazamiento, Z=25 (-1)
• E=T, se requieren 15 desplazamientos,
• No hay suficiente información, muchas opciones • E=I, requieren 4 desplazamientos,
E=4
E=4
3.2.3 Cifrador de Vigenere (Criptoanálisis) ¿Cuáles son las posibles claves? Opción 1: E A P * E Se reemplaza * por A = 0 Opción 2: E A Z * E Se reemplaza * por A=0 E A P A E EA PA E E A P A EE AP A E EAPA EEAPAE ….. IS S I H S S D EYI EA U I REGC LYMPBS …. ES DI D O S O EUE EL UE NER C HUMABO … ES DI DOSO E UE EL U ENERC HUMAB O LOGF E CRE O R UN E B IGMA E UE EL A ISMO W NGEN W O HUMO NO NO AR A P C E F ESUE Z VA EDU
3.2.3 Cifrador de Vigenere (Criptoanálisis) ¿Qué palabras se aproximan? EUE (2 veces) QUE DIDOSO DUDOSO HUMABO HUMANO CREOR CREAR EA P? E E A P IS S I H S S D ES DUDO S O Clave correcta:
? EE AP ? E EAP? EEAPAE ….. EYI EA U I REGC LYMPBS …. QUE EL GE NER O HUMABO E A P O E
ES DUDOSO QUE EL GENERO HUMANO LOGRE CREAR UN ENIGMA QUE EL MISMO INGENIO HUMANO NO RESUELVA EDGAR A POE
3.2.4 La máquina Enigma • Ampliamente utilizada en Europa (1920), en su formato
comercial • Debe su fama a que fue adoptada por al ejercito Nazi • Es un dispositivo Electromecánico • Su funcionamiento era simétrico, es decir, el proceso de cifrado es idéntico al proceso de descifrado.
3.2.4 La máquina Enigma (Criptoanálisis) • Una máquina Enigma de uso no militar tenía 3 rotores, lo
que significa que estos rotores se podían poner de 6 formas diferentes y cada rotor podía iniciar en cada una de las 26 letras del alfabeto, esto quiere decir que existían 105456 alfabetos posibles. • En 1929 los polacos interceptan una máquina Enigma • Marian Rejewski utilizando técnicas matemáticas y estadísticas descubre que la clave del mensaje se repetía dos veces al principio del mensaje. • Los polacos construyen la “bomba criptológica”. Varias
Enigma en paralelo que podían probar cientos de combinaciones simultáneamente.
3.2.4 La máquina Enigma (Criptoanálisis) • El ejercito alemán mejora la máquina. 5 rotores y deja de
repetir la clave. • Los polacos unen esfuerzos con los franceses y británicos; juntos crean la Escuela Gubernamental de Código y Cifrado. • Finalmente un grupo de investigadores, liderados por Allan Turing, logran descifrar una serie de mensajes. A esto se debe la 2da. guerra terminara un año antes de lo esperado.
3.2.4 One Time Pad • Propuesto por Claude Shannon. Padre de la teoría de la
información. • Es el único método de encripción que teóricamente irrompible. • No hay forma de descifrar el criptograma sin la clave (Pad). • Todo carácter se cifra con un carácter del pad. • El pad es del mismo tamaño que el mensaje. • La clave debe ser secreta y sólo puede usarse una vez. • En la práctica no es útil. • Requiere que el pad sea perfectamente aleatorio. • Supone la necesidad de un medio totalmente seguro para el envío del pad.
3.2.4 One Time Pad Suponga que se desea enviar un mensaje usando OTP. Texto: ATACAREMOS POR EL NORTE Pad: UEWNFYVHBD PWI DJ FNGUE Cripto: UXWP FPZ TPV EKZ HU SBXNI De los ataques previamente analizados, el único que podría dar algún resultado es el ataque de fuerza bruta, sin embargo, existen 26 20 opciones por probar y debido a la perfecta aleatoriedad del pad, es posible que más de una de estas opciones produzca un texto plano inteligible. Cripto: UXWP FPZ TPV EKZ HU SBXNI Pad: SXJWFYVHBD PWI WU ZBGKE Texto: CANTAREMOS POR LA TARDE
3.3
Esteganografía
La esteganografía, o empleo de canales subliminales, consiste en ocultar información relevante (cifrada o plana) en el interior de una portadora aparentemente inofensiva. Mientras que la criptografía hace el mensaje inteligible, la esteganografía pretende hacerlo invisible. Se basa en la incapacidad de los sentidos humanos para detectar pequeñas variaciones sutiles (en comparación con las máquinas)
3.3
Esteganografía
Actualmente, la información se esconde dentro de archivos comunes como imágenes (jpg, bmp, gif), archivos de audio (mp3, wav, wmv) e incluso en archivos de texto.
3.3
Esteganografía
3.1.1 Tipos de esteganografía Por sustitución: • Utiliza áreas de los archivos que no son utilizadas o información redundante. • El método más común es el LSB (Least Significant Bit), bit menos significativo. • Funciona a la perfección utilizando imágenes muy coloridas como portadora • No altera el tamaño original de la portadora, por lo cual dificulta su detección.
3.3
Esteganografía
3.1.1 Tipos de esteganografía Por inyección: • Ocultar el mensaje secreto directamente en el objeto portador. • El problema de esta estrategia es que, generalmente, el archivo resultante del proceso esteganográfico tendrá un tamaño mucho mayor que el de la portadora original,