Вы находитесь на странице: 1из 51

Introduccin I t d i a la l Criptografa

M. en C. Eduardo Rodrguez Escobar CIDETEC - IPN

Contenido

Terminologa. Proceso Criptogrfico. Componentes de la Seguridad de Datos en un Sistema Criptogrfico. Criptoanlisis. Clasificacin de la Criptografa.

Criptografa Clsica.
Por sustitucin. Por transposicin. De una sola vez.

poca Intermedia.
Mquinas q Cifradoras.

Criptografa Moderna.
De flujo. De Bloque. De llave pblica.

Terminologa

Criptologa: La palabra criptologa proviene de las palabras Criptologa: griegas i K Kryptos t y Logos L , y significa i ifi estudio t di de d lo l oculto. oculto lt . Criptografa: Proviene de las palabras griegas Kryptos y Criptografa: Graphos, y significa ocultado (cifrado) de mensajes. mensajes. Criptoanlisis: Arte y ciencia que intenta romper el cifrado Criptoanlisis: (descubrir el texto claro). claro). T t claro: Texto claro l : Mensaje M j que se puede d leer. l leer . Cifrado o Encriptado: Encriptado: Proceso de transformacin del texto claro que lo vuelve ilegible ilegible. . Texto cifrado: cifrado: Mensaje en texto claro que ha sido cifrado. cifrado. Descifrar o Desencriptar: Desencriptar: Proceso que permite obtener el texto claro a partir del texto t t cifrado. cifrado if d .

Proceso criptogrfico
Llave a) Encriptado o cifrado de datos

" Hola " Texto claro

Proceso de cifrado

" 3#4tr@(/k " Texto cifrado Llave

b) Desencriptado o descifrado de datos

" 3#4tr@(/k " Texto cifrado

Proceso de descifrado

" Hola " Texto claro

Componentes de la Seguridad de Datos en un Sistema Criptogrfico

Privacidad o confidencialidad confidencialidad: : Estar seguro que un mensaje j o una conversacin i no pueda d ser descifrada d if d por un tercero. tercero. Integridad g de datos datos: : La informacin del mensaje j no puede d ser cambiado b d en el l proceso de d envo. envo . Autenticacin (remitente y la persona que va a recibir el correo, , p pueden confirmar la identifica identifica-cin y el origen del mensaje) mensaje). . No-repudiacin (el remitente no puede reclamar que Nono es el remitente) remitente). . Funcin 1 a 1 (Existe una y solo una funcin que nos lleva del dominio X [texto claro] al dominio de Y [texto cifrado] y viceversa) viceversa). .

Criptoanlisis

Objetivo: j recuperar p el texto claro sin tener acceso a la llave de cifrado. Un intento U te to de criptoanlisis c ptoa s s es llamado a ado un u ataque. ataque . El criptoanalista tiene conocimiento detallado del algoritmo y su implementacin
Lo nico secreto es la llave de cifrado. No se puede depender del desconocimiento del algoritmo.

Clasificacin de la Criptografa p g

Clsica, Clsica convencional, convencional simtrica o de clave secreta Moderna, asimtrica o de clave pblica

Clasificacin de la Criptografa p g

Criptografa clsica
Cifrados por sustitucin Cifrados por transposicin Rellenos de una sola vez

Criptografa moderna
Algoritmos simtricos Algoritmos asimtricos

Criptografa clsica p g
Llamamos as a todos los sistemas de cifrado anteriores a la II Guerra Mundial, o lo que es lo mismo, al nacimiento de las computadoras electrnicas. electrnicas . Se basa en algoritmos sencillos y claves muy largas g para asegurar p g seguridad. seguridad g . Presupone p la existencia de claves previamente establecidas por ambas partes del proceso de comunicacin comunicacin. . Perdieron su eficacia, eficacia debido a que son fcilmente criptoanalizables por los ordenadores. ordenadores. Todos los algoritmos criptogrficos clsicos son simtricos

