0% encontró este documento útil (0 votos)
542 vistas13 páginas

Criptografía: Algoritmos y Prácticas de Cifrado

Este documento describe un laboratorio sobre herramientas criptográficas. Los objetivos son hacer uso de algoritmos criptográficos simétricos y asimétricos como DES, RSA y funciones resumen como MD5 a través de software libre. Se detallan procedimientos para codificar, decodificar y realizar criptoanálisis usando herramientas como CriptoClásicos y prácticas sobre cifrado afín, sustitución, Vigenère y transposición de filas.

Cargado por

maxwel88
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
542 vistas13 páginas

Criptografía: Algoritmos y Prácticas de Cifrado

Este documento describe un laboratorio sobre herramientas criptográficas. Los objetivos son hacer uso de algoritmos criptográficos simétricos y asimétricos como DES, RSA y funciones resumen como MD5 a través de software libre. Se detallan procedimientos para codificar, decodificar y realizar criptoanálisis usando herramientas como CriptoClásicos y prácticas sobre cifrado afín, sustitución, Vigenère y transposición de filas.

Cargado por

maxwel88
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Universidad Tecnolgica de Panam Facultad de Ingeniera de Sistemas Computacionales Departamento de Arquitectura y Redes de Computadoras Seguridad y Privacidad en Redes I Laboratorio

No. III (Parte A) Herramientas Criptogrficas


Elaborado por: Prof. Giovana Garrido Objetivos:

Hacer uso de herramientas criptogrficas. Analizar cada uno de los algoritmos criptogrficos simtricos como asimtricos, tales como Cifradores Clsicos: sustitucin monoalfabtica, polialfabtica, cifradores Simtricos: DES, IDEA., Cifradores Asimtricos: RSA, ElGamal, DSS. Funciones Resumen: MD5, SHA-1. Realizar pruebas de cifrado a travs de software opensource.

Herramientas:
Programas de aplicacin desarrollados para entornos Windows.

Procedimientos:
Para cada una de las herramientas que a continuacin se detallan deber realizarse lo siguiente: o o o o o o Codificacin y descodificacin con el criptosistema afn. Intercambio de mensajes codificados con el criptosistema afn. Criptoanlisis de mensajes codificados con el criptosistema afn. Obtencin de la clave a partir del mensaje codificado. Codificacin y descodificacin con criptosistemas de sustitucin. Intercambio de mensajes codificados por sustitucin. Criptoanlisis de mensajes codificados por sustitucin. Obtencin de la clave a partir del mensaje codificado.

I. CriptoClsicos Autor: D. Luis Miguel Motrel Berjano


Aplicacin para prcticas de sistemas de cifrado clsicos. Algoritmos de cifrado monoalfabtica (sustitucin y transposicin) y polialfabtica (Vigenre, Beaufort, clave continua) con sus correspondientes opciones de criptoanlisis. Adems Vernam, Playfair y Hill digrmico. Alfabetos castellano (mod 27 y mod 37) e ingls (mod 26 y mod 36). Incluye un apartado con herramientas caractersticas del trabajo dentro de un cuerpo y estadsticas bsicas del Se recomienda instalar todos los programas en carpetas distintas bajo C:\Criptolab lenguaje. Instalacin: El archivo de instalacin [Link] que descargar de [Link] extrae los archivos e instala el programa en la carpeta que se indique. Elija C:\Criptolab\CriptoClas. Borre luego los archivos de instalacin. Apartado 1: Introduccin usando el Libro Electrnico de Criptografa Clsica Puesto que este programa en Toolbook ocupa toda la pantalla, para cambiar de tareas y poder usar las opciones de seleccionar, copiar y pegar, en este apartado debers usar las teclas Alt+Tab. a) Abra el programa y revise los temas de cifrado por desplazamiento puro. b) Desde el acceso a este algoritmo, cifrado el siguiente mensaje con b = 3: M = EN AQUELLOS TIEMPOS DEL CESAR SE CIFRADOBA ASI. c) Descifrado el criptograma obtenido en el punto anterior.

Apartado 2: Operaciones de cifrado con teclado

Prof. Giovanna Garrido 2012

