cómo funciona el método rsa

3
Cómo funciona el método RSA Es posible que le asuste el nombre, pero usted ya ha aprendido toda la aritmética modular que le hará falta, así que vayamos al grano. Antes de nada necesitamos un sistema para convertir mensajes en números. Lo más típico es sustituir cada letra del texto por dos cifras indicando su posición en el alfabeto; es decir, cambiamos cada "a" por "01", cada "b" por "02", cada "c" por "03", etc, y de esta forma podemos convertir un importantísimo mensaje secreto como "hola" en "08151201". Debería haber alguna forma de incluir espacios y signos de puntuación, pero estos detalles no son esenciales; lo importante es que a partir de ahora los mensajes que queremos cifrar y descifrar son simplemente números. A diferencia de otros métodos más tradicionales, en los que tanto el emisor como el receptor tienen que conocer la misma clave, en RSA es el receptor quien tiene TODA la clave; al emisor le deja conocer la parte pública de la clave, que sirve para cifrar mensaje. El receptor guarda muy cuidadosamente la parte privada de la clave, que sirve para descifrar. Construir una clave es fácil, de hecho ya lo hicimos en el apartado anterior. Buscamos dos números primos como 3 y 11 y hacemos dos cosas con ellos. Primero los multiplicamos para obtener 33. Luego les restamos uno, los multiplicamos, y al resultado le sumamos 1, para obtener (3-1)*(11- 1)+1=21. Y a continuación (esto es nuevo) buscamos un divisor pequeño de 21, por ejemplo 3, y calculamos 21/3=7. Ya tenemos nuestra clave: para cifrar elevamos a la potencia 3, dividimos por 33, y nos quedamos con el resto. Para descifrar, elevamos a la potencia 7, dividimos por 33, y nos quedamos con el resto. Recordemos el truco de magia de la sección anterior: si elevamos un número entre 0 y 32 a la potencia 21 y dividimos por 33, el resto es el número con el que empezamos. Pero 21=3*7, así que elevar a la potencia 21 es

Upload: dawn-brown

Post on 17-Jan-2016

9 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Cómo Funciona El Método RSA

Cómo funciona el método RSA

Es posible que le asuste el nombre, pero usted ya ha aprendido toda la aritmética modular que le hará falta, así que vayamos al grano.

Antes de nada necesitamos un sistema para convertir mensajes en números. Lo más típico es sustituir cada letra del texto por dos cifras indicando su posición en el alfabeto; es decir, cambiamos cada "a" por "01", cada "b" por "02", cada "c" por "03", etc, y de esta forma podemos convertir un importantísimo mensaje secreto como "hola" en "08151201". Debería haber alguna forma de incluir espacios y signos de puntuación, pero estos detalles no son esenciales; lo importante es que a partir de ahora los mensajes que queremos cifrar y descifrar son simplemente números.

A diferencia de otros métodos más tradicionales, en los que tanto el emisor como el receptor tienen que conocer la misma clave, en RSA es el receptor quien tiene TODA la clave; al emisor le deja conocer la parte pública de la clave, que sirve para cifrar mensaje. El receptor guarda muy cuidadosamente la parte privada de la clave, que sirve para descifrar.

Construir una clave es fácil, de hecho ya lo hicimos en el apartado anterior. Buscamos dos números primos como 3 y 11 y hacemos dos cosas con ellos. Primero los multiplicamos para obtener 33. Luego les restamos uno, los multiplicamos, y al resultado le sumamos 1, para obtener (3-1)*(11-1)+1=21. Y a continuación (esto es nuevo) buscamos un divisor pequeño de 21, por ejemplo 3, y calculamos 21/3=7.

Ya tenemos nuestra clave: para cifrar elevamos a la potencia 3, dividimos por 33, y nos quedamos con el resto. Para descifrar, elevamos a la potencia 7, dividimos por 33, y nos quedamos con el resto.

Recordemos el truco de magia de la sección anterior: si elevamos un número entre 0 y 32 a la potencia 21 y dividimos por 33, el resto es el número con el que empezamos. Pero 21=3*7, así que elevar a la potencia 21 es lo mismo que elevar primero a la potencia 3 y después elevar el resultado a la potencia 7. Bueno, pues elevar a la potencia 3 es lo que hace el emisor para cifrar el mensaje; elevar a la potencia 7 es lo que hace el receptor para descifrar el mensaje. Y "mágicamente" el resultado de ambas operaciones es el mismo número con el que se empezó, es decir, el mensaje original.

Ahora que tenemos nuestra clave, anunciamos la parte pública a todo el mundo que nos quiera mandar mensajes. Esto lo podemos hacer poniendo nuestra clave de PGP en nuestra página en la web, o con un anuncio en el periódico:

Diario El País, edición internacionalAnuncios por palabras

Soy Bond, James Bond, la clave RSA para enviarme mensajes es elevar a la potencia 3, dividir por 33, y mandarme el resto.

Page 2: Cómo Funciona El Método RSA

  Por supuesto, en el anuncio no se menciona para nada el número 7, que sirve para descifrar los mensajes; ésta es la parte privada de la clave, la que guarda en secreto el receptor.

Un ejemplo. Queremos mandar el mensaje "27" al agente 007. Bueno, pues lo elevamos a la potencia 3, obtenemos 19.683, lo dividimos por 33 y nos da 596 y resto 15. Como no tenemos ni idea de dónde está James Bond, lo que hacemos es poner nuestro mensaje cifrado (15) en el periódico, y nos da igual que los rusos o espectra lo puedan leer junto con la clave, no podrán descifrarlo.

Diario El País, edición internacionalAnuncios por palabras

Soy Bond, James Bond, la clave RSA para enviarme mensajes es elevar a la potencia 3, dividir por 33, y mandarme el resto.

Mensaje para James Bond: 15.

El agente 007 estará infiltrado en algún sitio que no se puede divulgar. Un día saldrá "a por tabaco", comprará el periódico, y para recuperar nuestro mensaje elevará 15 a la potencia 7 y obtendrá 170.859.375, que al dividirlo por 33 le dará 5177556 y resto 27, nuestro mensaje original.