protección de datos. criptografía la necesidad de ocultar lo enviado en un mensaje para evitar que...

33
Protección de datos

Upload: rafaela-sabedra

Post on 07-Feb-2015

3 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Protección de datos

Page 2: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía La necesidad de ocultar lo enviado en

un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua.

Se atribuye a Julio César un método muy simple de encriptación, sustitu-yendo cada letra en el mensaje por la que se encuentra en el abecedario tres lugares después.

Page 3: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

Este pequeño programa permite ver lo antes expuesto.

Julio Cesar.exe

Page 4: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

El problema fundamental en la criptografía es la necesidad que tienen emisor y receptor del mensaje en ponerse de acuerdo en la forma de cifrado y en la clave.

Page 5: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Durante mucho tiempo se pensó que no había posibilidad de intercambiar claves sin enviarlas por algún medio seguro, para evitar que pudieran ser interceptadas comprometiendo así la seguridad de la comunicación.

Page 6: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Pero en la década de los 70 del siglo XX dos matemáticos norteamerica-nos, Whitfield Diffie y Martin Hellman, demostraron que dos personas po-dían acordar una clave sin necesidad de entrevistarse y usando una línea de transmisión insegura en la que pudiera haber escuchas espiando, sin que estos descubrieran dicha clave.

Page 7: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Muy poco tiempo después se elaboró un nuevo sistema de criptografía que ni siquiera necesita intercambiar una clave. Dicho sistema difiere de los que se venían utilizando hasta el momento en el hecho de que, en lugar de una clave que se usa tanto para encifrar como para descifrar un mensaje, se necesitan dos distintas.

Page 8: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

De las dos claves necesarias, una, la llamada clave pública, debe ser cono-cida por todos aquellos que quieran mandar un mensaje cifrado a la persona en cuestión. Por tanto, cada persona debería publicar su clave pública como lo haría con su número de teléfono si es que quiere recibir mensajes encriptados.

Page 9: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

En cambio, guardará su clave privada, que es la que le servirá para descifrar los mensajes que reciba encriptados con su clave pública. Este sistema fue desarrollado por tres matemáticos, Rivest, Shamir y Adleman, por lo que se conoce como método RSA.

Page 10: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

El procedimiento que mostramos a continuación pone de manifiesto la posibilidad de enviar mensajes de forma segura a través de un canal de comunicación que puede estar sometido a escuchas.

Page 11: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

Tomamos nuestro mensaje en el que cada letra - en mayúsculas - se ha sustituido por el correspondiente código ASCII, dándonos como resultado un número. En el ejemplo que estamos considerando, el mensaje a transmitir es:

HAY QUE BUSCAR UNA PALABRA

Page 12: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

Se ha elaborado una pequeña aplicación que permite realizar la tarea anterior de forma fácil.

Pasar a código ASCII.exe

Page 13: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

El número resultante es

7265893281856932668583676582328578653280657665668265

Nótense los números 32 en rojo. Corresponden a los espacios entre pa-labras, ya que el código ASCII del es-pacio es 32.

Page 14: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

A continuación buscamos el número primo inmediatamente siguiente al número anterior, y lo llamamos a.

Para ello también hay elaborada una aplicación

Aritmética entera con números grandes.exe

Page 15: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

a=7265893281856932668583676582328578653280657665668273

Está 8 unidades por encima del número formado por los códigos ASCII de las letras de nuestro mensaje.

Page 16: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Criptografía

Ahora buscamos un número primo suficientemente grande, por ejemplo de 70 cifras. Podemos buscar el que está inmediatamente por encima del número

1301983450000775364512311093871982309287309155820919971039872763450912

Page 17: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Dicho número esb=1301983450000775364512311093871982

309287309155820919971039872763451143

Multiplicando a y b se obtiene el número 9460072802449545318061273304271228230422548834830240679322387992252998637722196007810840580851222161744403027210880686039

Page 18: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Este número se lo enviamos a nues-tro corresponsal, que elige otro número primo grande y lo multiplica por el número que ha recibido, devolviéndonos el resultado. Si el número que eligió es el

c=234567900000000000000000000000000000000000000007689245123129

Page 19: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

El producto que nos devuelve es 221902941111770470121246495030

8963036430933392906317231303906432509988280069423841936819964584223664389933934708276859282959224406175739127848345630712475808392728598170478546296031