a) Cifrado en mod 27 con un desplazamiento b = 5 el siguiente mensaje: M = ESTE CIFRADODO SIN CLAVE ES MUY VULNERABLE. b) Descifrado el criptograma obtenido en el punto anterior. c) Cifrado en mod 37 con desplazamiento b = 10 los siguientes mensajes: M1 = ABCDEFGHIJKLMNOPQRSTUVWXYZ. M2 = abcdefghijklmnopqrstuvwxyz. M3 = aeiou. M4 = . d) Descifrado los criptogramas obtenidos en el punto anterior. Apartado 3: Operaciones de cifrado con archivos a) Cifrado en mod 27 con un desplazamiento b = 7 el fichero [Link]. El fichero de salida se llamar [Link]. b) Descifrado el fichero [Link], guardndolo como [Link]. Apartado 4: Criptoanlisis a) Cifrado, descifrado y Criptoanalice por fuerza bruta el siguiente mensaje para un desplazamiento b = 11 en mod 27: M = Cuando el mensaje es relativamente largo, el criptoanlisis est asegurado. b) Criptoanalice por fuerza bruta el siguiente criptograma mod 27: C = MEKWN YUV WCKS CBU KDRFK VWD UKBPY UMBR ZDYKW KURCR CCDK KCPE BKNY. c) Repita el ataque anterior Observando en este caso la frecuencia de monogramas del criptograma, no mediante cifrados sucesivos (fuerza bruta) como lo has hecho hasta ahora. Para ello, copia el criptograma en un archivo de texto, gurdalo con el nombre [Link] y luego con la misma aplicacin Criptoclsicos encuentra la distribucin de monogramas a partir del men herramientas. Observe qu sucede con las letras de mayor frecuencia y su relacin con las posiciones relativas que ocupan las letras A y E en un texto en claro. Con esa informacin, encuentra el valor de b. d) Criptoanalice por fuerza bruta el fichero [Link] del apartado 3 y gurdalo como [Link]. e) Repita el criptoanlisis anterior pero ahora de la misma forma que lo has hecho en el apartado c.

INFORME
1. Explique lo que ha sucedido en los apartados 1d) y 2a). 2. Los cifrados de M1 y M2 (y M3 con M4) del apartado 2c) son iguales o distintos? Por qu? 3. Qu resultado obtienes si intentes descifrar con distintos valores de b un mensaje que ya est en claro? 4. Explique la relacin que existe entre el valor de b de cifrado y el valor de desplazamiento encontrado en el criptoanlisis. 5. Qu sucede si se intente cifrar con desplazamientos b = 31, b = 58 y b = - 27? 6. Explique y justifica cmo Realice el criptoanlisis de este tipo de cifrados el programa CriptoClsicos. 7. Qu puede decir de los ataques que has Realizado por fuerza bruta? 8. Explique el desarrollo del criptoanlisis por estudio de frecuencias que has Realizado en los apartados 2c) y 4d).

PRACTICA CIFRADO DE VIGENERE


Apartado 1: Introduccin usando el Libro Electrnico de Criptografa Clsica Puesto que este programa en Toolbook ocupa toda la pantalla, para cambiar de tareas y poder usar las opciones de seleccionar, copiar y pegar, en este apartado debers usar las teclas Alt+Tab.

Prof. Giovanna Garrido 2012

a) Abra el programa y revisa los temas del cifrado de Vigenre. b) Desde el acceso a este algoritmo, cifrado el siguiente mensaje con la clave K = PRUEBA: M = UNA PRUEBA DE CIFRADO CON VIGENERE. c) Descifrado el criptograma obtenido en el punto anterior. d) Repita el cifrado y el descifrado anteriores usando ahora el segundo cifrado de Vigenre. Apartado 2: Operaciones de cifrado con teclado a) Cifrado mod 27 con clave K = AZUL el siguiente mensaje: M = ERASE UNA HERMOSA PRINCESA QUE SOLIA PASEAR POR LOS JARDINES DEL PALACIO REAL. b) Descifrado el criptograma obtenido. c) Repita el cifrado del mensaje y el descifrado usando ahora la clave K = YO. Apartado 3: Operaciones de cifrado con archivos a) Cifrado mod 27 con clave K = ANDERSEN el fichero [Link]. El fichero de salida se llamar [Link]. b) Descifrado el fichero [Link], guardndolo como [Link]. Apartado 4: Criptoanlisis a) Intente romper el cifrado obtenida en el apartado 2b. b) Intente romper el cifrado obtenida en el apartado 2c. c) Cifrado mod 27 con clave K = AZUL el siguiente mensaje y luego criptoanalzalo: M = ERASE UNA HERMOSA PRINCESA QUE SOLIA PASEAR POR LOS JARDINES DEL PALACIO REAL CON LA ESPERANZA DE ENCONTRAR DETRAS DE UN ARBOL AL PRINCIPE AZUL DE SUS SUEOS. d) Criptoanalice el fichero [Link], guardndolo como [Link]. e) Repita el cifrado mod 27 del fichero [Link] y su criptoanlisis, usando ahora como clave K = UN HERMOSO CUENTO. Los archivos de salida sern ahora [Link] y [Link]. f) Repita el punto anterior usando ahora como clave K = ME GUSTAN LOS CUENTOS DE ANDERSEN. Guarda los archivos como [Link] y [Link].

INFORME
1. Explique qu es el segundo cifrado de Vigenre. 2. Por qu decimos que el segundo cifrado de Vigenre es ms seguro que Vigenre? 3. Justifica matemticamente la cifrado y el descifrado de los primeros 10 caracteres del apartado 2. 4. Explique y justifica cmo Realice el criptoanlisis de este tipo de cifrados el programa CriptoClsicos. 5. Por qu falla el criptoanlisis en el apartado 4a)? 6. Justifica qu ha sucedido en el criptoanlisis Realizado en el apartado 4b). 7. Justifica porqu se rompe el criptograma en el apartado 4c) con una cadena de repeticiones de 3 caracteres y no con 5, ni con 4, ni con 2. 8. En este entorno se podra utilizar como clave K = "123 SOY YO OTRA VEZ"? En qu caso sera posible? 9. Comente y justifica qu ha sucedido en el ataque Realizado en los apartados 4d), 4e) y 4f). 10. Cmo justificas que usando la clave K = UN HERMOSO CUENTO de longitud 15 no se haya podido romper completamente el criptograma en el apartado 4e) y, por el contrario, para la clave K = ME GUSTAN LOS CUENTOS DE ANDERSEN de longitud 28 en el apartado 4f) s se haya logrado?

