Introducci´on a la Criptograf´ıa -...

36
Introducci´ on a la Criptograf´ ıa Contenidos del tema Historia Conceptos asicos Sistemas sim´ etricos y asim´ etricos Protocolos Introducci´on a la Criptograf´ ıa DSIC-UPV 2012 (DSIC-UPV) Introducci´ on a la Criptograf´ ıa 2012 1 / 28

Transcript of Introducci´on a la Criptograf´ıa -...

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Introduccion a la Criptografıa

DSIC-UPV

2012

(DSIC-UPV) Introduccion a la Criptografıa 2012 1 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Introduccion a la Criptografıa

Breve historia y objetivos.

Conceptos basicos. Criptosistema

Sistemas simetricos y asimetricos

Protocolos

Criptografıa simetricaCriptografıa de clave publica

(DSIC-UPV) Introduccion a la Criptografıa 2012 2 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Historia

Nacimiento

Segunda Guerra mundial. Proyecto ULTRA (BlentchleyPark, A. Turing) con objeto de romper el sistema ENIGMACoincide con lo que podrıa considerarse el primercomputador.

Anos 60 y 70

La expansion de la computadora y las redes decomunicacion proporciona un gran impulso a la criptografıaInvestigaciones (en su mayorıa) a cargo de la NSA de losEEUUSolo recientemente se desarrolla una investigacionunivesitaria en criptografıa, con resultados publicados enrevistas y congresos.En este contexto nace la criptografıa de clave publica(Diffie Hellman ’76 y RSA ’78)

(DSIC-UPV) Introduccion a la Criptografıa 2012 3 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Historia

En paralelo con el desarrollo de la criptografıa, losgobiernos (especialmente EEUU) siguen intentandocontrolar los avances en criptografıa

Debilitacion deliberada del algoritmo de los telefonos GSMDenuncias de la existencia de una puerta trasera en elcodigo criptgrafico de S.S.O.O. (Windows 1999)Las versiones que se exportan de los navegadores masextendidos incorporan seguridad debil (las conexionesseguras no lo son, no siendo consciente de ello el usuario)

El software criptografico en EEUU esta sujeto a lasmismas leyes que el armamento nuclear (misma tendenciaen la UE)

(DSIC-UPV) Introduccion a la Criptografıa 2012 4 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Historia

Intencion gubernamental de almacenar las clavesindividuales de los ciudadanos, considerando ilegales las noregistradas

Echelon: red creada por la NSA en 1980 (junto con GranBretana, Australia y Nueva Zelanda) para monitorizar lascomunicaciones.

Enfopol: version europea de Echelon.

Pretexto: lucha antiterrorista

(DSIC-UPV) Introduccion a la Criptografıa 2012 5 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Conceptos basicos: Sistema criptografico

(DSIC-UPV) Introduccion a la Criptografıa 2012 6 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Conceptos basicos: Sistema criptografico

CLAVE CRIPTOGRAMAMENSAJE

CIFRADO

DESCIFRADO

(DSIC-UPV) Introduccion a la Criptografıa 2012 6 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Conceptos basicos: Sistema criptografico

EMISOR RECEPTOR

ek dky = ek(x)

CRIPTOANALISTA

xdk(y) = x

Consideraremos unicamente ataques logicos

(DSIC-UPV) Introduccion a la Criptografıa 2012 7 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Objetivos de la Criptografıa

Confidencialidad : ocultar el contenido de la informacion salvopara aquellos autorizados. Fundamentalmente,aprovechando resultados de la teorıa de numeros

Accesibilidad : asegurar quien, y en que momento, puedeacceder a una informacion

Autenticidad : el receptor de un mensaje debe poseer lacerteza de su origen

Integridad : seguridad, para el receptor, de que el mensajeno ha sido modificado, ası como posibilidad dedetectar su posible manipulacion

No repudio : Imposibilidad por parte del emisor de negar laautorıa de un mensaje

(DSIC-UPV) Introduccion a la Criptografıa 2012 8 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Caracterısticas de un buen Criptosistema

1 Cifrado y descifrado eficiente independientemente de laclave escogida:

Dado un mensaje x y la funcion de cifrado ek , laobtencion de y = ek(x) ha de ser facil

Dado un criptograma y y la funcion de descifrado dk , laobtencion de x = dk(y) ha de ser facil

2 El sistema ha de ser facilmente utilizable

3 La seguridad del sistema debe depender unicamente delsecreto de las claves utilizadas y no del secreto de losalgoritmos de cifrado y descifrado.

Debe asumirse que estos son conocidos por cualquiercriptoanalista

(DSIC-UPV) Introduccion a la Criptografıa 2012 9 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptoanalisis: Diferentes tipos de ataque

