100
Criptograf´ ıa y Seguridad Manuel J. Lucena L´ opez [email protected] Departamento de Inform´ atica Universidad de Ja´ en 25 de febrero de 2010 Manuel Lucena (Dpto. Inform´ atica) Criptograf´ ıa y Seguridad 25 de febrero de 2010 1 / 11 Datos de la Asignatura Nombre: Criptograf´ ıa y Seguridad. C ´ odigo: 5265. Titulaci ´ on: Ingenier´ ıa T´ ecnica en Inform´ atica de Gesti´ on (1997). Car ´ acter: Optativo. Curso:3 o . Cuatrimestre:2 o . Cr ´ editos LRU: 3 te´ oricos y 3 pr´ acticos. Cr ´ editos ECTS: 2.4 te´ oricos y 2.4 pr´ acticos. Manuel Lucena (Dpto. Inform´ atica) Criptograf´ ıa y Seguridad 25 de febrero de 2010 2 / 11

Presentacion cripto transp_manuel_lucena

Embed Size (px)

Citation preview

Page 1: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

25 de febrero de 2010

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 1 / 11

Datos de la Asignatura

I Nombre: Criptografıa y Seguridad.

I Codigo: 5265.

I Titulacion: Ingenierıa Tecnica en Informatica de Gestion (1997).

I Caracter: Optativo.

I Curso: 3o.

I Cuatrimestre: 2o.

I Creditos LRU: 3 teoricos y 3 practicos.

I Creditos ECTS: 2.4 teoricos y 2.4 practicos.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 2 / 11

Page 2: Presentacion cripto transp_manuel_lucena

Datos del Profesorado

I Profesor: Manuel J. Lucena Lopez.

I e-mail: [email protected]

I Despacho: A3-112.

I Telefono: 953 21 28 86

I Web: http://wwwdi.ujaen.es/∼mlucena

Tutorıas:

I Lunes, de 10:30 a 12:30.

I Jueves, de 10:30 a 12:30.

I Viernes, de 11:30 a 13:30.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 3 / 11

Objetivos

I Conocer las principales bases teoricas de la Criptografıa.

I Diferenciar entre Criptografıa Simetrica y Asimetrica.

I Conocer la estructura, propiedades y ambito de aplicacion de losprincipales algoritmos criptograficos.

I Identificar los principales riesgos de seguridad de un sistemainformatico.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 4 / 11

Page 3: Presentacion cripto transp_manuel_lucena

Programa de la Asignatura

Programa Teorico:

1. Introduccion.

2. Conceptos Basicos sobre Criptografıa.

3. Bases Teoricas de la Criptografıa.

4. Algoritmos Criptograficos.

5. Aplicaciones Criptograficas.

Programa Practico:

I Trabajo de caracter practico, grupos de 3 a 5 personas.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 5 / 11

Criterios de Evaluacion

I Teorıa (60 %) y Practicas (40 %).I Se considera como presentado si se hace el examen o se entregan las

practicas.I Si se aprueba una parte y otra no, se guarda la nota hasta septiembre.

I Teorıa: Examen escrito.I 30 preguntas objetivas (50 %).I 6 preguntas de respuesta breve, a elegir 5 (50 %).

I Practicas:I Reuniones periodicas de seguimiento, al menos 4.I Tema libre, acordado por escrito con el profesor.I Entrega de memoria, codigo fuente, ejecutables, etc.I Exposicion al final del cuatrimestre.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 6 / 11

Page 4: Presentacion cripto transp_manuel_lucena

Memoria de Practicas

I Se entregara en formato CD:I Rotular en el disco el curso academico, numero de grupo, nombres de

los integrantes, tıtulo de la aplicacion y nombre de la asignatura.I Organizar en carpetas. No usar espacios, tildes, etc. en los nombres de

carpetas/archivos.I Documentos en formatos estandar: pdf, OpenDocument, html, etc.

I Elementos:I Indice de contenidos.I Descripcion de los detalles de implementacion y de las decisiones de

diseno tomadas.I Documentacion relativa a los algoritmos que se implementen.I Guıa breve del codigo fuente.I Descripcion de la estructura de directorios, proposito de cada archivo.I Manual de usuario de la aplicacion.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 7 / 11

Calificacion de las practicas

Se valoraran los siguentes elementos, con los siguientes pesos relativos:I Relativos a la aplicacion:

I Calidad del codigo fuente (legibilidad, diseno, etc.): 2.I Correcto funcionamiento: 2.I Aspecto visual y usabilidad de la aplicacion: 1.

I Relativos a la documentacion:I Aspecto general (limpieza, orden, claridad): 1.I Indice (presencia, claridad y utilidad de este): 1.I Manual (claridad, organizacion, completitud): 2.I Discusion crıtica de todos los aspectos relevantes: 2.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 8 / 11

Page 5: Presentacion cripto transp_manuel_lucena

Bibliografıa

Basica:

I M. Lucena, Criptografıa y Seguridad en Computadores, 4o Edicion.

I Alfred J. Menezes, Paul C. Van Oorschot y Scott A. Vanstone.Handbook of Applied Cryptography. CRC Press 1996.

Complementaria:

I P. Caballero, Introduccion a la Criptografıa, 2o edicion. RA-MA.

I B. Schneier, Applied Cryptography. Second Edition. J. Wiley & Sons.

I William Stallings, Fundamentos de Seguridad en Redes. Aplicacionesy Estandares, 2o ed. Pearson Educacion, 2003.

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 9 / 11

Otros datos

Horarios:

I Teorıa: Jueves, de 12:30 a 13:30, y viernes, de 13:30 a 14:30.

I Practicas: Martes de 10:30 a 12:30 y de 12:30 a 14:30.

Aulas:

I Teorıa: Aula 2, edificio A-4.

I Practicas: Laboratorio 2 (dependencia 174, edificio A-3).

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 10 / 11

Page 6: Presentacion cripto transp_manuel_lucena

Mas informacion en:http://wwwdi.ujaen.es/∼mlucena

Manuel Lucena (Dpto. Informatica) Criptografıa y Seguridad 25 de febrero de 2010 11 / 11

Page 7: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 1. Introduccion

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

17 de septiembre de 2008

Manuel Lucena (Dpto. Informatica) 1. Introduccion 17 de septiembre de 2008 1 / 6

¿Que es la Criptografıa?

Definicion (Diccionario de la Real Academia):

“Arte de escribir con clave secreta o de un modo enigmatico”

I La necesidad de transmitir informacion corre paralela con la deprotegerla.

I Hace anos que dejo de ser un considerada un arte.

Conjunto de tecnicas que tratan sobre la proteccion —ocultamiento frentea observadores no autorizados— de la informacion.

I Disciplinas: Teorıa de la Informacion, Teorıa de Numeros,Complejidad Algorıtmica, etc.

Manuel Lucena (Dpto. Informatica) 1. Introduccion 17 de septiembre de 2008 2 / 6

Page 8: Presentacion cripto transp_manuel_lucena

Objetivo de la Criptografıa

Proteccion de la Informacion

I Alterar la informacion para que aquellos que pretendan recuperarla sinla debida autorizacion, se enfrenten a un problema intratable.

I La autorizacion suele ser una pieza de informacion llamada clave.

Preservacion de la Integridad de la Informacion

I Deteccion de posibles alteraciones.

I Certificacion del origen de la misma =⇒ Firma Digital.

Manuel Lucena (Dpto. Informatica) 1. Introduccion 17 de septiembre de 2008 3 / 6

Historia de la Criptografıa

I La Criptografıa nace con la escritura.I Referencias desde varios siglos antes de Jesucristo.I Tradicionalmente, los cifrados se hacıan a mano.I Los intentos de descifrado tambien se hacıan a mano.

I La Criptografıa moderna, como la Informatica, nace en la II GuerraMundial.

I Cifrados Enigma y de Lorenz.I Proyecto Colossus.

I La Criptografıa militar ha estado por delante de la Criptografıa civildurante decadas.

Manuel Lucena (Dpto. Informatica) 1. Introduccion 17 de septiembre de 2008 4 / 6

Page 9: Presentacion cripto transp_manuel_lucena

¿Que no es Criptografıa?

Seguridad a traves de la oscuridad

I Si mantenemos en secreto nuestras tecnicas de cifrado, seran masseguras. Falso.

I Cualquier persona o equipo es capaz de disenar un sistema que elmismo no sea capaz de romper.

I Es necesario que las tecnicas de cifrado sean conocidas.

I Al atacante hay que suponerle un conocimiento completo del sistema.

I Desconfiar de soluciones secretas o milagrosas...

Manuel Lucena (Dpto. Informatica) 1. Introduccion 17 de septiembre de 2008 5 / 6

Numeros Grandes

I Probabilidad de ser fulminado por un rayo (por dıa): 1 entre 9.000.000.000 (233).

I Probabilidad de ganar la Loterıa Primitiva: 1 entre 13.983.816 (223).

I Probabilidad de ganar la Primitiva y caer fulminado por un rayo el mismo dıa: 1 entre 256.

I Edad del Planeta Tierra: 109 (230) anos.

I Edad del Universo: 1010 (234) anos.

I Un ano: 244 millonesimas de segundo.

I Numero de atomos en el Planeta Tierra: 1051 (2170).

I Numero de atomos en la Vıa Lactea: 1067 (2223).

I Numero de atomos en el Universo (excl. materia oscura): 1077 (2255).

Manuel Lucena (Dpto. Informatica) 1. Introduccion 17 de septiembre de 2008 6 / 6

Page 10: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 2. Conceptos Basicos

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

8 de marzo de 2009

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 1 / 13

Criptosistema

Indice

Criptosistema

Esteganografıa

Criptoanalisis

Seguridad en Sistemas Informaticos

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 2 / 13

Page 11: Presentacion cripto transp_manuel_lucena

Criptosistema

Definicion de Criptosistema

Criptosistema:

Quıntupla (M, C , K , E , D), donde:

I M: Conjunto de todos los posibles mensajes sin cifrar.

I C : Conjunto de todos los posibles mensajes cifrados, o criptogramas.

I K : Conjunto de claves que se pueden emplear en el criptosistema.

I E : Conjunto de transformaciones de cifrado. Existe unatransformacion diferente Ek para cada valor posible de la clave k .

I D: Conjunto de transformaciones de descifrado.

I Todo criptosistema ha de cumplir:

Dk(Ek(m)) = m

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 3 / 13

Criptosistema Tipos de Criptosistemas

Tipos de Criptosistemas

Simetricos (o de llave privada)

I Emplean la misma clave k tanto para cifrar como para descifrar.

I Problema: distribucion de claves.

Asimetricos (o de llave publica)

I Emplean una doble clave (kp, kP).

I kp se conoce como clave privada y kP se conoce como clave publica.

I Una de ellas sirve para cifrar, y la otra para descifrar.