Prof. Giovanna Garrido 2012

PRACTICA CIFRADODO POR TRANSPOSICION DE FILAS


Apartado 1: Introduccin usando el Libro Electrnico de Criptografa Clsica a) Abra el programa y revisa los temas del cifrado por transposicin de filas. b) Desde el acceso a este algoritmo, cifrado con 2 filas el siguiente mensaje: M = ESTE ES UN CIFRADODO POR FILAS. c) Vuelva a Realizar el cifrado usando ahora 3, 4, 5 y 6 filas y Observe la permutacin en cada caso. d) Repita las cifrados de los puntos b) y c) usando ahora niveles. e) Descifrado los criptogramas obtenidos en los puntos anteriores. Apartado 2: Operaciones de cifrado con teclado a) Cifrado para valores distintos de filas (2, 3, 4 y 5) el mensaje M = VAMOS A CIFRADOR POR TRANSPOSICION DE FILAS. b) Repita el cifrado con 20, 30, 34, y 35 filas. c) Descifrado los criptogramas obtenidos con 2 y 20 filas. Apartado 3: Operaciones de cifrado con archivos a) Cifrado con un valor de 16 filas el fichero [Link]. El fichero de salida se llamar [Link] b) Descifrado el fichero [Link], guardndolo como [Link]. Apartado 3: Criptoanlisis a) Cifrado con 7 filas y luego Criptoanalice primero con una venta de 3 caracteres y luego con una ventana de 8 caracteres el siguiente mensaje: M = EN ESTE CASO COMO EL MENSAJE NO TIENE MUCHOS CARACTERES, EN EL ATAQUE POR ANAGRAMACION NO SE REFLEJAN FIELMENTE LAS ESTADISTICAS DEL LENGUAJE. b) Criptoanalice el fichero [Link] con una ventana de 8 caracteres, guardando el fichero como [Link].

INFORME
1. Compruebe los cifrados Realizados en el apartado 1. 2. Qu ha sucedido cuando has cifrado con valores mayores que 35 el mensaje del apartado 2? Por qu? 3. Para los dos ataques Realizados, encuentra la clave a partir de los desplazamientos que has efectuado en la ventana. 4. Es fiable el ataque por Anagramacin?

II. CriptoRES: hash MD5 y SHA-1 Autor: D. Jos Azaa Alonso


Estudio y seguimiento de las funciones hash MD5 y SHA-1, las ms conocidas y usadas en esta fase de compresin o resumen de texto en claro para la creacin de una firma digital. La aplicacin de nombre CriptoRES permite obtener los resmenes de texto introducido por teclado o a travs de un archivo con dichas funciones, as como el seguimiento de las operaciones internas de cada algoritmo. Incluye una representacin grfica del problema del ataque por la paradoja del cumpleaos y una ayuda en lnea con una Explicacin exhaustiva sobre estos algoritmos. Instalacin: Copie el archivo [Link] en una carpeta de instalacin. Una vez descomprimido este archivo, instale el programa ejecutando el [Link] y eligiendo C:\Criptolab\CriptoRES. Borre luego los archivos de la carpeta de instalacin.

Prof. Giovanna Garrido 2012

PRACTICA FUNCION HASH MD5


Apartado 1: Operaciones de hash con teclado a) Introduzca por teclado los siguientes mensajes y Calcule su funcin hash. Nota: Despus de copiar al portapapeles y pegar el texto en la ventana de la aplicacin, tenga la precaucin de borrar el espacio en blanco o el punto final del texto, puesto que esto cambiara el resultado del hash. M1 = ABC. M2 = Esta es una prueba de la funcin hash MD5. M3 = ESTA ES UNA PRUEBA DE LA FUNCION HASH MD5. b) Hacer un seguimiento de este ltimo mensaje M3 a nivel de bloques. Guarda el resultado en un archivo de nombre [Link]. c) Hacer ahora un seguimiento de este ltimo mensaje a nivel de pasos. Guarda el resultado en un archivo de nombre [Link]. Apartado 2: Propiedades de la funcin hash a) Introduzca por teclado el texto el siguiente texto y Calcule su funcin hash: M1 = BEBA COCA COLA. Con la ayuda del portapapeles, gurdalo en un archivo de nombre [Link]. A continuacin Introduzca el texto siguiente texto y Vuelva a Calcular su funcin hash: M2 = BEBA BOCA COLA. Con la ayuda del portapapeles, gurdalo en un archivo de nombre [Link]. b) Usando ahora Calculadora cientfica de Windows, otra aplicacin que permita trabajar en binario y hexadecimal o bien a mano, compara la salida en binario de los dos hash y Compruebe que al cambiar slo un bit del mensaje (la letra B por la C) cambian ms de la mitad de los bits de su resumen. Nota: La Calculadora de Windows 98 trabaja slo con 32 bits; en versiones superiores de Windows con 64 bits. Apartado 3: Operaciones de hash con archivos a) Calcule la funcin hash del fichero [Link]. b) Calcule la funcin hash del fichero [Link]. c) Compruebe que si bien los textos son iguales, la funcin hash de estos dos archivos ser distinta. Apartado 4: Caractersticas de la funcin hash El apartado cuarto correspondiente a la comparacin de las funciones MD5 y SHA-1 y la Revisar la paradoja del cumpleaos (Ataque), para observar el comportamiento de este algoritmo.