Solo texto cifrado : Se dispone de varios criptogramas cifradoscon el mismo algoritmo. El objetivo es determinarlos mensajes que generaron dichos criptogramas,o mejor, las claves utilizadas en el cifrado

Mensaje conocido : Ademas de disponer de varioscriptogramas, se dispone de los mensajes que losoriginaron. Se busca obtener las claves de cifrado

Mensaje escogido : Se dispone, para un conjunto de mensajesescogidos, de un conjunto de criptogramas. Sebusca obtener las claves de cifrado

Criptograma escogido : A partir de varios criptogramasescogidos, se obtienen los mensajes que losgeneran. Esta informacion se utiliza para obtenerla clave de cifrado. Util para criptoanalisis declave publica

(DSIC-UPV) Introduccion a la Criptografıa 2012 10 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave simetrica

Ksecreta Ksecreta

cifrado descifradoCRIPTOGRAMA

MENSAJE MENSAJE

Asegura confidencialidad e integridad

(DSIC-UPV) Introduccion a la Criptografıa 2012 11 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave simetrica: Ejemplo

A B C D E

A A B C D E

B F G H I J

C L M N N O

D P Q R S T

E U V X Y Z

CAPTURADOAGENTEENDESTINO⇓

ACAADADEEADCAAADCEAABBAECCDEAECC ...

(DSIC-UPV) Introduccion a la Criptografıa 2012 12 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave simetrica: Ejemplo

C A NA R D E T

P U O G ET A . . .

CAPTURADOAGENTE. . .

⇓CAN. . .ARDET. . .PUOGE. . .TA. . .

(DSIC-UPV) Introduccion a la Criptografıa 2012 13 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave publica

Kpublica Ksecreta

cifrado descifradoCRIPTOGRAMA

MENSAJE MENSAJE

(DSIC-UPV) Introduccion a la Criptografıa 2012 14 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave publica

Funciones unidireccionales: f : X → Y es unidireccional siy solo s para todo x ∈ X , f (x) es facil de computar, peropara muchos elementos y ∈ Y es computacionalmente

intratable encontrar f −1(y), por ejemplo, el Logaritmo

Discreto

p.e: X = {0, 1, . . . , 16}, f (x) = 3x mod 17

x: 1|2| 3 | 4 |5| 6 | 7 | 8 | 9 |10|11|12|13|14|15|16f(x): 3|9|10|13|5|15|11|16|14| 8 | 7 | 4 |12| 2 | 6 | 1

(DSIC-UPV) Introduccion a la Criptografıa 2012 15 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave publica

Funciones unidireccionales: f : X → Y es unidireccional siy solo s para todo x ∈ X , f (x) es facil de computar, peropara muchos elementos y ∈ Y es computacionalmente

intratable encontrar f −1(y), por ejemplo, el Logaritmo

Discreto

p.e: X = {0, 1, . . . , 16}, f (x) = 3x mod 17

x: 1|2| 3 | 4 |5| 6 | 7 | 8 | 9 |10|11|12|13|14|15|16f(x): 3|9|10|13|5|15|11|16|14| 8 | 7 | 4 |12| 2 | 6 | 1

Funcion unidireccional con trampa: funcion unidireccionaltal que, cierta informacion adicional, permite el rapidocalculo de la inversa

(DSIC-UPV) Introduccion a la Criptografıa 2012 15 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave publica

Funciones unidireccionales: f : X → Y es unidireccional siy solo s para todo x ∈ X , f (x) es facil de computar, peropara muchos elementos y ∈ Y es computacionalmente

intratable encontrar f −1(y), por ejemplo, el Logaritmo

Discreto

p.e: X = {0, 1, . . . , 16}, f (x) = 3x mod 17

x: 1|2| 3 | 4 |5| 6 | 7 | 8 | 9 |10|11|12|13|14|15|16f(x): 3|9|10|13|5|15|11|16|14| 8 | 7 | 4 |12| 2 | 6 | 1

Funcion unidireccional con trampa: funcion unidireccionaltal que, cierta informacion adicional, permite el rapidocalculo de la inversa

p.e: Calculo de f (x) = 3x mod n donde n = pq con p, q

primos. Si se conocen p y q entonces es facil de calcular lainversa

(DSIC-UPV) Introduccion a la Criptografıa 2012 15 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Protocolo: Definicion

Protocolo: secuencia de pasos, que implican a dos o maspartes, encaminados a cumplir determinado objetivo

Todo implicado en el protocolo debe conocerlo a priori,ası como su papel en elTodos los implicados en el protocolo deben estar deacuerdo en seguirloEl protocolo debe ser no ambiguo. Cada paso ha de estarbien definidoEl protocolo debe ser completo. Debe especificar unaaccion para toda posible situacion