I No solo permiten cifrar la informacion, sino firmarla digitalmente.

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 4 / 13

Page 12: Presentacion cripto transp_manuel_lucena

Criptosistema Claves Debiles

Claves Debiles

En un criptosistema, puede haber elementos de K que produzcantransformaciones de cifrado faciles de romper.

I No es algo necesariamente malo. Muchos criptosistemas poseenclaves debiles.

I Es difıcil demostrar que un criptosistema no tiene claves debiles.

I Suelen ser muy pocas en relacion con el numero total de posiblesclaves.

I Lo ideal es conocerlas y evitarlas.

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 5 / 13

Esteganografıa

Indice

Criptosistema

Esteganografıa

Criptoanalisis

Seguridad en Sistemas Informaticos

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 6 / 13

Page 13: Presentacion cripto transp_manuel_lucena

Esteganografıa

Esteganografıa

Consiste en ocultar en el interior de una informacion, aparentementeinocua, otro tipo de informacion (cifrada o no).

I Tanto o mas antigua que la propia Criptografıa.

I Permite burlar sistemas de censura, en los que el atacante se limita adestruir el mensaje si lo considera sospechoso.

I Con la enorme cantidad de datos que nos rodean, la esteganografıaadquiere un potencial practicamente ilimitado.

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 7 / 13

Criptoanalisis

Indice

Criptosistema

Esteganografıa

Criptoanalisis

Seguridad en Sistemas Informaticos

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 8 / 13

Page 14: Presentacion cripto transp_manuel_lucena

Criptoanalisis

Criptoanalisis

Consiste en descifrar uno o mas mensajes sin conocer la clavecorrespondiente (romper el criptosistema).

I Posibilidades:I Descifrar mensajes sin hacer uso de la clave.I Recuperar la clave a partir de un numero de mensajes cifrados.

I No se considera criptoanalisis:I Probar todas las posibles claves (fuerza bruta).I Descubrir el algoritmo de cifrado, cuando este era secreto.

Ataque

Un ataque es cualquier tecnica que nos permite romper un criptosistemamas rapido que mediante la fuerza bruta.

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 9 / 13

Criptoanalisis

Compromiso entre Criptosistema y Criptoanalisis

Practicamente todos los criptosistemas pueden ser rotos con el suficienteesfuerzo computacional.

I Cuanto mas complejo es un algoritmo de cifrado, mas costosa es suimplantacion.

I No es lo mismo proteger una informacion efımera, que otra a maslargo plazo.

I Se busca un compromiso entre el coste (economico, computacional,de almacenamiento...) del criptosistema y el coste necesario pararomperlo.

I Hoy dıa disponemos de algoritmos cuyo coste de rotura excede al dela capacidad de computo existente en el planeta.

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 10 / 13

Page 15: Presentacion cripto transp_manuel_lucena

Seguridad en Sistemas Informaticos

Indice

Criptosistema

Esteganografıa

Criptoanalisis

Seguridad en Sistemas Informaticos

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 11 / 13

Seguridad en Sistemas Informaticos

Seguridad

I La seguridad de la informacion es mucho mas compleja que el simpleuso de tecnicas de cifrado.

I Los escenarios y requerimientos variaran en funcion de que lacomputadora se encuentre aislada o interconectada, sea fija o portatil,etc.

Algunas cuestiones de Seguridad:

I Seguridad fısica.

I Seguridad de los canales de comunicaciones.

I Control de acceso a los datos.

I Autentificacion.

I No repudio.

I Anonimato.

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 12 / 13

Page 16: Presentacion cripto transp_manuel_lucena

Seguridad en Sistemas Informaticos

Tipos de Autentificacion

Autentificar: comprobar la autenticidad de algo.

I Una pieza de informacion (un mensaje).

I Un usuario (contrasena).

I Un dispositivo.

Manuel Lucena (Dpto. Informatica) 2. Conceptos Basicos 8 de marzo de 2009 13 / 13

Page 17: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 3. Bases Teoricas de la Criptografıa

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

29 de marzo de 2009

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 1 / 41

Teorıa de la Informacion

Indice

Teorıa de la Informacion

Complejidad Algorıtmica

Aritmetica Modular

Curvas Elıpticas

Numeros Aleatorios

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 2 / 41

Page 18: Presentacion cripto transp_manuel_lucena

Teorıa de la Informacion Cantidad de Informacion

Cantidad de Informacion de un Suceso

La observacion de un suceso aumenta nuestro conocimiento sobre eluniverso, es decir proporciona informacion.

Ejemplo

I Una bolsa con nueve bolas negras y una blanca.

I Sacamos una bola blanca, ¿Cuanta informacion aporta ese suceso?

I ¿Y si ahora sacamos una bola negra?

I El primer suceso aporta mucha informacion, porque era muy pocoprobable.

I El segundo suceso no aporta ninguna informacion, porque yasabıamos lo que iba a ocurrir.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 3 / 41

Teorıa de la Informacion Cantidad de Informacion

Cantidad de Informacion de un Suceso

Caracterısticas de cantidad de Informacion

I Es mayor cuanto menos probable es el suceso en cuestion.

I Es siempre mayor o igual que cero.

I Siendo V una variable aleatoria, xi un suceso y P(xi ) su probabilidadasociada, la Cantidad de Informacion de xi se define como:

Ii = − log2(P(xi ))

I Si P(xi ) = 1 −→ Ii = 0.

I Si P(xi ) = 0 −→ Ii =∞.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 4 / 41

Page 19: Presentacion cripto transp_manuel_lucena

Teorıa de la Informacion Entropıa

Entropıa

DefinicionSuma ponderada de las cantidades de informacion de todos los posiblesestados de una variable aleatoria V :

H(V ) = −∑ni=1 P(xi ) log2[P(xi )]

Propiedades

1. 0 ≤ H(V ) ≤ log2 N

2. H(V ) = 0⇐⇒ ∃i tal que P(xi ) = 1 y P(xj) = 0 ∀j 6= i

3. H(x1, x2 . . . xn) = H(x1, x2 . . . xn, xn+1) si P(xn+1) = 0

I Se mide en bits.I La entropıa de una variable aleatoria es el no medio de bits necesarios

para codificar cada uno de sus estados.I Proporciona el lımite teorico de compresion de la informacion.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 5 / 41

Teorıa de la Informacion Entropıa

Entropıa

Ejemplos:

I Moneda al aire:

H(M)− [1

2log2(

1

2) +

1

2log2(

1

2)] = 1 bit

I Moneda trucada (60 % cara, 40 % cruz):

H(Mt) = −(0,6 log2(0,6) + 0,4 log2(0,4)) = 0,970 bits

I Bolsa con nueve bolas negras y una blanca:

H(B) = −(0,9 log2(0,9) + 0,1 log2(0,1)) = 0,468 bits

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 6 / 41

Page 20: Presentacion cripto transp_manuel_lucena

Teorıa de la Informacion Entropıa Condicionada

Entropıa Condicionada

I Entropıa de una distribucion conjunta de dos variables (X ,Y ):

H(X ,Y ) = −n∑

i=1

m∑j=1

P(xi , yj) log2 (P(xi , yj))

I Entropıa de la distribucion de X condicionada a un valor de Y :

H(X/Y = yj) = −n∑

i=1

P(xi/yj) log2 (P(xi/yj))

I Entropıa Condicionada de X sobre Y :

H(X/Y ) = −n∑

i=1

m∑j=1

P(xi , yj) log2(P(xi/yj))

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 7 / 41

Teorıa de la Informacion Entropıa Condicionada

Propiedades de la Entropıa Condicionada

Ley de Entropıas Totales

H(X ,Y ) = H(X ) + H(Y /X )

I Si X e Y son variables independientes:

H(X ,Y ) = H(X ) + H(Y )

Teorema de Disminucion de la Entropıa

La entropıa de una variable X condicionada por otra Y es menor o igual ala entropıa de X , alcanzandose la igualdad si y solo si las variables X e Y

son independientes.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 8 / 41

Page 21: Presentacion cripto transp_manuel_lucena

Teorıa de la Informacion Cantidad de Informacion entre dos Variables

Cantidad de Informacion entre dos Variables

La cantidad de informacion que la variable X contiene sobre Y se definecomo:

I (X ,Y ) = H(Y )− H(Y /X )

I Al medir la incertidumbre sobre Y , puede que obtengamos valoresdistintos segun conozcamos el valor de X o no.

I Si conocemos X , puede que la incertidumbre de Y no varıe, o quedisminuya.

I Esa posible disminucion de incertidumbre (entropıa), es la cantidad deinformacion entre X e Y .

I Propiedades:

1. I (X ,Y ) = I (Y ,X )2. I (X ,Y ) ≥ 0

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 9 / 41

Teorıa de la Informacion Criptosistema Seguro de Shannon

Criptosistema Seguro de Shannon

I Criptosistema que cumple: I (C ,M) = 0I C : Variable aleatoria que representa el criptograma enviado.I M: Variable aleatoria que representa el mensaje en claro.

I Conocer el valor concreto de C (el criptograma) no modifica laincertidumbre sobre el texto en claro al que corresponde.

I Imposible de romper, incluso disponiendo de capacidades de computo(memoria y procesamiento) infinitas.

I No suelen resultar practicos: la clave debe ser al menos tan largacomo el mensaje.

I Ejemplo: One-time pads (cuadernos de un solo uso), empleados en laI Guerra Mundial.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 10 / 41

Page 22: Presentacion cripto transp_manuel_lucena

Teorıa de la Informacion Redundancia

Redundancia

L P T D M C S S P RT C L R

I El mensaje puede reconstruirse con facilidad.

I La informacion que falta puede recuperarse de los sımbolos quequedan.

I Esto implica que los sımbolos transportan informacion repetida:redundancia.

I Los lenguajes humanos son redundantes.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 11 / 41

Teorıa de la Informacion Redundancia

Medidas de Redundancia

I Indice de un lenguaje para mensajes de longitud k :

rk =Hk(M)

k

I Indice absoluto de un lenguaje de m sımbolos:

R =log2(mk)

k=

k log2(m)

k= log2 m

I Redundancia de un lenguaje:

D = R − r

I Indice de redundancia:

I =D

R

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 12 / 41

Page 23: Presentacion cripto transp_manuel_lucena

Teorıa de la Informacion Desinformacion y Distancia de Unicidad

Desinformacion y Distancia de Unicidad

Desinformacion

Entropıa condicionada del conjunto M de posibles mensajes sobre elconjunto C de posibles criptogramas.

I Es maxima, H(M/C ) = H(M), para criptosistemas seguros deShannon.

I Si H(M/C ) = 0, conocer un criptograma reduce nuestraincertidumbre sobre el mensaje a cero (lo podemos recuperar).

I Tambien sobre K como H(K/C ): conocimiento que ganamos sobre laclave k conocido el criptograma c .