INFORME
1. Por qu no son iguales las funciones resumen de M2 y M3 del apartado 1a) si el texto es el mismo? 2. Comente qu hace y qu muestra el seguimiento por bloques y por pasos que has visto en los apartados 1b) y 1c). 3. Cuntos bloques de texto debe tratar el algoritmo en los mensajes del apartado 1a)? Por qu? 4. Calcule, Compruebe y justifica el nmero de bloques de texto a tratar en este mensaje de 56 bytes: M = VEAMOS SI AHORA EL ALGORITMO PROCESARA UNO O DOS BLOQUES 5. Calcule, Compruebe y justifica el nmero de bloques de texto a tratar en este mensaje de 64 bytes: M = ESTA VA A SER LA SEGUNDA PRUEBA PARA VER EL TAMAO DE ESE BLOQUE 6. A travs del archivo [Link] que has guardado en el apartado 1c) Compruebe la

Prof. Giovanna Garrido 2012

veracidad de todo ese primer bloque, incluido el relleno y la representacin binaria de la longitud del mensaje. 7. Por qu decimos que el mensaje "BEBA COCA COLA" y el mensaje "BEBA BOCA COLA" tienen slo un bit de diferencia? 8. A qu resultado llegas comparando los bits de cada uno de los hash encontrados en el apartado 2b) usando la Calculadora de Windows? Has podido obtener en este caso todos los bits del hash? Por qu? 9. Cul es la diferencia exacta de bits entre los dos hash de 128 bits que has encontrado? 10. Cmo se llama el efecto que has visto en el apartado 2b)? 11. Por qu son distintos los hash de los archivos [Link] y [Link] del apartado 3c)? 12. Por qu se tarda algo ms en Calcule el hash del archivo [Link] que el de [Link] si el texto es el mismo?

PRACTICA FUNCION HASH SHA-1


Apartado 1: Operaciones de hash con teclado a) Introduzca por teclado los siguientes mensajes y Calcule su funcin hash. Nota: Despus de copiar al portapapeles y pegar el texto en la ventana de la aplicacin, ten la precaucin de borrar el espacio en blanco o el punto al final del texto puesto que esto cambiara el resultado del hash. M1 = ABC. M2 = Con la funcin SHA-1 lo que se obtiene es un resumen de 160 bits. M3 = SHA-1 es el actual estndar hash. b) Hacer un seguimiento de este ltimo mensaje a nivel de bloques. Guarda el resultado en un archivo de nombre [Link]. c) Hacer ahora un seguimiento de este ltimo mensaje a nivel de pasos. Guarda el resultado en un archivo de nombre [Link]. Apartado 2: Propiedades de la funcin hash a) Introduzca por teclado el siguiente texto y Calcule su hash: Cuenta atrs: 3210. Con la ayuda del portapapeles, gurdalo en un archivo de nombre [Link]. A continuacin Introduzca el siguiente texto y Calcule su hash: Cuenta atrs: 3211. Con la ayuda del portapapeles, gurdalo en un archivo de nombre [Link]. b) Con la ayuda de la Calculadora cientfica de Windows, otra aplicacin que permita trabajar en binario y hexadecimal o bien a mano, compara la salida en binario de los dos hash y Compruebe que cambiando un solo bit del mensaje (el carcter 0 por el 1) cambian ms de la mitad de los bits de su resumen. Apartado 3: Operaciones de hash con archivos a) Calcule la funcin hash del fichero [Link]. b) Calcule la funcin hash del fichero [Link]. c) Hacer un seguimiento del resumen obtenido en cada uno de los archivos anteriores, tanto a nivel de bloques como a nivel de pasos, y slo Observe y compara los valores y la extensin del clculo que se muestra en la ventana de la aplicacin. Apartado 4: Caractersticas de la funcin hash a) Busque en tu computador cualquier archivo que tenga un tamao de algunos MBytes y Calcule su hash primero con MD5 y luego con SHA-1. Repita la operacin con el mayor archivo que tengas en tu computador. Compara el tiempo empleado por el programa en cada caso. b) Repita estos clculos solicitando un seguimiento del algoritmo por bloques y por pasos.

Prof. Giovanna Garrido 2012

c) Realice distintos clculos con la opcin de la paradoja del cumpleaos del programa CriptoRES y Observe que incluso para valores muy pequeos se obtienen resultados muy similares. Nota: Recuerda que esto es slo la representacin grfica de la ecuacin de la paradoja del cumpleaos, no un ataque. Prximamente se incluir en este cuaderno una prctica y el software correspondiente que permitir Realice diversos ataques a funciones hash.