(DSIC-UPV) Introduccion a la Criptografıa 2012 16 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Sistema simetrico: Envıo de mensajes cifrados

1 EMISOR y RECEPTOR acuerdan un algoritmo de cifrado

2 EMISOR y RECEPTOR acuerdan una clave

3 EMISOR cifra el mensaje utilizando el algoritmo y la claveacordados

4 EMISOR envıa el mensaje a RECEPTOR

5 RECEPTOR descifra el mensaje utilizando el mismoalgoritmo y la misma clave

(DSIC-UPV) Introduccion a la Criptografıa 2012 17 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Sistema simetrico: Envıo de mensajes cifrados

1 EMISOR y RECEPTOR acuerdan un algoritmo de cifrado

2 EMISOR y RECEPTOR acuerdan una clave

3 EMISOR cifra el mensaje utilizando el algoritmo y la claveacordados

4 EMISOR envıa el mensaje a RECEPTOR

5 RECEPTOR descifra el mensaje utilizando el mismoalgoritmo y la misma clave

¿Numero de claves para un colectivo de n usuarios?

(DSIC-UPV) Introduccion a la Criptografıa 2012 17 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave simetrica

canal seguro

canal inseguro

fuente de claves

cifrado ek(x) = y

Origen del mensaje

CRIPTOANALISTA

descifrado dk(y) = x

Destino

x

y

k

k

x

(DSIC-UPV) Introduccion a la Criptografıa 2012 18 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Sistema asimetrico: Envıo de mensajes cifrados (I)

1 EMISOR y RECEPTOR acuerdan un algoritmo de cifrado

2 RECEPTOR envıa a EMISOR su clave publica

3 EMISOR cifra el mensaje utilizando el algoritmo y la clavepublica recibida

4 EMISOR envıa el mensaje a RECEPTOR

5 RECEPTOR descifra el mensaje utilizando el mismoalgoritmo y la clave privada

(DSIC-UPV) Introduccion a la Criptografıa 2012 19 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Sistema asimetrico: Envıo de mensajes cifrados (I)

1 EMISOR y RECEPTOR acuerdan un algoritmo de cifrado

2 RECEPTOR envıa a EMISOR su clave publica

3 EMISOR cifra el mensaje utilizando el algoritmo y la clavepublica recibida

4 EMISOR envıa el mensaje a RECEPTOR

5 RECEPTOR descifra el mensaje utilizando el mismoalgoritmo y la clave privada

¿Numero de claves para un colectivo de n usuarios?

(DSIC-UPV) Introduccion a la Criptografıa 2012 19 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Sistema asimetrico: Envıo de mensajes cifrados (II)

1 Un conjunto de usuarios acuerdan un algoritmo de cifradoy publican sus claves publicas en una base de datosaccesible a todos

2 EMISOR toma de la base de datos la clave publica delRECEPTOR del mensaje

3 EMISOR cifra el mensaje utilizando el algoritmo y la clavepublica seleccionada

4 EMISOR envıa el mensaje a RECEPTOR

5 RECEPTOR descifra el mensaje utilizando el mismoalgoritmo y la clave privada

(DSIC-UPV) Introduccion a la Criptografıa 2012 20 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave simetrica

canal inseguro

canal inseguro

cifrado

ekpb(x) = y

Origen del mensaje

CRIPTOANALISTA

PASIVO

fuente de claves

descifrado

dkpr(y) = x

Destino

x

y

kpr

kpb

x

(DSIC-UPV) Introduccion a la Criptografıa 2012 21 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Criptografıa de clave simetrica

cifrado

ek′

pb(x) = y ′

Origen

del mensaje

CRIPTOANALISTA

ACTIVO

fuente

de claves

descifrado

dk′

pr(y ′) = x

cifrado

ekpb(x ′) = y ′′

fuente

de claves

descifrado

dkpr(y ′′) = x ′

Destino

x

y ′

k ′

prk ′

pb

x x ′

kpr

kpb

y ′′

(DSIC-UPV) Introduccion a la Criptografıa 2012 22 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Sistema hıbrido: Envıo de mensajes cifrados

1 EMISOR y RECEPTOR acuerdan dos algoritmos decifrado: uno de clave publica y otro de clave secreta

2 RECEPTOR genera un par de claves (Kpb,Kpr ) ycomunica a EMISOR la parte publica

3 EMISOR genera una clave de sesion (criptografıa de clavesecreta)

4 EMISOR cifra el mensaje utilizando el algoritmo y la clavepublica seleccionada

5 EMISOR envıa el mensaje a RECEPTOR