Distancia de unicidad

Cantidad de texto cifrado que reduce la incertidumbre sobre K a cero.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 13 / 41

Teorıa de la Informacion Confusion y Difusion

Confusion y Difusion

Confusion

I Oculta la relacion entre c y m.

I Operacion basica: sustitucion.

Difusion

I Diluye la redundancia del texto claro repartiendola a lo largo del textocifrado.

I Operacion basica: transposicion.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 14 / 41

Page 24: Presentacion cripto transp_manuel_lucena

Complejidad Algorıtmica

Indice

Teorıa de la Informacion

Complejidad Algorıtmica

Aritmetica Modular

Curvas Elıpticas

Numeros Aleatorios

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 15 / 41

Complejidad Algorıtmica

Complejidad Algorıtmica

Algoritmo

Secuencia finita y ordenada de instrucciones elementales que, dados losvalores de entrada de un problema, en algun momento finaliza y devuelve

la solucion.

Complejidad Algorıtmica

Permite medir el esfuerzo computacional para resolver un problema,independientemente de la maquina que empleemos para ello.

I Tres alternativas: mejor caso, caso promedio y peor caso.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 16 / 41

Page 25: Presentacion cripto transp_manuel_lucena

Complejidad Algorıtmica

Clases de Complejidad

I Clase P: Problemas de decision que pueden ser resueltos en tiempopolinomial.

I Clase NP: Problemas para los que una respuesta afirmativa puede serverificada en tiempo polinomial, a partir de un certificado.

I Clase co-NP: Problemas para los que una respuesta negativa puedeser verificada en tiempo polinomial, a partir de un certificado.

I La clase NPC es un subconjunto de NP, en el que todos suselementos pueden reducirse unos a otros.

I Los problemas NP-duros son la version computacional de losproblemas de la clase NPC. Ejemplo: problema de la mochila.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 17 / 41

Complejidad Algorıtmica

Clases de Complejidad

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 18 / 41

Page 26: Presentacion cripto transp_manuel_lucena

Complejidad Algorıtmica Algoritmos Probabilısticos

Algoritmos Probabilısticos

I Son algoritmos que dan una respuesta, pero con una probabilidad deerror.

I Para algunos problemas, son mucho mas rapidos que los algoritmosdeterministas.

I Tienen sus propias clases de complejidad.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 19 / 41

Aritmetica Modular

Indice

Teorıa de la Informacion

Complejidad Algorıtmica

Aritmetica Modular

Curvas Elıpticas

Numeros Aleatorios

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 20 / 41

Page 27: Presentacion cripto transp_manuel_lucena

Aritmetica Modular Definicion

Definicion de Aritmetica Modular

Dados tres numeros a, b, c ∈ N, decimos que a es congruente con bmodulo n, y se escribe:

a ≡ b (mod n)

si cumplen:a = b + kn, para algun k ∈ Z

I Zn contiene los numeros que van de 0 a n − 1.

I Propiedades para la suma: asociativa, conmutativa, elemento neutro yelemento simetrico.

I Propiedades para el producto: asociativa, conmutativa y elementoneutro.

I Zn con la operacion suma es un grupo conmutativo.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 21 / 41

Aritmetica Modular Inversas en aritmetica modular

Inversas en Zn

Existencia

I a tiene inversa modulo n solo si a y n son primos entre sı.

I Si n es primo, Zn tiene estructura de cuerpo, ya que todos suselementos tienen inversa excepto el cero.

Funcion de Euler φ(n)

I Indica cuantos numeros son primos relativos con n.

Teoremas:

I Si mcd(a, n) = 1, entonces aφ(n) ≡ 1 (mod n).

I (de Fermat): Si p es primo, ap−1 ≡ 1 (mod p).

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 22 / 41

Page 28: Presentacion cripto transp_manuel_lucena

Aritmetica Modular Inversas en aritmetica modular

Calculo de Inversas y Teorema Chino del Resto

Calculo de Inversas

1. Usar la funcion de Euler φ(n).

2. Usar el algoritmo extendido de Euclides, ya que:I En el ultimo paso, 1 = nui + avi .I En consecuencia, avi ≡ 1 (mod n).

Teorema Chino del Resto

I Dada una serie de ecuaciones en congruencias modulo p1, p2, ..., pr ,siendo los pi primos relativos, de la forma:

x ≡ xi (mod pi )

I Si n = p1 · p2 · ... · pr , todas las ecuaciones tienen una unica solucioncomun en [0, n − 1].

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 23 / 41

Aritmetica Modular Exponenciacion y Logaritmos Discretos

Exponenciacion y Logaritmos Discretos

Algoritmo rapido de exponenciacion

I Permite calcular potencias de forma eficiente.

Logaritmos Discretos

I Problema inverso a la exponenciacion. Dados a,b y n, encontrar c talque:

a ≡ bc (mod n).

I Es un problema computacionalmente difıcil de resolver.

Problema de Diffie-Hellman

I Dados α, αa y αb, encontrar αab.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 24 / 41

Page 29: Presentacion cripto transp_manuel_lucena

Aritmetica Modular Factorizacion

Factorizacion

I Problema inverso al de la multiplicacion.

I Tambien es un problema difıcil.

I Algoritmos de factorizacion:I Metodo de Fermat.I Metodo p − 1.I Metodos cuadraticos. Se basan en la ecuacion:

x2 ≡ y 2 (mod n).

Por tanto, n|(x + y)(x − y), por lo que n ha de tener factores comunescon (x + y) y (x − y).

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 25 / 41

Aritmetica Modular Tests de primalidad

Tests de primalidad

I Para saber si un numero es primo, basta con intentar factorizarlo, locual es muy ineficiente.

I ¿Como saber si un numero es primo?

I Algoritmos probabilısticos:I Devuelven verdadero o falso con una probabilidad de fallo.I Lehmann (50 %), Rabin-Miller (25 %).I Ejecutandolos varias veces, la probabilidad de fallo se reduce

exponencialmente.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 26 / 41

Page 30: Presentacion cripto transp_manuel_lucena

Aritmetica Modular Anillos de Polinomios

Anillos de Polinomios

Definicion:

I Sea R un anillo conmutativo. Un polinomio con variable x sobre R sedefine como:

f (x) = anxn + an−1xn−1 + ...+ a1x + a0

con ai ∈ R.

I El conjunto de polinomios R[x ] tiene estructura de anillo conmutativo.

I Los polinomios pueden ser descompuestos como productos de otrospolinomios.

I Los polinomios irreducibles son analogos a los numeros primos.

I Podemos definir clases de equivalencia modulo f (x), analogas a losconjuntos Zn.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 27 / 41

Aritmetica Modular Anillos de Polinomios

Polinomios en Zn

I Podemos definir polinomios con coeficientes en Zn, particularmenteen Z2:

I Los polinomios pueden representarse mediante secuencias de bits.I Las sumas son operaciones or-exclusivo.I Los productos son desplazamientos y sumas.I Resultan muy eficientes para implementaciones hardware.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 28 / 41

Page 31: Presentacion cripto transp_manuel_lucena

Curvas Elıpticas

Indice

Teorıa de la Informacion

Complejidad Algorıtmica

Aritmetica Modular

Curvas Elıpticas

Numeros Aleatorios

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 29 / 41

Curvas Elıpticas Curvas Elıpticas en R

Curvas Elıpticas en RDefinicion:

Una curva elıptica sobre R es el conjunto de los puntos del plano (x , y)que cumplen la ecuacion:

y 2 = x3 + ax + b

a) b)

y2 = x3 − 5x + 1 y2 = x3 − 3x + 4Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 30 / 41

Page 32: Presentacion cripto transp_manuel_lucena

Curvas Elıpticas Curvas Elıpticas en R

Grupo de Curva Elıptica E (R)

Compuesto por todos los puntos de la curva, mas un punto O, situado enel infinito.

I Definiremos una operacion suma con las siguientes propiedades:I r +O = O + r = r (elemento neutro).I ∀r,∃s tal que r + s = O (elemento simetrico).I Sumar un punto p consigo mismo k veces ⇒ multiplicar p por el

entero k .

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 31 / 41

Curvas Elıpticas Curvas Elıpticas en R

Interpretacion Grafica de la Suma en E (R)

Sumar r y s: Sumar p consigo mismo:

a) b)

r

s

p

a) b)

r

s

-t

p

a) b)

r

s

-t

t

p

a) b)

r

s

-t-t

t

p

a) b)

r

s

-t

t

-t

t

p

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 32 / 41

Page 33: Presentacion cripto transp_manuel_lucena

Curvas Elıpticas Curvas elıpticas en otros conjuntos

Curvas elıpticas en otros conjuntos

En GF (n)

y 2 ≡ x3 + ax + b (mod n)

I No tienen representacion grafica.

I La suma se efectua mediante las expresiones analıticas.

En GF (2n)

y 2 + xy ≡ x3 + ax + b (mod p(x))

I En este caso, el conjunto base esta compuesto por polinomios concoeficientes en Z2.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 33 / 41

Curvas Elıpticas Logaritmos Discretos en Curvas Elıpticas

Problema de los Logaritmos Discretos en Curvas Elıpticas

I Sea p un punto de una curva elıptica.

I Sea 〈p〉 el conjunto {O, p, 2p, 3p,. . . }.I Para todo q ∈ 〈p〉, debe existir un entero k tal que

kp = q

Problema de los Logaritmos Discretos en Curvas Elıpticas

I Hallar k ∈ N tal que q = kp.

I Es un problema difıcil, apto para su uso en Criptografıa.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 34 / 41

Page 34: Presentacion cripto transp_manuel_lucena

Numeros Aleatorios

Indice

Teorıa de la Informacion

Complejidad Algorıtmica

Aritmetica Modular

Curvas Elıpticas

Numeros Aleatorios

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 35 / 41

Numeros Aleatorios

Importancia de los Numeros Aleatorios en Criptografıa

Es fundamental poder generar valores impredecibles y sin relacionestadıstica entre ellos.

I Claves de sesion.

I Numeros primos para las claves privadas.

I ...

Generadores tradicionales

I Generan secuencias que superan los test estadısticos de aleatoriedad.

I Son predecibles. ⇐ Inadmisible

I Son reproducibles. ⇐ Inadmisible

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 36 / 41

Page 35: Presentacion cripto transp_manuel_lucena

Numeros Aleatorios Generadores aleatorios

Secuencias Pseudoaleatorias

Secuencias Estadısticamente Aleatorias

I Pasan los tests estadısticos de aleatoriedad.

I Predecibles y reproducibles a partir de porciones pequenas de lasecuencia.

Secuencias Criptograficamente Aleatorias

I Calcular el siguiente valor de la secuencia a partir de una porcionarbitraria de la misma resulta intratable.