INFORME
1. Cuntos bloques de texto debe tratar el algoritmo en los mensajes del apartado 1a)? 2. Se rellena o no el ltimo bloque en los mensajes del apartado 1a) de 3, 64 y 32 bytes respectivamente? Si fuera el caso, cmo? 3. A travs del archivo [Link] que has guardado en el apartado 1c) Compruebe el relleno que hace SHA-1 en el ltimo bloque para obtener congruencia 448 mod 512 y la representacin binaria de la longitud del mensaje. 4. Cmo aparecen los vectores clave en el archivo [Link]? Son iguales o distintos a los de MD5? Por qu? 5. Cul es la diferencia de bits en los hash encontrados en el apartado 2b) que nos entrega la Calculadora de Windows? Ser representativo este valor? 6. Cul es la diferencia exacta de bits entre los dos hash encontrada en el apartado 2b)? En qu porcentaje ha cambiado el segundo? 7. Es posible hacer un seguimiento por bloques y por pasos de un archivo de varios MBytes? Por qu? 8. Qu ha sucedido con el tiempo de clculo necesario en SHA-1 comparado con el de MD5? Por qu? 9. A qu valor tiende el resultado de la simulacin de la paradoja del cumpleaos? 10. Cmo crees que se podra utilizar esta paradoja del cumpleaos en un ataque a las funciones hash?

III. CryptoIDEA Autor: Da. Esther Snchez Mellado


El software Realizado en Delphi que permite cifrar y descifrar con el algoritmo IDEA as como Realice un seguimiento del proceso y la generacin de claves. Muestra adems los archivos en nmeros enteros y en binario. Incluye un sistema de gestin de bases de datos tipo Paradox 5.0 para el mantenimiento (creacin, modificacin, borrado, etc.) de claves y un apartado de herramientas para clculos tpicos dentro de un cuerpo, en especial mod 65.536 y mod 65.537, valores usados en IDEA. Instalacin: Descomprima el archivo [Link] en una carpeta de instalacin temporal. Ejecute el programa de instalacin [Link] y elija como carpeta C:\Criptolab\CryptoIDEA. Borre luego todos los archivos de instalacin de esa carpeta temporal.

PRACTICA IDEA MODO ECB


Apartado 1: Configuracin bsica y gestin de claves a) Observe desde el men Herramientas de CryptoIDEA las opciones del programa. Revisa y recorre el men Ayuda del mismo. b) Desde el men Claves, crea estas tres claves: K = ClaveBaja siendo su valor: 3333. K = TodasLetrasA siendo su valor: AAAAAAAAAAAAAAAA. K = practicaIDEA siendo su valor: EstaClaveEsBuena. c) Compruebe que el gestor de claves funciona adecuadamente, permitiendo insertar registros, borrarlos, modificarlos, recorrerlos, etc. d) Con la opcin Archivo crea un archivo con el siguiente texto y gurdalo con el nombre [Link] en la carpeta del programa. M = Este archivo de texto servir para hacer algunas pruebas con el algoritmo IDEA. e) Con un archivo cuyo texto sea slo el carcter A y la clave K = AAAAAAAAAAAAAAAA, Hacer un

Prof. Giovanna Garrido 2012

seguimiento de los valores de cifrado y descifrado. Repita la operacin para la misma clave pero ahora el archivo tendr primero dos caracteres AA y luego tres caracteres AAA. Apartado 2: Cifrado de archivos y seguimiento del algoritmo a) Cifrado el fichero [Link] que has creado con la clave ClaveBaja y Compruebe que se descifrado correctamente. Observe en ambos casos la salida en nmeros de bloques de 16 bits y el texto en ASCII. b) Hecho esto, Hacer un seguimiento de las claves de cifrado y descifrado para dicha clave y anota sus valores. Observe el seguimiento del algoritmo de cifrado y descifrado. c) Repita los apartados a) y b) primero para la clave TodasLetrasA y luego para la clave practicaIDEA. c) Descifrado el fichero [Link] con la clave K = unaclavede128bit. Compruebe que el archivo recuperado se corresponde al documento en Word [Link].

INFORME
1. Qu ha sucedido con las 52 claves de cifrado que se generan con la clave K = 3333? 2. Justifica todas las subclaves que se generan al cifrar con las otras dos claves creadas, la clave K = AAAAAAAAAAAAAAAA y la clave K = EstaClaveEsBuena. Comente los resultados encontrados. 3. Qu puede Comentar sobre estos cuatro bloques de 16 bits 6975 42799 32023 38251 que se Observen en el archivo cifrado [Link]? Hay otros bloques similares? 4. Para la clave K = EstaClaveEsBuena, apunta las claves de cifrado y las de descifrado y Compruebe que estas ltimas son inversas de las primeras en funcin de la operacin de entrada: suma, multiplicacin y or exclusivo. 5. Saca conclusiones de los cifrados que has hecho en el apartado 1e).