6 RECEPTOR descifra el mensaje utilizando el mismoalgoritmo y la clave privada

(DSIC-UPV) Introduccion a la Criptografıa 2012 23 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Propiedades

1 La firma ha de convencer al receptor que el emisor hafirmado el documento deliberadamente

2 La firma es infalsificable

3 La firma no debe ser reutilizable, debe formar parte deldocumento y no poderse trasladar a ningun otro

4 El documento no debe poder alterarse una vez firmado

5 El firmante no puede repudiar su firma

(DSIC-UPV) Introduccion a la Criptografıa 2012 24 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Clave simetrica

TESTIGO comparte con A y B sendas claves secretas kA y kB

1 A cifra el mensaje con kA y lo envia a TESTIGO

2 TESTIGO lo descifra (utilizando kA)

3 TESTIGO anade al texto una confirmacion de surecepcion proveniente de A

4 TESTIGO cifra el mensaje resultante con kB y lo envia a B

5 B descifra el mensaje. Puede leer tanto el mensaje como lacertificacion

(DSIC-UPV) Introduccion a la Criptografıa 2012 25 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Clave simetrica

TESTIGO comparte con A y B sendas claves secretas kA y kB

1 A cifra el mensaje con kA y lo envia a TESTIGO

2 TESTIGO lo descifra (utilizando kA)

3 TESTIGO anade al texto una confirmacion de surecepcion proveniente de A

4 TESTIGO cifra el mensaje resultante con kB y lo envia a B

5 B descifra el mensaje. Puede leer tanto el mensaje como lacertificacion

TESTIGO necesita mantener una gran base de datos

TESTIGO necesita ser infalible

(DSIC-UPV) Introduccion a la Criptografıa 2012 25 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Clave publica

Algunos sistemas de cifrado mediante clave publica puedenutilizarse como sistemas de firma

1 A firma el documento a enviar cifrandolo con su claveprivada

2 A envia el criptograma a B

3 B descifra el documento con la clave publica de Averificando, al tiempo, la firma

(DSIC-UPV) Introduccion a la Criptografıa 2012 26 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Clave publica

Algunos sistemas de cifrado mediante clave publica puedenutilizarse como sistemas de firma

1 A firma el documento a enviar cifrandolo con su claveprivada

2 A envia el criptograma a B

3 B descifra el documento con la clave publica de Averificando, al tiempo, la firma

Es innecesaria la existencia de un testigo para verificar la firma

(DSIC-UPV) Introduccion a la Criptografıa 2012 26 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Clave publica

Cada entidad dispone de dos pares de claves

Claves publica/privada de firma: (FA,VA), (FB ,VB)

Claves publica/privada de cifrado: (CA,DA), (CB ,DB)

1 A firma el mensaje x con su clave privada de firma: FA(x)

2 A cifra el resultado con la clave publica de B: CB(FA(x))

3 A envia el resultado a B

4 B descifra el criptograma utilizando su clave privada (DB):DB(CB(FA(x))) = FA(x)

5 B verifica el mensaje utilizando la clave publica de firma(VA): VA(FA(x)) = x

(DSIC-UPV) Introduccion a la Criptografıa 2012 27 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Clave publica

Cada entidad dispone de dos pares de claves

Claves publica/privada de firma: (FA,VA), (FB ,VB)

Claves publica/privada de cifrado: (CA,DA), (CB ,DB)

1 A firma el mensaje x con su clave privada de firma: FA(x)

2 A cifra el resultado con la clave publica de B: CB(FA(x))

3 A envia el resultado a B

4 B descifra el criptograma utilizando su clave privada (DB):DB(CB(FA(x))) = FA(x)

5 B verifica el mensaje utilizando la clave publica de firma(VA): VA(FA(x)) = x

Importante: firmar antes de cifrar

(DSIC-UPV) Introduccion a la Criptografıa 2012 27 / 28

Introduccion ala Criptografıa

Contenidos deltema

Historia

Conceptosbasicos

Sistemassimetricos yasimetricos

Protocolos

Firma digital: Clave publica y funciones resumen

Los algoritmos de clave publica no permiten firmareficientemente documentos largos.

Las funciones resumen (unidireccionales) permiten reducirel documento, ganando en eficiencia.

La funcion resumen y el algoritmo de firma son acordadosde antemano

1 A produce un resumen de su documento

2 A firma (cifra) el resumen con su clave privada

3 A envıa el documento y el resumen firmado a B

4 B calcula el resumen del documento, verifica la firma(descifra el resumen con la clave publica de A) y comparaambos resumenes, verificando si son iguales

(DSIC-UPV) Introduccion a la Criptografıa 2012 28 / 28