I Usan informacion secreta de inicializacion y estado.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 37 / 41

Numeros Aleatorios Generadores aleatorios

Secuencias Aleatorias

Una secuencia es totalmente aleatoria si no puede reproducirse de manerafiable.

I Una computadora es determinista (predecible).I Fuentes externas de aleatoriedad:

I Conversores A/D (tarjetas de sonido).I Actividad de dispositivos externos (disco duro).I Actividad del usuario.I Dispositivos hardware especıficamente disenados.I ...

I Podemos mezclar varias fuentes externas de aleatoriedad.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 38 / 41

Page 36: Presentacion cripto transp_manuel_lucena

Numeros Aleatorios Generadores aleatorios

Clasificacion de las secuencias aleatorias

Secuencias Aleatorias(no reproducibles)

Secuencias Aleatorias(no reproducibles)

Secuencias Aleatorias(no reproducibles)

Secuencias Pseudoaleatorias(reproducibles)

Secuencias Estadísticamente

Aleatorias

SecuenciasCriptográficamente

Aleatorias

Secuencias Aleatorias(no reproducibles)

Secuencias Pseudoaleatorias(reproducibles)

Secuencias Aleatorias(no reproducibles)

Secuencias Pseudoaleatorias(reproducibles)

Secuencias Estadísticamente

Aleatorias

SecuenciasCriptográficamente

Aleatorias

Secuencias Aleatorias(no reproducibles)

Secuencias Pseudoaleatorias(reproducibles)

Secuencias Estadísticamente

Aleatorias

Secuencias Aleatorias(no reproducibles)

Secuencias Pseudoaleatorias(reproducibles)

Secuencias Estadísticamente

Aleatorias

SecuenciasCriptográficamente

Aleatorias

Secuencias Aleatorias(no reproducibles)

Secuencias Pseudoaleatorias(reproducibles)

Secuencias Estadísticamente

Aleatorias

SecuenciasCriptográficamente

Aleatorias

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 39 / 41

Numeros Aleatorios Generadores aleatorios

Eliminacion del SesgoI Normalmente, p(1) = 0,5 + d y p(0) = 0,5− d .

Mediante bits de paridad

I Agrupar la secuencia de n en n bits y tomar la paridad.

I Si n >log2(2ε)log2(2d)

, el sesgo resultante es inferior a ε.

Metodo de Von Neumann

I Agrupar los bits de dos en dos. Descartar los pares 00 y 11.

I Asignar un 1 al par 10 y un 0 al par 01.

I Los bits de la salida son equiprobables.

Funciones resumen

I Conociendo la entropıa de la secuencia original.

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 40 / 41

Page 37: Presentacion cripto transp_manuel_lucena

Numeros Aleatorios Generadores aleatorios

Generadores Aleatorios

X9.17

I A partir de una semilla s0, los valores gi de la secuencia se calculan:

gn = DES(k,DES(k , t)⊕ sn)sn+1 = DES(k ,DES(k , t)⊕ gn)

Blum Blum Shub

I Sean p y q numeros primos tales que p ≡ 3(mod 4) y q ≡ 3(mod 4),y n = p · q:

s0 = (x2)(mod n)si+1 = (s2

i )(mod n)

Manuel Lucena (Dpto. Informatica) 3. Bases Teoricas 29 de marzo de 2009 41 / 41

Page 38: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 4. Algoritmos Criptograficos

1a Parte: Criptografıa Clasica

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

17 de septiembre de 2008

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 1 / 19

Introduccion

Indice

Introduccion

Cifrados de Sustitucion

Cifrados de Transposicion

Maquinas de Rotores

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 2 / 19

Page 39: Presentacion cripto transp_manuel_lucena

Introduccion

La Criptografıa Clasica

I Abarca desde los inicios de la escritura hasta la II Guerra Mundial.

Caracterısticas

I Comprende tecnicas de cifrado que pueden ser ejecutadas a mano.

I Considerada en ocasiones como un pasatiempo o un reto intelectual.

I Sus algoritmos pueden romperse con recursos computacionalesrelativamente modestos, segun los estandares actuales.

I Empleada por Julio Cesar, Leonardo Da Vinci, Edgar Allan Poe,Arthur Conan Doyle, Francis Bacon, etc.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 3 / 19

Cifrados de Sustitucion

Indice

Introduccion

Cifrados de Sustitucion

Cifrados de Transposicion

Maquinas de Rotores

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 4 / 19

Page 40: Presentacion cripto transp_manuel_lucena

Cifrados de Sustitucion

Cifrados de Sustitucion

I Se basan en cambiar unos sımbolos del alfabeto por otros: confusion.

Tipos

I Monoalfabeticos: la sustitucion es siempre la misma, a lo largo detodo el texto.

I Polialfabeticos: la sustitucion de cada sımbolo depende de su posicionen el texto claro.

Dispositivo de cifrado monoalfabetico empleado por elEjercito Confederado de los EE.UU.

Cifrado monoalfabetico dibujado por Conan Doyle paraThe adventure of the dancing men.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 5 / 19

Cifrados de Sustitucion Cifrados Monoalfabeticos

Cifrados Monoalfabeticos

Algoritmo de Cesar

I Cada sımbolo c del criptograma se calcula a partir de cada sımbolo mdel mensaje original segun la funcion: c = (m + 3) mod 26.

I El conjunto K de claves tiene un unico elemento.

Sustitucion afın

I Funcion de cifrado para un alfabeto de N sımbolos:E(a,b)(m) = (a ·m + b) mod N.

I Dos parametros: a y b.

I Si a = 1 y b = 3, tenemos el algoritmo de Cesar.

Cifrado Monoalfabetico General

I La transformacion es arbitraria.

I Tenemos N! posibles claves.Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 6 / 19

Page 41: Presentacion cripto transp_manuel_lucena

Cifrados de Sustitucion Cifrados Monoalfabeticos

Criptoanalisis de Cifrados Monoalfabeticos

I Las propiedades estadısticas del texto claro se conservan en elcriptograma.

I Las letras mas frecuentes en el criptograma corresponderan con lossımbolos mas frecuentes del idioma original.

I Basta con emparejar el histograma de frecuencias del criptograma conel del idioma original.

Distancia de Unicidad

S =H(K )

D=

log2(N!)

D

I D: redundancia del lenguaje empleado en el mensaje original.

I N: es el numero de sımbolos del lenguaje.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 7 / 19

Cifrados de Sustitucion Cifrados Polialfabeticos

Cifrados Polialfabeticos

I Se basan en una aplicacion cıclica de d cifrados monoalfabeticosdiferentes.

Cifrado de Vigenere

I Clave: K = {k0, k1, . . . kd−1}.I Funcion de cifrado: Ek(mi ) = mi + k(i mod d) (mod n)

Criptoanalisis

I Conociendo el valor de d , aplicamos analisis de frecuencias a cadasubconjunto de los sımbolos del mensaje por separado.

I Para conocer d , aplicamos el metodo de Kasiski.

1. Buscar subcadenas repetidas de tres o mas sımbolos.2. Medir las distancias si que las separan.3. d : maximo comun divisor de los si .

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 8 / 19

Page 42: Presentacion cripto transp_manuel_lucena

Cifrados de Sustitucion Cifrados de Sustitucion Homofonica

Cifrados de Sustitucion Homofonica

Caracterısticas

I Hacen corresponder a un sımbolo del texto claro varios sımbolosposibles del texto cifrado, de forma aleatoria.

I Tratan de aplanar el histograma de frecuencias, dificultando elcriptoanalisis.

I En la practica, reducen o eliminan la redundancia del mensaje cifrado,al hacer todos sus sımbolos equiprobables.

Inconvenientes

I Necesitamos un alfabeto de salida mayor que el de entrada.

I Es difıcil conseguir un histograma totalmente plano.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 9 / 19

Cifrados de Transposicion

Indice

Introduccion

Cifrados de Sustitucion

Cifrados de Transposicion

Maquinas de Rotores

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 10 / 19

Page 43: Presentacion cripto transp_manuel_lucena

Cifrados de Transposicion

Cifrados de Transposicion

I Se basan en cambiar de lugar los sımbolos del mensaje: difusion.

I Ejemplo: el Escitalo.

I Normalmente, se toma el mensaje en bloques de n sımbolos y sereordena de alguna forma.

I Texto claro: El perro de San Roque no tienerabo.

I Clave: {3, 2, 5, 1, 4}.I Texto cifrado: “ Osonealr r irednu eoere et p

aqonb”.

1 2 3 4 5E L P ER R O DE S A N

R O Q UE N OT I E N E

R A B O

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 11 / 19

Cifrados de Transposicion Criptoanalisis de los cifrados de Transposicion

Criptoanalisis de los cifrados de Transposicion

I Las frecuencias relativas de los sımbolos se conservan. El enfoqueempleado en los cifrados de sustitucion no sirve.

I Podemos analizar las frecuencias de pares y tripletas de sımbolos.

I Muchos pares y ternas de sımbolos nunca aparecen en los lenguajeshumanos.

I Conociendo el valor de n, tenemos n! posibles claves.

I Aplicaremos un enfoque basado en la fuerza bruta.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 12 / 19

Page 44: Presentacion cripto transp_manuel_lucena

Maquinas de Rotores

Indice

Introduccion

Cifrados de Sustitucion

Cifrados de Transposicion

Maquinas de Rotores

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 13 / 19

Maquinas de Rotores La Maquina Enigma

La Maquina Enigma

I Inventada en 1923 por Arthur Scherbius.

I Adoptada por el ejercito del III Reich durante la II Guerra Mundial.

I La clave viene dada por la posicion inicial de una serie de rotores.

Maquina Enigma Rotor de una Enigma

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 14 / 19

Page 45: Presentacion cripto transp_manuel_lucena

Maquinas de Rotores La Maquina Enigma

Funcionamiento de Enigma

I Tres rotores moviles.

I Un reflector.

I Rotores y reflector llevan contactosinternamente.

I Al pulsar una tecla, se forma un circuitoque ilumina una letra.

I Los rotores giran tras cada pulsacion.

I La posicion no se repite hasta habertecleado 263 = 17,576 caracteres.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 15 / 19

Maquinas de Rotores La Maquina Enigma

Mejoras a Enigma

I Se hicieron diversas mejoras: aumento del numero de rotores, rotoresintercambiables, etc.

I El clavijero o stecker:

Detalle del clavijero (stecker).

I Intercambia hasta diez caracteres antes y despues de los rotores.

I Aumenta hasta 1017 el numero de posibles claves.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 16 / 19

Page 46: Presentacion cripto transp_manuel_lucena

Maquinas de Rotores La Maquina Enigma

La Bomba de Turing

I Ideada por Alan Turing, basandose en el ciclometrode Rejewsky, Rozycki y Zygalski

I Formada por muchas maquinas Enigmaencadenadas, lo que anulaba el stecker.