IV. ExpoCrip: Software para Generacin de Claves, Cifrado y Firma RSA, ElGamal y DSS Autor: Da. Olga Mariana Gonzlez Ming
Software para prcticas de cifrado exponencial de nmeros decimales, valores hexadecimales y texto ASCII, Realcelo con libreras propias y eficiente para operaciones de hasta centenas de bits. Para el sistema RSA, incluye cifrado y firma digital, adems de la generacin manual de claves, entregando en este caso las claves parejas y mensajes no cifrables, as como ataque al mdulo n por factorizacin con mtodo Pollard Rho, ataque a la clave privada por la paradoja de cumpleaos y ataque al mensaje en claro secreto por el cifrado cclico. En cuanto al sistema ElGamal incluye generacin de claves, cifrado y firma digital, as como su variante de firma DSS, Digital Standard Signature. En este apartado se incluye como ayuda el clculo de raz primitiva del cuerpo de forma automtica. La aplicacin incluye adems un men de herramientas con lista de nmero primos, lista de nmero primos fuertes, test de Miller-Rabin, descomposicin de un nmero por factores primos y clculo de races primitivas. Contempla tambin una amplia Ayuda contextual del manejo de la aplicacin, conceptos tericos y ejemplos. Generacin manual de claves RSA. Cifrado y descifrado RSA de texto y nmeros. Obtencin de claves parejas. Clculo de mensajes no cifrables. Ataque al mdulo por factorizacin con mtodo Pollard Rho. Ataque a la clave privada por paradoja del cumpleaos. Firma digital RSA. Generacin manual de claves ElGamal. Cifrado y descifrado ElGamal de texto y nmeros. Firma digital ElGamal y comprobacin de la misma. Firma digital DSS y comprobacin de la misma.

Prof. Giovanna Garrido 2012

Instalacin: Copie el archivo [Link] en una carpeta de instalacin e instale el programa en C:\Criptolab\ExpoCrip.

V. genRSA: Software para Generacin de Claves y Cifrado RSA Autor: D. Juan Carlos Prez Garca
Software basado en la librera pblica Crypto++ de Wei Dai que permite Realizar los clculos correspondientes a la generacin del par de claves asimtricas RSA, partiendo de dos primos con igual nmero de bits o ligeramente distintos. Estos valores se pueden generar manualmente o bien de forma automtica por el programa. Para valores de p y q desde 16 -valor mnimo- hasta 32 bits, stos pueden ser decimales o hexadecimales; para valores mayores hasta una clave de 2048 bits, los datos de la clave debern ser hexadecimales. Propuesta o Calcule automticamente una clave pblica, el programa Calcule la clave privada as como todas las claves parejas y el nmero de mensajes no cifrables. Terminada esta operacin, se puede encontrar los valores de estos mensajes no cifrables, atacar el valor del mdulo n por factorizacin de primos cercanos, atacar la clave privada por la paradoja de cumpleaos o bien atacar el mensaje en claro secreto por medio del cifrado cclico. En cada caso, la salida genera un documento en html. Permite cifrar y descifrar nmeros o texto. En el caso de nmeros, se incluye la opcin de descifrado a travs del Teorema del Resto Chino. Incluye un test de Miller-Rabin y Fermat adems de una Ayuda sobre el uso de la aplicacin y conceptos tericos, por men o bien a travs de la tecla F1. Instalacin: Copie el archivo [Link] en una carpeta C:\Criptolab\genRSA. Al descomprimirlo, obtendr automticamente el archivo ejecutable y el archivo de ayuda de la aplicacin. Deber: o o o o Cmo se lleva a cabo la Generacin de claves RSA? Realice Pruebas de factorizacin de nmeros grandes. Muestre la Codificacin y descodificacin con el criptosistema RSA. Cmo se lleva a cabo el Intercambio de mensajes RSA con claves inseguras. Aplique el Criptoanlisis. Intercambio de mensajes RSA con claves seguras.

VI safeDES: Software de Ataque a la Fortaleza del Estndar DES Autor: D. Miguel ngel Jimnez Muoz
Cifrado, descifrado y ataques por fuerza bruta de forma similar a los desarrollados por RSA Challengue al algoritmo Data Encryption Standard DES. Operaciones con archivos o bien texto claro por teclado. Los textos y las claves pueden introducirse en formato ANSI o hexadecimal. Si bien el algoritmo implementa slo el modo Libro Electrnico de Cdigos ECB, es posible comprobar los ataques de los que fue objeto en modo CBC con el simple uso la Calculadora cientfica de Windows en versiones 2000 o superiores. La aplicacin cuenta una ayuda que permite el mejor seguimiento de las prcticas con este software. Instalacin: Copie el archivo [Link] en una carpeta de instalacin. Al descomprimirlo, en dicha carpeta encontrar el archivo [Link]. Ejecute este archivo e instale el programa en la carpeta C:\Criptolab\safeDES. Una vez instalado el programa borre los archivos de la carpeta de instalacin.

PRCTICA DES MODO ECB


Apartado 1: Comprobacin del funcionamiento de DES Compruebe que se cumple la cifrado en modo ECB de los siguientes mensajes con las claves indicadas. Observe que hay valores en formato hexadecimal y otros en ASCII. a) Si cifradomos M hex = 8787878787878787 con la clave K hex = 0E329232EA6D0D73 se obtiene: C hex = 0000000000000000. b) Si cifradomos M hex = 0000000000000000 con la clave K hex = 0123456789ABCDEF se obtiene: C hex = D5D44FF720683D0D.