Criptografa clsica p g
Cifrados por sustitucin
Se basan en la sustitucin de cada letra por otra letra para disfrazarla, pero conservan el orden de los smbolos de texto normal normal. . Atbash Cifrado del Csar Mtodos de cifrado monoalfabticos Mtodos de cifrado polialfabticos

Criptografa clsica p g
Cifrados por sustitucin Atbash Alfabeto hebreo al revs (500 AC)

Descubierto en los papiros de Qumran en el libro de Jeremas Equivale a A Z, B Y,

gato t tzgl t l

Criptografa clsica p g
Cifrados por sustitucin Cifrado del Csar (Imperio Romano, 4949-60 AC)

letra = letra + 3

a b c d e f

d e f g h i

g h i j k l

k l

m n o p q r s t

u v w x y z a b c

m n o p q r

u v w x y z

gato jdwr

Criptografa clsica p g
Cifrados por sustitucin Mtodos de cifrado monoalfabticos
Sustituyen cada letra por otra que ocupa la misma posicin en un alfabeto desordenado y esta correspondencia se mantiene a lo largo de todo el mensaje. As se consiguen tantas claves como posibilidades de alfabetos hay. El p problema est en cmo recordar la clave ( (el alfabeto desordenado). El mejor sistema de criptoanlisis para romper el algoritmo es el estadstico. Se puede romper va anlisis de frecuencia de letras

Criptografa clsica p g
Cifrados por sustitucin Mtodos de cifrado monoalfabticos
El p procedimiento es el siguiente: g Se busca una palabra (clave) fcil de recordar y se le quitan las letras duplicadas. SEGURIDAD SEGURIDA Se aaden al final de la palabra las restantes letras del alfabeto (sin duplicar letras). SEGURIDABCFHJKLMNOPQTVWXYZ

Criptografa clsica p g
Cifrados por sustitucin Mtodos de cifrado monoalfabticos
Se ordenan en una matriz cuya primera fila es la palabra clave SEGUR I DA BCFH JK LM NOPQTVWX YZ El nuevo alfabeto se lee por columnas y se alinea con el original:
a b c d e f g h i j k l m n o p q r j t i s t u v w x y z w a m x

s b n y e c o z g f

p u h q r

k v d l

Ejemplo: el mensaje ataque se convertira en SVSTDE Ejemplo: gato osvq

Criptografa clsica p g
Cifrados por sustitucin Mtodos de cifrado polialfabticos (siglo XV) Se usan varios cifradores sustitutivos monoalfabticos, dependiendo de la posicin de la letra en el texto. Leon Battista Alberti inventa y publica el primer cifrador polialfabtico (1459)

Este cifrador no fue roto hasta el siglo XIX.

Criptografa clsica p g
Cifrados por sustitucin Mtodos de cifrado polialfabticos (siglo XV)
Un ejemplo j p tpico p es el Cifrado de Vignere: g - Se basa en una tabla con un alfabeto por cada letra del abecedario Mtodo:

Se busca una palabra clave fcil de recordar. Se escribe la p palabra debajo j del texto en claro, , repitindose p tantas veces como sea necesario. Cada letra del texto en claro se codifica con el alfabeto de la tabla marcado por la letra inferior, o sea, la letra de la clave que corresponde. corresponde

Criptografa clsica p g
Cifrados por sustitucin Mtodos de cifrado polialfabticos (siglo XV)

- Ejemplo:

Clave: ADIOS Texto claro : ESTO ES CRIPTOLOGIA Clave sec.: ADIO SA DIOSADIOSAD Criptograma: EVBC WK FZEHTRTCYID gato gdbe

Criptografa clsica p g
Cifrados por transposicin
Se basa en la reordenacin de las letras de un texto de acuerdo a una palabra clave escogida que no contiene letras repetidas. repetidas Mtodo:

Se puede criptoanalizar efectuando un estudio estadstico sobre la frecuencia de aparicin de pares y tripletas de smbolos

Con la clave se numera las columnas, estando la columna 1 bajo la letra de la clave ms cercana al inicio del alfabeto, y as sucesivamente. El texto normal se escribe horizontalmente en filas. El texto cifrado se lee por columnas, comenzando por la columna cuya letra clave es ms baja

Criptografa clsica p g
Cifrados por transposicin
Ejemplo: o Texto normal:
Este es un trabajo para la asignatura de Redes"
V 5 E e I 3 s s t a j r r o a a n a R s e a s t d d D 1 t E 2 e u a n b p l i u e e O 4

Clave: Video Texto cifrado:


T ROAAA E EUA STDD SSTJR NAR NBPLIUEE EE AAAGR S

a a g r

Criptografa clsica
(Mxico y la 1era. Guerra Mundial)
El telegrama Zimmerman

1917, Primera Guerra Mundial Alemania usa submarinos para hundir barcos americanos. americanos
Lo anterior puede provocar el que USA entre a la guerra.

Arthur Zimmermann, Ministro alemn del Exterior, se le ocurre como retrasar la entrada de USA en la guerra.
Propone una alianza con Mxico y persuadir al Presidente Carranza para que invada USA reclamando Texas, Nuevo Mexico y Arizona. A i Alemania apoyara a Mxico militar y financieramente. El Presidente Mexicano deba persuadir a Japn para que ataque USA. USA

Criptografa clsica
(Mxico y la 1era. Guerra Mundial)

El telegrama Zimmerman
Telegrama enviado va el cable del Atlntico.

Mensaje del 17 de enero de 1917. Los criptoanalistas britnicos Montgomety & de Grey descifran parte del mensaje.
Usan el code book de un diplomtico alemn. El libro se obtuvo de los bienes confiscados a Wihelm Wassmus, el Vicecnsul alemn en Persia, el cual dejo sus oficinas apresudaramente cuando las fuerzas britnicas avanzaron. El telegrama completo es obtenido posteriormente del mismo Zimmerman.

Criptografa clsica p g
El telegrama Zimmerman

Criptografa clsica p g
El telegrama Zimmerman
Tenemos la intencin de comenzar la guerra submarina sin restricciones a partir del primero de febrero. Se intentar, no obstante, que los Estados Unidos se mantengan neutrales. Para el caso de que no sea posible lograrlo, ofrecemos a Mxico una alianza sobre las siguientes bases: guerra conjunta, tratado de paz conjunto, generosa ayuda financiera y acuerdo por nuestra parte de que Mjico podr reconquistar los territorios de Tejas, Nuevo Mjico y Arizona perdidos en el pasado. Dejo los detalles a su excelencia. Srvase usted t d comunicar i l lo anteriormente t i t di dicho h al l presidente, id t en el l ms absoluto b l t secreto, t tan t pronto como la declaracin de guerra contra Estados Unidos sea algo seguro, y sugirale que invite inmediatamente, por iniciativa propia, a Japn para unirse y que haga de intermediario entre nosotros y Japn. Srvase advertir al presidente que el uso despiadado de nuestros submarinos ofrece ahora la perspectiva de que Inglaterra sea forzada a la paz en pocos meses. Acuse recibo. Zimmermann. Fin del telegrama.

Criptografa clsica p g
Rellenos de una sola vez
One Time Pad
s e c r e t o 18 5 3 17 5 20 15 (posicin alfabtica) OTP -15 8 1 12 19 5 6 (desplazamiento) ---------------------------------------------------------3 13 4 3 24 25 21 (nueva posicin) c m d c x y u (mensaje encriptado) M Mensaje j

Es 100 100% % seguro g si el OTP se usa una sola vez y se compone de nmeros aleatorios no pre predecibles. decibles .

Criptografa clsica p g
Rellenos de una sola vez
One Time Pad
Usado por:

Muchos algoritmos dicen ser seguros por ser un OTP


Espas de la URSS y de la CIA telfono rojo Washington Mosc

Mquinas cifradoras trataron de parecerse a un OTP, primero mecnicamente y luego electrnicamente

Si el OTP no es realmente aleatorio, no es OTP PseudoPseudo -OTP = pseudo pseudo-seguridad

poca intermedia
Mquinas Cifradoras (1920)

Componente bsica = rotor alambrado


M A

El rotor rota despus de cada letra


sustitucin polialfabtica, perodo=26

poca intermedia
Mquinas Cifradoras

Se pueden encadenar varios rotores

Cada uno hace rotar al siguiente cuando completa una vuelta

poca intermedia
Mquinas Cifradoras

Dos rotores
Perodo = 676 (26 x 26)

Tres rotores
Perodo = 17.576 (26 x 26 x 26)

Llave = alambrado del rotor (p (por lo general, fijado cuando se fabrica el rotor) Llave = p posicin inicial de los rotores

poca intermedia
Rotores Famosos

Co e te M 09 ( UU ) Converter M-209 (EE.UU.) TYPEX (Inglaterra) Rojo, j , Prpuro p ( (Japn) p ) Enigma (Alemania) Muchos libros escritos sobre Enigma
Seizing the Enigma, Kahn Ultra l G Goes to War, Levin i The Hut Six Story, Welchman The Ultra Secret, Secret Winterbothm

Criptografa Moderna p g

Cifradores de flujo
RC4

Cifradores de Bloque
DES

Cifrado de Llave Pblica ( (asimtrica) )

Criptografa Moderna p g

Cifradores de flujo
Se usa una llave binaria de flujo j con un XOR.

Texto Llave Texto Llave Texto

claro de flujo cifrado (XOR) de flujo claro (XOR)

1 0 1 0 1

0 1 1 1 0

0 0 0 0 0

1 1 0 1 1

0 1 1 1 0

1 0 1 0 1

1 1 0 1 1

Dos XORs con un mismo bit se cancelan.

Criptografa Moderna p g

Cifradores de flujo
Desventajas:

Conociendo la llave de flujo y el texto cifrado, se obtiene el texto claro, y Conociendo el texto claro y el texto cifrado, se obtiene la llave de flujo En una operacin XOR, conociendo 2 de los 3 elementos, se obtiene el tercero

Luego, nunca se puede volver a usar la misma llave. No es buena idea usar este tipo de cifrador.

Criptografa Moderna p g

Cifradores de flujo
RC4
Cifrador de flujo optimizado para una eficiente implementacin en software. Con llave de 2048 bits y resultado de 8 bits. Algoritmo era un secreto industrial de RSADSI. En 1994 se le someti a ingeniera inversa y su cdigo fuente fue publicado en Internet. Internet while (length-(length--) ) { x++; ++ sx = state[x]; t t [ ] y + += sx; sy = state[y]; state[y] = sx; state[x] = sy; *data++ ^= state[ (sx+sy) & 0xFF ]; }

Criptografa Moderna p g

Cifradores de flujo
RC4
Es extremadamente rpido. Se usa en SSL, Lotus Notes, cifrado de password en Windows, MS Access, Adobe Acrobat, PPTP, Oracle Secure SQL,

Se suele usar de manera que hace posible recuperar la llave de cifrado. cifrado Todos los productos de Microsoft que lo usan lo han implementado mal al menos una vez.

Demuestra q que un cifrador no p puede ser usado como caja negra mgica. Recomendacin: evitarlo ya que es fcil equivocarse.

Criptografa Moderna p g

Cifradores de Bloque
Cifran un bloque de datos de tamao fijo con una llave de cifrado de tamao fijo. Se originan a comienzo de los 70s en IBM, que desarrollaba sistemas seguros para los Bancos. Bancos El primero conocido fue Lucifer, con llave y bloque de 128 bits.

Nunca fue seguro en ninguna de sus versiones


I llave f() f() cifrado D

Criptografa Moderna p g

Cifradores de Bloque
Funcin f() es una transformacin simple, simple no necesariamente reversible. Cada p paso se llama un round. Mientras ms rounds se tengan, ms seguro es (hasta un cierto lmite). El ms famoso ejemplo de este diseo es DES:

16 rounds. Llave de 56 bits. Bloque de 64 bits (I,D = 32 bits).

Criptografa Moderna p g

DES (Data Encryption Standard)


En 1972 1972, NBS (National Bureau of Standards), Standards) ahora NIST (National Institute of Standards and Technology) inicia un programa para proteger datos en los computadores y lograr la transmisin segura de datos en una red. E En mayo de d 1973, 1973 NBS publica bli un requerimiento i i t de d un algoritmo criptogrfico que:

Ofrezca un alto nivel de seguridad, Se especifique completamente y sea entendible, La seguridad dependa slo de la llave, Debe estar disponible para todos los usuarios, Debe ser eficiente, implementable electrnicamente a un costo razonable, Debe ser factible de validar y se debe poder exportar

Ningn algoritmo presentado cumpla todo esto.

Historia de DES DES

En agosto g de 1974, , se publica p un segundo g llamado:


IBM present a Lucifer. Aparentemente cumpla con todo. todo NBS le pide a la NSA (National Security Agency) ayuda en la evaluacin de la seguridad del algoritmo. En E marzo de d 1975, 1975 NBS publica bli el l algoritmo l it (modificado ( difi d por la NSA) y pide comentarios

Muchos comentarios sospechaban de la NSA (cambio del largo de la llave de 112 a 56 bits bits, detalles del algoritmo)

En noviembre de 1976, DES es adoptado como un estndar federal en los EE.UU.

Rol de la NSA en DES

Mucho tiempo p despus, p , se supo p que: q


Hubo un malentendido entre la NSA y la NBS. La NSA pens que DES se iba a implementar en hardware solamente. solamente El estndar habla de hardware, pero la publicacin del algoritmo era tan detallada que permiti implementarlo en software. software Off the record, NSA dijo que DES fue uno de los errores ms grandes que cometi y que nunca habra dejado que se publicara si hubiesen sabido que se iba a implementar en software. Ahora el mundo tena un algoritmo sancionado como seguro por la NSA NSA, algo indito. indito

Revisiones de DES

Cada 5 aos, , NBS deba ratificar a DES como estndar o proponer cambios:
En 1983, DES fue ratificado sin problemas. En 1987, , la NSA dijo j q que no iba a ratificar el estndar y propuso reemplazarlo por una serie de algoritmos secretos que slo estaran disponible en hardware controlado. Los bancos reclamaron que el uso de DES era masivo y no poda ser reemplazado. reemplazado Fue ratificado pero NBS dijo que sera la ltima ratificacin En 1993, NBS (ahora llamada NIST) se ve obligada a ratificar nuevamente DES al no haber alternativa. En esta ratificacion aparece el llamado 3DES o tripletriple-DES, con una seguridad de 2168 y empleado actualmente como standard bancario.

DES DES

Existen 4 formas oficiales (FIPS PUB 81) de extender DES p para cifrar ms de 64 bits:
ECB (Electronic Code Book): cada bloque de 64 bits se cifra individualmente. Dos bloques en claro idnticos generan el mismo bloque g q cifrado. CBC (Cipher Block Chaining): se hace XOR de cada bloque con el bloque cifrado anterior antes de cifrar. Al primer bloque p q se le hace xor con un valor secreto inicial de 64 bits. Dos bloques en claro idnticos no generan el mismo bloque cifrado. Es ms robusto que ECB. CFB ( (Cipher p Feedback Block) ) y OFB ( (Output p Feedback Block) permiten cifrar n bits donde n es arbitrario con una extensin del DES original.

Cifrado de Llave Pblica


Nuevo paradigma de cifrado publicado en 1976. Basado en la Teora de Nmeros. Seguridad de estos algoritmos se basa en dificultad de factorizar nmeros grandes. grandes Varios algoritmos de este tipo han sido inventados, pero slo unos pocos han demostrado ser seguros hasta ahora. Dos llaves: una pblica y una privada (secreta)
Todo lo que se cifra con una llave slo se puede descifrar con la otra llave.

RSA es el ms conocido.
Rivest, Shamir y Adleman (1978, MIT)

RSA

Llave p pblica y privada p se obtienen de nmeros primos grandes (100(100-200 dgitos y ms). Quebrar RSA equivale a factorizar el productos de d de dos d estos t nmeros primos. i Para generar ambas llaves, se escogen 2 nmeros primos grandes aleatorios p y q (del mismo tamao). Se calcula el producto n = pq (n)=(p - 1)(q - 1) ya que p y q son primos Se escoge la llave de cifrado e tal que:
e < (p - 1)(q 1) y es primo relativo de (p 1)(q 1)

RSA vs. DES

Las llaves RSA (512, 1024, 2048 bits) son mucho ms grandes que las llaves DES
Una llave RSA de 1024 bits equivale ms o menos a una llave 3DES (112 bits) en cuanto a la dificultad en adivinar la llave.

RSA en software es 100 veces ms lento que DES


Nunca podr ser tan rpido como DES por los algoritmos i involucrados l d y el l tamao t de d las l llaves. ll RSA no se puede usar directamente para cifrar trfico en una red de alta velocidad (10, 100 Mbps o ms).

MD5 (Message Digest)


Es una versin mejorada de MD4 (1990) que Ron Rivest (de RSA) present en 1992. 1992 MD5 procesa el mensaje en bloques de 512 bits que se dividen en 16 subsub-bloques de 32 bits c/u. El resultado son 4 nmeros de 32 bits que se concatenan para entregar el valor de hash de 128 bits. bits El mensaje original se expande para tener un largo mltiple de 512 bits menos 64.
El relleno es un bit en 1 seguido de bits en 0. Al final se agregan 64 bits que representan el largo del mensaje, lo que deja el largo en un mltiple de 512 bits.

Introduccin I t d i a la l Criptografa

M. en C. Eduardo Rodrguez Escobar CIDETEC - IPN

FINAL

Criptoanlisis

Existen 4 tipos generales de ataques:


Ataque de slo texto cifrado: cifrado: el criptoanalista tiene el texto cifrado de varios mensajes, todos cifrados con el mismo algoritmo algoritmo. Debe recuperar el texto claro del mayor nmero de mensajes o deducir la o las llaves de cifrado. Ataque de texto claro conocido: conocido: tiene el texto claro y el correspondiente texto cifrado de varios mensajes. Debe deducir la llave o llaves de cifrado, o bien deducir un algoritmo g p para descifrar cualquier q otro mensaje j cifrado con la misma llave.

Criptoanlisis

Ataque de texto claro elegido: elegido: No slo tiene acceso al texto cifrado y texto claro de varios mensajes, sino que puede elegir el texto claro que quiera cifrar para facilitar la deduccin de la llave. Ataque adaptivo de texto claro elegido: elegido: variacin del anterior. No slo puede elegir el texto claro a cifrar, sino que lo puede modificar basado en los resultados de los cifrados if d previos i (por ( ej, j puede d cifrar if un subconjunto b j t de d un texto previamente cifrado).

Criptoanlisis

Existen otras 3 variaciones de ataques:


Ataque de texto cifrado elegido: elegido: El criptoanalista puede descifrar cualquier texto cifrado y obtener el texto claro correspondiente Debe deducir la llave de descifrado. correspondiente. descifrado Ataque de llaves relacionadas: relacionadas: El criptoanalista conoce una relacin entre dos llaves (pero no las llaves en s). Elige un texto en claro y puede conocer el resultado de cifrar ese texto con las dos llaves. Debe deducir las dos llaves. Ataque de compra de llave: llave: El criptoanalista compra compra (va chantaje, tortura, amenaza, etc) la llave. Es un ataque muy poderoso y muchas veces la mejor manera de conseguir g la llave.

Вам также может понравиться