I Necesitaba del empleo de pivotes.

Enigma no puede codificar una letra en sı misma.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 17 / 19

Maquinas de Rotores La Maquina Enigma

Consideraciones Teoricas sobre Enigma

I Un rotor es una permutacion π del alfabeto de entrada.

I Todas las letras tienen imagen, y no puede haber dos letras con lamisma imagen.

I La permutacion π3 asociada al reflector cumple que π3 = π−13 .

I Permutacion que produce la maquina:

πtotal = 〈π0, π1, π2, π3, π−12 , π−1

1 , π−10 〉

Otras maquinas de Rotores

I Purple, Sigaba, etc.

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 18 / 19

Page 47: Presentacion cripto transp_manuel_lucena

Maquinas de Rotores El cifrado de Lorenz

El Cifrado de Lorenz

I Se hacıa con la maquina SZ40, mas compleja que Enigma.

I Permitıa codificar teletipos.

I Simulaba un cifrado seguro de Shannon.

I Roto por Colossus, el primer ordenador programable, disenado por elDr. Tommy Flowers.

Maquina de Lorenz Colossus

Manuel Lucena (Dpto. Informatica) 4a. Criptografıa Clasica 17 de septiembre de 2008 19 / 19

Page 48: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 4. Algoritmos Criptograficos

2a Parte: Cifrados por Bloques

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

20 de abril de 2009

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 1 / 28

Introduccion

Indice

Introduccion

El algoritmo DES

El algoritmo IDEA

Algoritmo AES

Modos de Operacion

Criptoanalisis

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 2 / 28

Page 49: Presentacion cripto transp_manuel_lucena

Introduccion

Introduccion

Algoritmos de Cifrado por Bloques

Dividen el mensaje en bloques de igual tamano, y los cifran por separado.

I Para hacer un buen sistema de cifrado, la sustitucion serıa suficiente.

I Sin embargo, codificar tablas de sustitucion grandes es complicado.

I En la practica, se mezclan operaciones de sustitucion con otras detransposicion.

Cifrado de Producto

I Combinacion mas o menos compleja de operaciones simples desustitucion y transposicion.

I Estructura denominada red de sustitucion-permutacion.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 3 / 28

Introduccion Redes de Feistel

Redes de Feistel

I Dividen el bloque en dos mitades, L yR.

I Combinan los bloques con una serie devalores Ki , empleando una funcionarbitraria f .

I Para descifrar, basta emplear la mismared, invirtiendo el orden de los Ki .

I Muchos algoritmos usan estaestructura: DES, Lucifer, FEAL,CAST, Blowfish, etc.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 4 / 28

Page 50: Presentacion cripto transp_manuel_lucena

Introduccion Cifrados con estructura de Grupo

Cifrados con estructura de Grupo

Definicion:

I Decimos que un cifrado tiene estructura de grupo si:

∀ k1, k2, M ∃ k3 tal que Ek2(Ek1(M)) = Ek3(M)

I No es una propiedad deseable.

I Generalmente, resulta muy difıcil demostrar que un algoritmo posee(o carece de) esta estructura.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 5 / 28

Introduccion S-Cajas

S-Cajas

I Son la unidad basica de sustitucion.

I Una S-Caja de m × n bits tiene m bits de entrada y n bits de salida.

I m puede ser menor, mayor o igual que n.

Ejemplos de S-Caja individual y de agrupacion de S-Cajas.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 6 / 28

Page 51: Presentacion cripto transp_manuel_lucena

El algoritmo DES

Indice

Introduccion

El algoritmo DES

El algoritmo IDEA

Algoritmo AES

Modos de Operacion

Criptoanalisis

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 7 / 28

El algoritmo DES

El algoritmo DES

I DES: Data Encryption Standard.

I Estandar para documentos no clasificados en EE.UU. desde 1976hasta finales de los 90.

I Longitud de bloque: 64 bits. Longitud efectiva de clave: 56 bits.

I Estructura: Red de Feistel con 16 rondas.

I Una permutacion inicial y otra final, inversa de la primera.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 8 / 28

Page 52: Presentacion cripto transp_manuel_lucena

El algoritmo DES

Funcion f de DES

Esquema de la funcion f en DES.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 9 / 28

El algoritmo DES

Generacion de los valores Ki

Generacion de los Ki en DES.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 10 / 28

Page 53: Presentacion cripto transp_manuel_lucena

El algoritmo DES Claves debiles en DES

Claves debiles en DES

I Claves debiles: Todos los Ki son iguales ⇒ Ek(Ek(M)) = M.

I Claves semidebiles: Generan secuencias con solo dos valores distintosde Ki .

Claves DebilesClave Clave tras EP1

0101010101010101 0000000 0000000

1F1F1F1F0E0E0E0E 0000000 FFFFFFF

E0E0E0E0F1F1F1F1 FFFFFFF 0000000

FEFEFEFEFEFEFEFE FFFFFFF FFFFFFF

Claves SemidebilesClave Clave tras EP1

01FE01FE01FE01FE AAAAAAA AAAAAAA

FE01FE01FE01FE01 5555555 5555555

1FE01FE00EF10EF1 AAAAAAA 5555555

E01FE01FF10EF10E 5555555 AAAAAAA

01E001E001F101F1 AAAAAAA 0000000

E001E001F101F101 5555555 0000000

1FFE1FFE0EFE0EFE AAAAAAA FFFFFFF

FE1FFE1FFE0EFE0E 5555555 FFFFFFF

011F011F010E010E 0000000 AAAAAAA

1F011F010E010E01 0000000 5555555

E0FEE0FEF1FEF1FE FFFFFFF AAAAAAA

FEE0FEE0FEF1FEF1 FFFFFFF 5555555

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 11 / 28

El algoritmo DES Variantes de DES

Variantes de DES

DES multiple:

I Se aplica el algoritmo DES varias veces sobre el mismo bloque.

I Funciona porque DES no tiene estructura de grupo.

I Ejemplo: C = Ek1(E−1k2

(Ek1(M)))

I Longitud efectiva de clave: hasta 168 bits.

I Esta estrategia se puede aplicar a cualquier algoritmo.

DES con subclaves independientes:

I Permite claves de hasta 16× 48 = 768 bits.

I En la practica, no es mucho mas difıcil de criptoanalizar que DESestandar.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 12 / 28

Page 54: Presentacion cripto transp_manuel_lucena

El algoritmo DES Variantes de DES

Variantes de DES

DES generalizado:

I Se emplea una red de Feistel generalizada, que divide el bloque en ntrozos de 32 bits.

I No mejora sustancialmente la seguridad.

DES con S-Cajas alternativas:

I Modificando las S-Cajas.

I Cuando se desarrollo el criptoanalisis diferencial, a inicios de los 90, sedescubrio que las S-Cajas de DES son resistentes frente a este ataque.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 13 / 28

El algoritmo IDEA

Indice

Introduccion

El algoritmo DES

El algoritmo IDEA

Algoritmo AES

Modos de Operacion

Criptoanalisis

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 14 / 28

Page 55: Presentacion cripto transp_manuel_lucena

El algoritmo IDEA

El algoritmo IDEA

I International Data Encryption Algorithm.

I Desarrollado en 1992.

I Bloque: 64 bits. Clave: 128 bits.

I Optimizado para su implementacion en microprocesadores modernos.I Se basa en las siguientes operaciones:

I XOR.I Suma modulo 216.I Producto modulo 216 + 1.

I En este caso, 216 se representa con el cero.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 15 / 28

El algoritmo IDEA Estructura de IDEA

Estructura de IDEA

I Se divide el bloque en cuatro partes de 16 bits: X1, X2, X3 y X4.I Se calculan 52 subclaves:

I Las 8 primeras dividiendo la clave en 8 trozos de 16 bits.I El resto, desplazando 25 bits sucesivamente y volviendo a dividir.

I Cifrado: se aplican las 52 subclaves en 8 rondas.

I Descifrado: se aplican los opuestos o inversas en distinto orden, con elmismo algoritmo.

Ronda Subclaves de Cifrado Subclaves de Descifrado

1 Z1 Z2 Z3 Z4 Z5 Z6 Z−149 −Z50 −Z51 Z−1

52 Z47 Z48

2 Z7 Z8 Z9 Z10 Z11 Z12 Z−143 −Z45 −Z44 Z−1

46 Z41 Z42

3 Z13 Z14 Z15 Z16 Z17 Z18 Z−137 −Z39 −Z38 Z−1

40 Z35 Z36

4 Z19 Z20 Z21 Z22 Z23 Z24 Z−131 −Z33 −Z32 Z−1

34 Z29 Z30

5 Z25 Z26 Z27 Z28 Z29 Z30 Z−125 −Z27 −Z26 Z−1

28 Z23 Z24

6 Z31 Z32 Z33 Z34 Z35 Z36 Z−119 −Z21 −Z20 Z−1

22 Z17 Z18

7 Z37 Z38 Z39 Z40 Z41 Z42 Z−113 −Z15 −Z14 Z−1

16 Z11 Z12

8 Z43 Z44 Z45 Z46 Z47 Z48 Z−17 −Z9 −Z8 Z−1

10 Z5 Z6

Final Z49 Z50 Z51 Z52 Z−11 −Z2 −Z3 Z−1

4

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 16 / 28

Page 56: Presentacion cripto transp_manuel_lucena

Algoritmo AES

Indice

Introduccion

El algoritmo DES

El algoritmo IDEA

Algoritmo AES

Modos de Operacion

Criptoanalisis

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 17 / 28

Algoritmo AES Introduccion

Algoritmo AES

I Tambien conocido como Rijndael.

I Adoptado por el NIST como sucesor de AES.

I Tamano de bloque y clave variables, entre 128 y 256 bits.

I Usa una S-Caja 8× 8, calculada empleando GF (28).

Estructura

I Disenado expresamente para resistir a los criptoanalisis lineal ydiferencial.

I Cada ronda: cuatro funciones invertibles, organizadas en tres capas:

1. Mezcla Lineal: DesplazarFila y MezclarColumnas.2. Capa no Lineal: S-Caja 8× 8 (funcion ByteSub).3. Adicion de clave: Or-exclusivo.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 18 / 28

Page 57: Presentacion cripto transp_manuel_lucena

Algoritmo AES Elementos de AES

Elementos de AES

I Estado (S): Matriz de bytes de cuatro filas, y Nb columnas.

I Clave (Ki ): Matriz de bytes de cuatro filas, y Nk columnas.I Rondas:

1. S ←−ByteSub(S)2. S ←−DesplazarFila(S)3. S ←−MezclarColumnas(S)4. S ←− Ki ⊕ S

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 19 / 28

Algoritmo AES Elementos de AES

Funciones DesplazarFila y MezclarColumnas

S

Cada columna se considera un polinomio con coeficientes en GF (28).

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 20 / 28