Page 20: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Al recibir este número, lo dividimos por b – y la división debe ser nece-sariamente exacta – y el resultado se lo reenviamos. Es el número

1704345328749288796511068990195991804684871979310578128719394184139005954792326625672380591552245537539953786217

Page 21: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Él ahora lo divide por c y obtiene

7265893281856932668583676582328578653280657665668273

Restando el 8 que también le enviamos al principio queda

7265893281856932668583676582328578653280657665668265

Page 22: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

¿Está convencido de la bondad del método? ¿Es seguro?

Desgraciadamente, no lo es. Hay un paso que compromete la seguridad.

Vamos a verlo en esquema, sin escribir los números que hemos estado enviando.

Page 23: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Partimos de un número m que es nuestro mensaje.

Buscamos un número primo a por encima de m, y otro número primo b.

Enviamos el producto a*b. Aunque lo intercepten no pueden obtener a, pero el escucha guarda a*b.

Nuestro corresponsal busca un número primo grande c y nos envía el producto a*b*c.

Page 24: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

El escucha que nos espía en la línea de comunicación toma el número a*b*c, y dividiéndolo por a*b descubre c.

Nosotros recibimos a*b*c, lo dividimos por b y devolvemos a*c.

Nuestro corresponsal divide el número recibido por c y obtiene a, y como también le enviamos al principio la diferencia entre a y m, recupera el mensaje m. Pero lo mismo puede hacer al espía, ya que conoce c.

Page 25: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

¡Nuestro esquema no funciona! Si hubiéramos podido elegir el mismo número primo grande b para nosotros y para nuestro corresponsal, la cosa funcionaría. Bastaría mandarle el número a*b y la diferencia entre a y m para que pudiera recuperar el mensaje. El espía, incapaz de des-componer en factores a*b, no podría.

Page 26: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Pero, como demostraron Diffie y Hellman, es posible acordar una clave con nuestro corresponsal – en nues-tro caso el número b – sin que un escucha en la línea pueda calcular dicho número a pesar de que tengamos que intercambiar datos numéricos. Veamos como.

Page 27: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Elegimos un número primo muy grande p, y un número g que usualmente se toma igual a 3 ó 5. También convenimos con nuestro corresponsal que usaremos una función que es la siguiente: para cada número natural x, el valor de la función será el resto de dividir por p. Todos estos datos los enviamos a través de una línea que puede ser insegura, pero no importa que sean conocidos.

xg

Page 28: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Para ver como funciona el sistema, elegiremos como número p uno pequeño, por ejemplo p = 223, y g=3. En realidad, para asegurarnos de que sea imposible descubrir la clave, p debería tener al menos 300 cifras.

Ahora nosotros elegimos un número, que mantendremos secreto, por ejemplo el 17. El resto de dividir entre 223 es 194, y se lo enviamos a nuestro corresponsal.

173

Page 29: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Él ha elegido otro número secreto, por ejemplo 22, y nos envía el resto de la división de entre 223, que es 89.

Nosotros tomamos este número , lo elevamos a 17 y nos quedamos con el resto que da al dividirlo por 223, que es 37.

Él toma el 194 que le enviamos, lo eleva a 22 y se queda con el resto de dividirlo por 223.

223

Page 30: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

¿Adivinan que obtiene? Sí, también 37. Siendo como es un número primo, lo tomaremos como el b que buscábamos. Si no lo fuera, tomaría-mos el número primo siguiente, y éste sería el empleado para codificar nuestro mensaje.

Page 31: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Toda la fuerza del sistema reside en la práctica imposibilidad de calcular el número 17 o el 22 a partir de los restos 194 y 89 y del número primo p cuando este es realmente grande. De esta forma hemos podido acordar el valor del número primo b, y enviare-mos a nuestro corresponsal a*b. De aquí deducirá el mensaje.

Page 32: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Sin embargo, no intentemos utilizar el número b para enviar otro mensa-je, pues entonces un escucha en la línea lo podría calcular fácilmente. Cada vez que se quiera enviar un mensaje, hay que elegir una nueva clave, si usamos el método que hemos descrito.

Page 33: Protección de datos. Criptografía La necesidad de ocultar lo enviado en un mensaje para evitar que alguien no autorizado lo llegue a conocer es muy antigua

Toda la gracia del sistema radica en el uso de una “función-trampa”, en la que es muy fácil ir en un sentido pero muy difícil en el inverso.