Prof. Giovanna Garrido 2012

c) Si cifradomos MASCII = Probndolo con la clave KASCII = 66666666 se obtiene: CASCII = WBH{=w+C. d) Repita la operacin del apartado c) ahora con la clave KASCII = 77777777 y Observe qu sucede. Apartado 2: Operaciones de cifrado con teclado y archivos de texto a) Cifrado el mensaje el mensaje M con la clave K. Recupera luego el texto original con la ayuda del portapapeles a partir del criptograma, tanto en formato ASCII como en formato hexadecimal. M = Esta es una prueba de teclado K = UnaTecla. b) Repita el punto anterior ahora con este nuevo mensaje y Observe lo que sucede al recuperar el texto desde un criptograma en ASCII con el portapapeles. M = A ver qu pasa con esta segunda prueba de teclado. c) Usando la clave K = CLAVEDES, cifrado el mensaje de 8 caracteres M = CIFRADODOR. Repita la operacin de cifrado ahora con el mensaje de 12 caracteres M = CIFRADODOR DES. Observe semejanzas y/o diferencias a travs de la salida en hexadecimal de cada cifrado. d) Intente descifrar el fichero [Link] que encontrars en la carpeta textos, llamando al fichero de salida [Link] si nos han dicho que la clave puede ser cualquiera de las siguientes combinaciones de 8 caracteres: Frank123; MaryMary; Frankens; marymary; 1234Mary. e) Observe el fichero [Link] descifrado en el apartado anterior, tanto en hexadecimal como en formato de texto. Edtalo luego con el Bloc de Notas o WordPad y compralo con el archivo original [Link] que encontrars en la carpeta textos. Apartado 3: Operaciones de cifrado de archivos con formato a) Cifrado el fichero [Link] con la clave K = GHermano. El fichero de salida se llamar [Link]. Observe su salida en hexadecimal. b) Descifrado el archivo [Link] y compara el documento recuperado con el documento original en Word. c) Observe la salida en hexadecimal y en ASCII del fichero descifrado y saca conclusiones. d) Descifrado el fichero [Link] que encontrars en la carpeta textos y que se ha cifrado con la clave K hex = 0123456789ABCDEF. Cambia el nombre del archivo descifrado [Link] por [Link] y Observe qu sucede cuando lo ejecutas.

INFORME
1. Justifica lo sucedido en el apartado 1d). 2. Qu ha sucedido en el apartado 2b)? Por qu? 3. Segn lo visto en el apartado 2c) qu puedes decir con respecto al relleno del bloque de texto? 4. Con qu clave has podido descifrar el fichero [Link] del apartado 2? 5. Qu sucede con los valores en hexadecimal del comienzo y final del fichero con formato Word que se ha cifrado con DES en modo ECB? 6. A qu corresponden los bloques repetidos del punto anterior segn el documento descifrado? 7. Comente lo Observado en el apartado 3d). Hay tambin bloques repetidos en este archivo? 8. Cmo podras atacar una cifrado DES ECB de acuerdo con la repeticin de bloques vista en esta prctica?

PRACTICA DEBILIDADES Y ATAQUES A DES


Apartado 1: Operaciones de cifrado con claves dbiles y semidbiles En este apartado debes hacer uso del portapapeles y, en su caso, usar la entrada de texto en hexadecimal para asegurar un correcto funcionamiento. a) Cifrado este mensaje con todas las claves dbiles de DES que se indican y Compruebe que se cumple la siguiente expresin: EK[EK(M)] = M.

Prof. Giovanna Garrido 2012

M = Vamos a ver qu pasa con estas claves. Las claves dbiles son: K1 hex = 0101010101010101 K2 hex = FEFEFEFEFEFEFEFE K3 hex = E0E0E0E0F1F1F1F1 K4 hex = 1F1F1F1F0E0E0E0E b) Cifrado este mensaje con todas las claves semidbiles de DES y Compruebe que se cumple la siguiente expresin: EK1[EK2(M)] = M. M = Estas claves tampoco son recomendables. Los pares de claves semidbiles son: K1 hex = 01FE01FE01FE01FE K1 hex = 1FE01FE00EF10EF1 K1 hex = 01E001E001F101F1 K1 hex = 1FFE1FFE0EFE0EFE K1 hex = 011F011F010E010E K1 hex = E0FEE0FEF1FEF1FE Apartado 2: Ataque Monousuario a) Primero cifrado el mensaje M con la clave K que se indica: M = Prueba de ataque monousuario. K hex = 1111111122222222. b) Ahora con la ayuda del portapapeles, Realice un Ataque Monousuario al texto anteriormente cifradodo con una bsqueda delimitada de claves, siendo las claves inicial y final las que se indican: Clave inicial: Ki hex = 1111111122000000. Clave final: Kf hex = 1111111122333333. c) Observe todas las claves posibles, el tiempo que tarda en encontrarlas y la tasa de bsqueda del programa.. d) Observe desde la ayuda del programa cmo se eligen estas claves inicial y final de forma ptima, activando cualquier ventana de ataque, pulsando luego F1y finalmente activando el enlace que vers en Clave Inicial o Clave Final. Apartado 3: Ataque Simulacin Multiusuario a) Vuelva a repetir el ataque a la cifrado del mensaje anterior usando ahora el modo Ataque Simulacin Multiusuario con dos procesos. M = Prueba de ataque monousuario. K hex = 1111111122222222. Clave inicial Ki hex = 1111111122000000. Clave final Kf hex = 1111111122333333. b) Repita el punto anterior usando ahora en el ataque desde 3 hasta 10 procesos. Observe qu proceso es el que logra romper la clave. Apartado 4: Ataque Multiusuario Si tienes posibilidad de trabajar en una red con direcciones IP, vas a Realizar un ataque multiusuario real sobre una clave delimitada en trminos similares al que has simulado con una sola mquina. a) Para comprender cmo funciona la aplicacin, en este caso debers elegir t mismo un mensaje, la clave de cifrado y las claves iniciales y final del ataque. Definido el mbito de ataque, una mquina actuar como servidor ejecutando la opcin Ataque K2 hex = FE01FE01FE01FE01 K2 hex = E01FE01FF10EF10E K2 hex = E001E001F101F101 K2 hex = FE1FFE1FFE0EFE0E K2 hex = 1F011F010E010E01 K2 hex = FEE0FEE0FEF1FEF1