Page 58: Presentacion cripto transp_manuel_lucena

Algoritmo AES Elementos de AES

Cifrado y Descifrado en AES

Cifrado:

I Se aplican las rondas con una serie de Ki generados a partir de K .

Descifrado:

I Se aplican las inversas de todas las funciones, en orden inverso, conlos Ki tambien en orden inverso.

Calculo de las subclaves Ki

I Funcion de expansion + Funcion de seleccion.

I Se emplea la aritmetica en GF (28).

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 21 / 28

Modos de Operacion

Indice

Introduccion

El algoritmo DES

El algoritmo IDEA

Algoritmo AES

Modos de Operacion

Criptoanalisis

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 22 / 28

Page 59: Presentacion cripto transp_manuel_lucena

Modos de Operacion

Modos de Operacion

I Un mensaje tıpico es mas largo que un bloque.

I Si el mensaje no ocupa un numero exacto de bloques, hay que rellenarel ultimo (padding):

I Cifrar cada bloque de forma independiente no es siempre lo mejor.

I Hay diversas estrategias, llamadas Modos de Operacion.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 23 / 28

Modos de Operacion Modo ECB

Modo ECB

Modo ECB (Electronic Code Book)

I Cada bloque se cifra de forma independiente.

I Interesante para cifrar ficheros de acceso aleatorio.

I Un atacante puede realizar inserciones, sustituciones, permutaciones yeliminaciones.

I Pueden detectarse patrones repetitivos en el mensaje.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 24 / 28

Page 60: Presentacion cripto transp_manuel_lucena

Modos de Operacion Modo CBC

Modo CBC

Modo CBC (Cipher Block Chaining Mode)

I Los bloques estan encadenados. Se usa un vector de inicializacion.

I Dos mensajes que difieran en un bit se cifran igual hasta el bloque enel que este ese bit.

I Si falla el descifrado de un bloque, se pierde el siguiente.

I Impide eliminaciones, inserciones, permutaciones y sustituciones.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 25 / 28

Modos de Operacion Modo CFB

Modo CFB

Modo CFB (Cihper-Feedback)

I Cada bloque se cifra y se combina con el siguiente bloque del mensajeoriginal.

I En el cifrado, cada bloque afecta a todos los siguientes.

I Si se produce un error en el descifrado, tiene alcance limitado.

I Puesto que el paso final es un XOR entre Mi y Ci , este puede hacersea trozos.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 26 / 28

Page 61: Presentacion cripto transp_manuel_lucena

Criptoanalisis

Indice

Introduccion

El algoritmo DES

El algoritmo IDEA

Algoritmo AES

Modos de Operacion

Criptoanalisis

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 27 / 28

Criptoanalisis

Criptoanalisis de cifrados por bloques

Criptoanalisis Diferencial

I Se calculan pares de mensajes que difieren en un bit.

I Se estudian como se propagan esas diferencias a lo largo de las rondasdel algoritmo en cuestion, para una clave dada.

I Cifrando pares de mensajes y observando sus diferencias, se asignanprobabilidades a las distintas claves, hasta dar con la correcta.

Criptoanalisis Lineal

I Se toman algunos bits del texto claro, algunos del texto cifradoasociado, y se hace un or-exclusivo entre todos ellos.

I El resultado sera 0 o 1 con probabilidad proxima a 1/2, variando elresto de bits del texto claro.

I Si hay un sesgo, puede explotarse para ganar conocimiento sobre laclave de cifrado.

Manuel Lucena (Dpto. Informatica) 4b. Cifrados por Bloques 20 de abril de 2009 28 / 28

Page 62: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 4. Algoritmos de Cifrado.

3a Parte: Cifrados de Flujo

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

17 de septiembre de 2008

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 1 / 11

Introduccion

Indice

Introduccion

Tipos de Generadores de Secuencia

Registros de Desplazamiento Retroalimentados

Otros Generadores de Secuencia

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 2 / 11

Page 63: Presentacion cripto transp_manuel_lucena

Introduccion

Los Cifrados de Flujo

I Tratan de imitar el cifrado de Vernam, que es Seguro de Shannon.

I Generan una secuencia de longitud igual al mensaje, y la combinancon este.

ci = mi ⊕ oi

I El destinatario regenera la secuencia a partir de la misma semilla yrecupera el mensaje original.

I El generador de secuencia debe ser criptograficamente aleatorio.

El estudio de los cifrados de flujo se reduce al estudio de los generadoresde secuencia.

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 3 / 11

Tipos de Generadores de Secuencia

Indice

Introduccion

Tipos de Generadores de Secuencia

Registros de Desplazamiento Retroalimentados

Otros Generadores de Secuencia

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 4 / 11

Page 64: Presentacion cripto transp_manuel_lucena

Tipos de Generadores de Secuencia

Generadores Sıncronos

I La secuencia es generada de forma independiente del texto claro y deltexto cifrado.

I El texto cifrado se obtiene combinando la secuencia con el textoclaro, mediante una funcion reversible w .

si+1 = g(si , k), oi = h(si , k), ci = w(mi , oi )

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 5 / 11

Tipos de Generadores de Secuencia

Generadores Asıncronos

I La salida del generador es el mensaje cifrado.

I Se usan los valores anteriores del texto cifrado para generar lossiguientes valores de la secuencia.

oi = h(k , ci−t , ci−t+1, . . . , ci−1), ci = w(oi , mi )

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 6 / 11

Page 65: Presentacion cripto transp_manuel_lucena

Registros de Desplazamiento Retroalimentados

Indice

Introduccion

Tipos de Generadores de Secuencia

Registros de Desplazamiento Retroalimentados

Otros Generadores de Secuencia

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 7 / 11

Registros de Desplazamiento Retroalimentados

Registros de Desplazamiento Retroalimentados

I Compuestos por un conjunto de L estados {S0, S1, ...SL−1}.I Cada Si almacena un bit.

I En cada paso, los registros se desplazan, siendo S0 el bit que sale. Elnuevo SL−1 es una funcion de los Si en el paso anterior.

I Pueden ser lineales o no lineales, segun sea la funcion que se apliquea los Si .

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 8 / 11

Page 66: Presentacion cripto transp_manuel_lucena

Otros Generadores de Secuencia

Indice

Introduccion

Tipos de Generadores de Secuencia

Registros de Desplazamiento Retroalimentados

Otros Generadores de Secuencia

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 9 / 11

Otros Generadores de Secuencia Cifrados por Bloques en modo OFB

Cifrados por Bloques en modo OFB

I El modo de operacion OFB (Ouput-Feedback) genera secuenciascriptograficamente aleatorias.

I Valido para cifrados de flujo sıncronos.

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 10 / 11

Page 67: Presentacion cripto transp_manuel_lucena

Otros Generadores de Secuencia Algoritmos especıficos

Algoritmos de generacion de secuencia

RC4

I Desarrollado por Rivest en 1987.

I Emplea una S-caja 8× 8 dinamica.

I Genera una secuencia de bytes con claves de hasta 2048 bits.

SEAL

I Rogaway y Coppersmith (1993).

I Extremadamente rapido.

I Define una familia de funciones pseudoaleatorias, que combina paragenerar la secuencia.

I Tiene una fase de calculo previa compleja, basada en SHA.

Manuel Lucena (Dpto. Informatica) 4c. Cifrados de Flujo 17 de septiembre de 2008 11 / 11

Page 68: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 4. Algoritmos de Cifrado.4a Parte: Cifrados Asimetricos

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

11 de mayo de 2009

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 1 / 21

Introduccion

Indice

Introduccion

Ataque de intermediario

Algoritmo RSA

Otros Algoritmos Asimetricos

Criptografıa Asimetrica de Curva Elıptica

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 2 / 21

Page 69: Presentacion cripto transp_manuel_lucena

Introduccion

La Criptografıa Asimetrica

I Introducida por Diffie y Hellman a mediados de los 70.I Las claves no son unicas, sino que forman pares.

I Si una cifra, a otra descifra, y viceversa.I Una se hace publica, y la otra se mantiene en secreto.

I El mas extendido es RSA.I Rivest, Shamir y Adleman (1977).

I Las longitudes tıpicas de clave que se consideran seguras son muchomayores que las de los algoritmos simetricos.

I Sus algoritmos son mas lentos que los simetricos.I Metodos de cifrado hıbridos.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 3 / 21

Introduccion Problemas de la Criptografıa Simetrica

Problemas de la Criptografıa Simetrica

Numero de claves necesarias

I Con n interlocutores, son necesarias n2−n2 claves diferentes.

Distribucion de claves

I Para generar un canal seguro de comunicaciones, se emplea una clavesimetrica.

I Para distribuir la clave, es necesario tener un canal seguro decomunicaciones.

Problema del huevo y la gallina.

I La Criptografıa asimetrica permite resolver estos problemas.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 4 / 21

Page 70: Presentacion cripto transp_manuel_lucena

Introduccion Aplicaciones

Aplicaciones de la Criptografıa Asimetrica

Cifrado tradicional:

I La clave publica del destinatario se usa para cifrar.

I Problema de la distribucion de claves: Resuelto.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 5 / 21

Introduccion Aplicaciones

Aplicaciones de la Criptografıa Asimetrica

Autentificacion:

I La clave privada del remitente se usa para cifrar.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 6 / 21

Page 71: Presentacion cripto transp_manuel_lucena

Ataque de intermediario

Indice

Introduccion

Ataque de intermediario

Algoritmo RSA

Otros Algoritmos Asimetricos

Criptografıa Asimetrica de Curva Elıptica

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 7 / 21

Ataque de intermediario

Ataques de intermediario

I Un atacante C se situa entre A y B.

I C roba la clave publica de B y la sustituye por la suya.

I Cuando A quiere enviar un mensaje, emplea la clave de C, en lugar dela de B.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 8 / 21

Page 72: Presentacion cripto transp_manuel_lucena

Ataque de intermediario

¿Como evitar los ataques de intermediario?

I Resulta imposible.

I Se pueden reducir riesgos, si una entidad de confianza firma las clavespublicas ⇒ Certificado Digital.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 9 / 21

Algoritmo RSA

Indice

Introduccion

Ataque de intermediario

Algoritmo RSA

Otros Algoritmos Asimetricos

Criptografıa Asimetrica de Curva Elıptica

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 10 / 21

Page 73: Presentacion cripto transp_manuel_lucena

Algoritmo RSA

El algoritmo RSA

I Desarrollado por R. Rivest, A. Shamir y L. Adleman (1977).

I Uno de los mas sencillos, seguros y faciles de entender.

I Se apoya en el Logaritmo Discreto y en la dificultad para factorizarnumeros enteros.

Generacion de claves

I n = p · q, con p, q primos.

I e, primo relativo con (p − 1)(q − 1).

I d ≡ e−1 (mod (p − 1)(q − 1)).

I Clave publica: KP = (e, n).

I Clave privada: Kp = (d , n).

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 11 / 21

Algoritmo RSA Cifrado y descifrado en RSA

Cifrado y descifrado en RSA

I Cifrado: c = me (mod n).

I Descifrado: m = cd (mod n).

I Justificacion:

cd = (me)d = med = mk(p−1)(q−1)+1 = (mk)(p−1)(q−1) ·m

cd ≡ m (mod n)

I Factorizacion: Para conocer d a partir de (e, n), debera factorizar n.I Logaritmo Discreto: Podemos cifrar un m arbitrario y obtener

c = me . Luego,d = logc(m)

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 12 / 21

Page 74: Presentacion cripto transp_manuel_lucena

Algoritmo RSA Seguridad de RSA

Seguridad de RSA

I Resolviendo la factorizacion o el logaritmo discreto, RSA quedarıaroto.

I No esta demostrado que no exista otro metodo para romper RSA, sinnecesidad de factorizar o resolver logaritmos.

I Puede plantearse un ataque a la funcion φ(n).

I Si p o q no son primos, el algoritmo no funciona.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 13 / 21

Algoritmo RSA Vulnerabilidades de RSA

Vulnerabilidades de RSA

I RSA puede resultar vulnerable si se emplea mal.

Posibles problemas:

I Posee claves debiles:me ≡ m (mod n)

I La longitud de clave puede ser un problema.I Cada vez se necesitan claves mas largas.

I Ataque de texto claro escogido:I Generamos m1 y m2 y pedimos a alguien que los firme.I El mensaje m = m1 ·m2 quedara tambien firmado.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 14 / 21

Page 75: Presentacion cripto transp_manuel_lucena

Algoritmo RSA Vulnerabilidades de RSA

Vulnerabilidades de RSA

Posibles Problemas:

I Ataques de modulo comun:I No se debe generar mas de un par de claves para un valor concreto de

p, q.I Un mismo mensaje m cifrado con dos claves e1 y e2, puede ser

recuperado.

I Ataques de exponente bajo:I Un mismo m cifrado con tres claves distintas, en las que e = 3, puede

recuperarse.I Se evitan rellenando m con informacion aleatoria.

I Firmar y codificar:I Nunca firmar un mensaje despues de cifrarlo.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 15 / 21

Otros Algoritmos Asimetricos

Indice

Introduccion

Ataque de intermediario

Algoritmo RSA

Otros Algoritmos Asimetricos

Criptografıa Asimetrica de Curva Elıptica

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 16 / 21

Page 76: Presentacion cripto transp_manuel_lucena

Otros Algoritmos Asimetricos Algoritmo de Diffie-Hellman

El Algoritmo de Diffie-Hellman

I Propuesto en 1976 por W. Diffie y M. Hellman.

I Descubierto algunos anos antes por los sericios de inteligencia ingleses(Malcolm J. Williamson), pero mantenido en secreto.

I Permite acordar una informacion secreta por dos interlocutores noautentificados.

Descripcion

I Interlocutores: A y B.

I Informacion publica: p primo y α generador de Z∗p.

I Algoritmo:

1. A genera un valor x aleatorio, y envıa a B: αx (mod p).2. B genera un valor y aleatorio, y envıa a A: αy (mod p).3. B calcula K = (αx)y (mod p).4. A calcula K = (αy )x (mod p).

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 17 / 21

Otros Algoritmos Asimetricos Algoritmos de ElGamal y Rabin

Algoritmos de ElGamal y Rabin

Algoritmo de ElGamal

I Disenado inicialmente para firma digital, y extendido posteriormentepara cifrado.

I El tamano del mensaje firmado o cifrado es aproximadamente el dobleque el del mensaje original.

Algoritmo de Rabin

I Basado en el problema del residuo cuadratico.

I El cifrado es muy simple: c = m2 (mod n).

I El descifrado es mas complejo. Se generan cuatro mensajes y hay quedecidir cual es el bueno.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 18 / 21

Page 77: Presentacion cripto transp_manuel_lucena

Otros Algoritmos Asimetricos Algoritmo DSA

Algoritmo DSA

Digital Signature Algorithm

I Propuesto por el NIST en 1991.

I Variante del algoritmo de ElGamal.

I Solo para generar y verificar firmas digitales.

I Forma parte del protocolo DSS (Digital Signature Standard).

I Disenado para funcionar en conjuncion con SHA-1.

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 19 / 21

Criptografıa Asimetrica de Curva Elıptica

Indice

Introduccion

Ataque de intermediario

Algoritmo RSA

Otros Algoritmos Asimetricos

Criptografıa Asimetrica de Curva Elıptica

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 20 / 21

Page 78: Presentacion cripto transp_manuel_lucena

Criptografıa Asimetrica de Curva Elıptica

Criptografıa Asimetrica de Curva Elıptica

I Adapta los algoritmos asimetricos al dominio de las curvas elıpticas.

I Reformula los algoritmos para convertir los problemas en Zn enproblemas analogos en curvas elıpticas finitas.

I Casi todos los algoritmos asimetricos poseen una version de curvaelıptica.

Cifrado de ElGamal sobre Curvas Elıpticas

I Sea p un punto de una curva elıptica.

I Sea n el cardinal de 〈p〉. Tomamos un entero x entre 1 y n − 1.

I y = px es sustituido por y = xp.

I a = pk es sustituido por a = kp.

I ...

Manuel Lucena (Dpto. Informatica) 4d. Cifrados Asimetricos 11 de mayo de 2009 21 / 21

Page 79: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 4. Algoritmos de Cifrado.

5a Parte: Funciones Resumen

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

25 de septiembre de 2008

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 1 / 10

Funciones Resumen

Indice

Funciones Resumen

Funciones MDC

Funciones MAC

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 2 / 10

Page 80: Presentacion cripto transp_manuel_lucena

Funciones Resumen

Funciones Resumen

I Utiles para verificar la integridad de los datos.

I A partir de un mensaje de longitud arbitraria, generan resumenes(hashes) de longitud fija.

I Se produce una perdida de informacion en el proceso, por lo que sonfunciones irreversibles.

I Tipos:I MAC: Emplean una clave para calcular la signatura.I MDC: No hacen uso de ninguna clave.

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 3 / 10

Funciones Resumen Propiedades

Propiedades de las Funciones Resumen

1. r(m) es de longitud fija, independientemente de la longitud de m.

2. Dado m, es facil calcular r(m).

3. Dado m, resulta imposible obtener un m′ tal que r(m′) = r(m).

I La idea es que cada mensaje tenga asociado un valor de r(m).

I Aunque en teorıa deben existir infinitos valores de m para un r(m),debe ser muy difıcil encontrarlos.

I Propiedad adicional:I Debe ser difıcil encontrar un par (m, m′) tal que r(m) = r(m′).

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 4 / 10

Page 81: Presentacion cripto transp_manuel_lucena

Funciones MDC

Indice

Funciones Resumen

Funciones MDC

Funciones MAC

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 5 / 10

Funciones MDC Estructura

Estructura de una Funcion MDC

I Se basan en funciones de compresion.

I El mensaje se trocea en bloques de igual tamano.

I De forma iterativa, los bloques se van combinando con los resultadosanteriores.

Estructura de una funcion MDC

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 6 / 10

Page 82: Presentacion cripto transp_manuel_lucena

Funciones MDC Algoritmos MD5 y SHA-1

Algoritmos MD5 y SHA-1

MD5

I Creado por Ron Rivest.

I Genera hashes de 128 bits.

I Procesa los mensajes en bloques de 512 bits.

I Si el mensaje no es multiplo de 512 bits, se alarga.

I Cuatro rondas, con 16 operaciones cada una.

SHA-1

I Desarrollado por la NSA como parte del DSS.

I Procede del algoritmo SHA-0

I Genera resumenes de 160 bits, troceando el mensaje en bloques de512 bits.

I Posee cuatro rondas, con 20 operaciones cada una.

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 7 / 10

Funciones MDC Seguridad de las funciones MDC

Seguridad de las funciones MDC

I Tanto MD5 como SHA-1 estan en entredicho.I Alternativas: Familia SHA-2, Whirlpool, ...I El NIST ha convocado un proceso de seleccion de un nuevo algoritmo.

I Colision: par de mensajes (m, m′), tal que r(m) = r(m′).

I Todos los MDC presentan colisiones.I Tipos de estrategias para hallar colisiones:

I De preimagen: A partir de m, se busca un m′.I De colision: Se buscan pares (m, m′) arbitrarios.

Los ataques de preimagen son mucho mas peligrosos que los de colision.

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 8 / 10

Page 83: Presentacion cripto transp_manuel_lucena

Funciones MAC

Indice

Funciones Resumen

Funciones MDC

Funciones MAC

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 9 / 10

Funciones MAC

Funciones MAC

I Emplean una clave secreta para calcular el resumen.

I Permiten verificar tanto la integridad como el origen del mensaje.

Tipos:

1. Basados en cifrados por bloques en modo CBC.

2. HMAC: Aplicar un MDC a un mensaje modificado al que se haanadido la clave. Ejemplo:

MD5(k ⊕ opad , MD5(k ⊕ ipad , m))

3. Basados en generadores de secuencia.

Manuel Lucena (Dpto. Informatica) 4e. Funciones Resumen 25 de septiembre de 2008 10 / 10

Page 84: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 5. Aplicaciones Criptograficas.1a Parte: Protocolos Criptograficos

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

17 de mayo de 2009

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 1 / 20

Protocolos de comunicacion Segura

Indice

Protocolos de comunicacion Segura

El protocolo IPSec

Protocolo SSL

Protocolo TLS

Protocolo SSH

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 2 / 20

Page 85: Presentacion cripto transp_manuel_lucena

Protocolos de comunicacion Segura

Protocolos versus Algoritmos Criptograficos

I Cada algoritmo criptografico permite garantizar uno o varios aspectosde seguridad.

I Las aplicaciones modernas suelen requerir servicios de seguridadcomplejos.

I Un protocolo de seguridad:I Proporciona un mecanismo concreto para usar un algoritmo

criptografico de forma correcta (inicializacion, parametros, modos deoperacion...).

I Frecuentemente involucra a mas de un algoritmo.I No depende de algoritmos en concreto, sino que estos son

intercambiables.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 3 / 20

Protocolos de comunicacion Segura

Protocolos de comunicacion segura

Proporcionan servicios de seguridad a diferentes niveles:

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 4 / 20

Page 86: Presentacion cripto transp_manuel_lucena

El protocolo IPSec

Indice

Protocolos de comunicacion Segura

El protocolo IPSec

Protocolo SSL

Protocolo TLS

Protocolo SSH

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 5 / 20

El protocolo IPSec

IPSec

Protocolo IPSec