Prof. Giovanna Garrido 2012

Servidor y las dems mquinas actuarn como cllientes ejecutando cada una de ellas la opcin Ataque Cliente. Apartado 5: Simulacin del Ataque DES Challenge III En el tercer desafo RSA al DES, el texto cifrado era [Link], que se muestra adems agrupado en bloques de 64 bits para una mejor visualizacin y un trabajo con bloques ms cmodo. El modo de cifrado en este caso era de tipo CBC, Encadenamiento de Bloques Cifrados, y el vector inicial IV usado as como la clave K encontrada eran: IV hex = DA4BBEF16B6E983D. K hex = 922C68C47AEADFF2. a) Encuentra el primer bloque del mensaje original haciendo uso de la Calculadora de Windows para la operacin XOR necesaria, puesto que el programa safeDES trabaja en modo ECB, Electronic CodeBook. Nota: si usas Windows 98, recuerda que la Calculadora trabaja slo con 32 bits. b) De la misma forma que en el apartado anterior, encuentra ahora el mensaje completo de ese desafo. El texto completo puedes verlo en la ayuda correspondiente del programa safeDES.

INFORME
1. Son claves dbiles los siguientes valores? Por qu? K hex = 0000000000000000; K hex = FFFFFFFFFFFFFFFF. 2. Justifica porqu son claves dbiles estas dos: K hex = E0E0E0E0F1F1F1F1; K hex = 1F1F1F1F0E0E0E0E. 3. Qu sucede si cifradomos un mensaje con la clave K1 y descifradomos el criptograma con la clave K2 indicadas ms abajo? Qu otros casos hay similares? Justifica lo ocurrido. K1 hex = FFFFFFFFFFFFFFFF; K2 hex = FEFEFEFEFEFEFEFE. 4. Calcule y justifica el nmero de claves que debe probar el programa en su ataque del apartado 2b), comprendidos entre los valores hexadecimales 1111111122000000 y 1111111122333333. 5. Por qu aparecen muchas claves vlidas? Cuntas hay y por qu? 6. Luego de hacer una tabla con los tiempos encontrados en el ataque multiusuario simulado, saca conclusiones y justifica esos valores. 7. Compara (slo si has Realizado este ataque) el tiempo empleado en romper la clave en un ataque multiusuario real y uno simulado. Qu conclusiones puedes sacar? 8. Si se Realicen ataques con mquinas de procesadores con diferentes velocidades, qu sucede con la tasa de bsqueda de claves? Comntalo con otros compaeros. 9. Segn los resultados encontrados en el ataque Realizado sobre una pequea porcin de la clave DES, cunto tardara en media tu computador en romper una clave de 56 bits? 10. Comente y justifica las operaciones Realizadas en el apartado 5a) y 5b) para obtener el mensaje original. 11. Qu diferencia sustancial encuentras entre los ataques hechos con este programa safeDES y los que se Realizaron en los DES Challenge o desafos de RSA?

Prof. Giovanna Garrido 2012

Herramientas de cifrado

Aplicar la herramienta TRUECRYPT ([Link] en la cual debe reflejar en el informe: algoritmos de cifrado que utiliza, mostrar ejemplos de cifrado/descifrado de documentos, disco, etc, con RSA, DES, AES Aplicar la herramienta HashCalc ([Link] para la realizacin de clculo de funcin Hash. Demuestre el uso de dicha herramienta con ejemplos explicativos del mismo. Aplicar CRYPTOOL ([Link] en la cual debe reflejar en el informe: algoritmos de cifrado que utiliza, que operaciones de cifrado se pueden dar, mostrar ejemplos de cifrado/descifrado de documentos, disco, etc., con RSA, DES, AES

Prof. Giovanna Garrido 2012

También podría gustarte