I Proporciona seguridad a nivel IP.I Servicios:

I Autentificacion.I Confidencialidad.

I Permite tambien gestionar las Claves Publicas.

Aplicaciones:

I Creacion de redes privadas virtuales (VPN).

I Acceso remoto seguro a la red de una companıa desde cualquierpunto de Internet.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 6 / 20

Page 87: Presentacion cripto transp_manuel_lucena

El protocolo IPSec

¿Como trabaja IPSec?

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 7 / 20

El protocolo IPSec

Modos de funcionamiento de IPSec

Modo Transporte

I Proporciona seguridad a protocolos de capas superiores.

I Se aplica unicamente a la carga util (payload) de un paquete IP.

Modo Tunel

I Proporciona seguridad a nivel IP, encapsulando los paquetes.

I Se aplica a todo el paquete, incluida la cabecera.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 8 / 20

Page 88: Presentacion cripto transp_manuel_lucena

El protocolo IPSec

Componentes de IPSec

Protocolo ESP

I Crea un encapsulado de carga util de seguridad (ESP).

I Soporta cifrado y cifrado+autentificacion.

Protocolo AH

I Define una cabecera de autentificacion (AH).

I Solo soporta autentificacion.

I IPSec tambien incorpora mecanismos especıficos para evitar ataquesde repeticion.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 9 / 20

El protocolo IPSec

Esquema general de documento IPSec

IPSec viene definido por diversos documentos, relacionados entre sı:

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 10 / 20

Page 89: Presentacion cripto transp_manuel_lucena

El protocolo IPSec

Gestion de Claves en IPSec

Tipos

I Manual: El administrador configura las claves del sistema y anade lasde los sistemas con los que se va a comunicar.

I Automatica: Permite la creacion y distribucion de claves bajodemanda.

Protocolos

I Oakley: Protocolo generico basado en el algoritmo de Diffie-Hellmann.

I ISAKMP: No basado en ningun algoritmo. Define los formatos demensaje para intercambio de claves.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 11 / 20

El protocolo IPSec

Asociaciones de Seguridad (SA) en IPSec

Definicion de SA

Relacion unidireccional entre un emisor y un receptor que ofrece serviciosde seguridad al trafico que transporta.

I Para un intercambio de datos bidireccional, se usan dos SA.

I Una SA puede usar AH o ESP, pero no los dos a la vez.I Parametros que identifican una SA:

I Indice de Parametros de Seguridad (SPI). Secuencia de bits asignada ala SA. Se coloca en las cabeceras AH o ESP.

I Direccion IP de destino.I Identificador del protocolo de seguridad (AH o ESP).

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 12 / 20

Page 90: Presentacion cripto transp_manuel_lucena

El protocolo IPSec

Parametros de una Asociacion de Seguridad

I Contador de numero de secuencia (32 bits).

I Desbordamiento del contador de secuencia.

I Ventana contra repeticiones.

I Informacion AH (algoritmo empleado, claves, tiempos de vida, etc.)

I Informacion ESP.

I Tiempo de vida de la SA.

I Modo de protocolo IPSec (tunel, transporte o comodın).

I MTU del camino (tamano de datos maximo que puede enviarse sinfragmentacion).

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 13 / 20

Protocolo SSL

Indice

Protocolos de comunicacion Segura

El protocolo IPSec

Protocolo SSL

Protocolo TLS

Protocolo SSH

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 14 / 20

Page 91: Presentacion cripto transp_manuel_lucena

Protocolo SSL

Protocolo SSL (Secure Sockets Layer)

I Desarrollado por la empresa Netscape.

I Se coloca por encima de la capa de transporte.I Servicios:

I Confidencialidad e integridad de la conexion.I Autentificacion de las entidades de origen/destino.

I La capa del emisor fragmenta los mensajes, los comprime, cifra yenvıa.

I Los paquetes son recogidos en destino, descifrados, descomprimidos,reensamblados y restituidos al destinatario de forma transparente.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 15 / 20

Protocolo SSL

Comunicacion SSL

Fase de establecimiento (handshaking)

I Los interlocutores se autentifican mutuamente mediante certificadosdigitales.

I Se acuerda que algoritmos simetricos se emplearan y la longitud delas claves (normalmente, 40 o 128 bits).

Fase de transferencia

I Se acuerda una clave simetrica comun.

I Se transfieren los datos propiamente dichos.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 16 / 20

Page 92: Presentacion cripto transp_manuel_lucena

Protocolo TLS

Indice

Protocolos de comunicacion Segura

El protocolo IPSec

Protocolo SSL

Protocolo TLS

Protocolo SSH

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 17 / 20

Protocolo TLS

Protocolo TLS (Transport Layer Security)

I Basado en la version 3.0 de SSL, aunque incompatible con el mismo.

I Permite establecer comunicaciones seguras, e incluso anonimas.

I A diferencia de SSL, puede reutilizar una conexion ya establecida, porlo que no necesita puertos dedicados.

I Inmune a ataques de intermediario.

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 18 / 20

Page 93: Presentacion cripto transp_manuel_lucena

Protocolo SSH

Indice

Protocolos de comunicacion Segura

El protocolo IPSec

Protocolo SSL

Protocolo TLS

Protocolo SSH

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 19 / 20

Protocolo SSH

Protocolo SSHI Originalmente, se trataba de un producto comercial.

I Actualmente, mantenido dentro del proyecto OpenBSD.I Se ubica como una aplicacion mas, o sobre la capa de transporte.I Desarrollado para proporcionar alternativas seguras a los servicios

rlogin, telnet y rsh.I En su version 2, se ha convertido en un estandar de facto. Se emplea

practicamente todos los sistemas operativos *NIX y *BSD.

Servicios proporcionados

I Acceso a consola (shell).

I Copia segura de archivos (scp).

I FTP seguro (sftp).

I Tunelado de puertos TCP.

I . . .

Manuel Lucena (Dpto. Informatica) 5a. Protocolos 17 de mayo de 2009 20 / 20

Page 94: Presentacion cripto transp_manuel_lucena

Criptografıa y Seguridad en ComputadoresTema 5. Aplicaciones Criptograficas.

2a Parte: Autentificacion

Manuel J. Lucena [email protected]

Departamento de InformaticaUniversidad de Jaen

17 de mayo de 2009

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 1 / 13

Introduccion

Indice

Introduccion

Firmas Digitales

Certificados Digitales

Autentificacion Mediante Funciones Resumen

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 2 / 13

Page 95: Presentacion cripto transp_manuel_lucena

Introduccion

Introduccion

Autentificar: Asegurar la autenticidad de algo.

I En Informatica, ese algo puede ser:

1. Un mensaje.2. Un usuario.3. Un dispositivo.

I En funcion de que queramos autentificar, las estrategias pueden sermuy diferentes.

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 3 / 13

Firmas Digitales

Indice

Introduccion

Firmas Digitales

Certificados Digitales

Autentificacion Mediante Funciones Resumen

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 4 / 13

Page 96: Presentacion cripto transp_manuel_lucena

Firmas Digitales

Firmas Digitales

I Secuencia de bits que se anade a una pieza de informacion cualquiera,y que puede verificarse de forma independiente del proceso detransmision.

Caracterısticas

I Indisolublemente ligada al mensaje.

I Solo puede ser generada por el titular legıtimo.

I Publicamente verificable.

I La forma mas comun es la combinacion de criptografıa asimetrica confunciones MDC.

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 5 / 13

Certificados Digitales

Indice

Introduccion

Firmas Digitales

Certificados Digitales

Autentificacion Mediante Funciones Resumen

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 6 / 13

Page 97: Presentacion cripto transp_manuel_lucena

Certificados Digitales

Certificados Digitales

I Un certificado digital es una clave publica firmada digitalmente poruna autoridad de certificacion.

I Certificados X.509:I Uno de los estandares mas extendidos.I Solo define la sintaxis, por lo que no depende de ningun algoritmo.I Nombre del certificador, algoritmo de firma, perıodo de validez, sujeto,

clave publica del sujeto, etc.

I Revocacion de certificados:I Util para anular claves publicas no validas (perdida, robo, etc.)I Hacen falta listas de revocacion de certificados (CRL).

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 7 / 13

Certificados Digitales Verificacion

Verificacion

I Dos autoridades de certificacion pueden estar certificadas por unatercera.

I Pueden surgir diferentes tipos de infraestructuras (PKI):I Jerarquicas.I Distribuidas.I Hıbridas.

Ejemplo de infraestructura jerarquica.

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 8 / 13

Page 98: Presentacion cripto transp_manuel_lucena

Certificados Digitales Verificacion

Infraestructuras Jerarquicas vs. Distribuidas

Modelo Jerarquico

I Estructura en arbol.

I Pocos certificadores. Responsabilidad: alta.

I Pocos caminos de certificacion.

I Una clave puede ser confiable o no confiable.

I Facil de justificar la confianza en una clave.

Modelo Distribuido

I Estructura en grafo.

I Muchos certificadores. Responsabilidad: baja.

I Multiples caminos de certificacion.

I Diferentes grados de confianza para una clave.

I Difıcil calcular y justificar la confianza en una clave.

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 9 / 13

Autentificacion Mediante Funciones Resumen

Indice

Introduccion

Firmas Digitales

Certificados Digitales

Autentificacion Mediante Funciones Resumen

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 10 / 13

Page 99: Presentacion cripto transp_manuel_lucena

Autentificacion Mediante Funciones Resumen Contrasenas

Autentificacion mediante Contrasenas

I Permiten autentificar a un usuario humano, mediante una informacion(contrasena) que solo este conoce.

Enfoques:

I Almacenar las contrasenas en claro en el sistema.I Valido para sistemas que tengan baja interaccion.

I Almacenar resumenes de las contrasenas.I Metodo usado en la mayorıa de SS.OO.

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 11 / 13

Autentificacion Mediante Funciones Resumen Contrasenas

Ataques de diccionario

I Un atacante genera un diccionario con posibles contrasenas, y calculalos resumenes de todas ellas.

I Obtiene los resumenes del sistema objetivo y compara.

I Estrategias para dificultar este ataque:I Anadir sal a las contrasenas. Obliga a recalcular la base de datos.I Escoger contrasenas difıciles de predecir.I Cambiar las contrasenas con frecuencia.I No usar la misma contrasena en diferentes lugares.I Custodiarlas adecuadamente.

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 12 / 13

Page 100: Presentacion cripto transp_manuel_lucena

Autentificacion Mediante Funciones Resumen Autentificacion por Desafıo

Autentificacion por Desafıo

I Util para validar dispositivos capaces de almacenar y mantener ensecreto una clave secreta.

I Puesto que el valor de X no se reutiliza, un ataque de repeticion noresulta efectivo.

Manuel Lucena (Dpto. Informatica) 5b. Autentificacion 17 de mayo de 2009 13 / 13