Ejercicios L7 Criptosistemas Asimetricos Soluciones
Ejercicios L7 Criptosistemas Asimetricos Soluciones
Ejercicios L7 Criptosistemas Asimetricos Soluciones
González-Tablas Ferreres
José María de Fuentes García-Romero de Tejada
Lorena González Manzano
CURSO CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA Pablo Martín González
UC3M | GRUPO COMPUTER SECURITY LAB (COSEC)
“Criptosistemas asimétricos”
Ejercicios propuestos
Ejercicio 1:
Dados los siguientes criptosistemas RSA, calcule lo que se le indique en cada apartado, teniendo en
cuenta que los datos de la clave que se dan pertenecen al receptor.
a) p = 5, q = 7, y d = 11. Cifre el mensaje M = 2 y descifre el resultado.
b) p = 3, q = 11, y e = 7. Cifre el mensaje M = 5 y descifre el resultado.
c) n = 55, y e = 7. Cifre el mensaje M = 10 y descifre el criptograma C = 35.
d) n = 91, y d = 11. Cifre el mensaje M = 3 y descifrar el criptograma C = 41.
Solución:
a)
N = p • q => N = 5 • 7 = 35
(35) = (5) • (7) = 4 x 6 = 24
d • e mód (35) = 1 => 11 • e mód 24 =1 => e = 11
C = 211 mód 35; C = 18
M = 1811 mód 35; M = 2
b)
N = p • q =>N=3 • 11=33
(33) = (3) • (11) = 2 • 10= 20
d • e mód (33) = 1 => 7 • d mód 20 = 1 => d = 3
C = 57 mód 33; C = 14
M = 143 mód 33; M = 5
c)
N = 55 => p = 5, q = 11
(55) = (5) • (11) = 4 • 10 = 40
d • e mód (55) = 1 => 7, d mód 40 = 1 => d = -17 = 23
C = 107 mód 55; C = 10
M = 3523 mód 55; M = 30
d)
N = 91 => p = 7, q = 13
(91) = (7) • (13) = 6 • 12 = 72
d • e mód (91) = 1 => 11 • e mód 72 = 1 => e = -13 = 59
C = 359 mód 91; C = 61
M = 4111 mód 91; M = 20
Ejercicio 2:
a) ¿En qué consiste la fortaleza del criptosistema RSA? ¿Qué longitudes deben tener las claves
utilizadas en RSA? ¿En qué consiste la “trampa” para generar las claves RSA?
b) Martín quiere enviar un mensaje cifrado a Laura utilizando el criptosistema RSA con los valores
pertenecientes a Laura p=5, q=11 y d=7. Si el mensaje en claro que quiere enviar Martín es M=10
¿qué valor recibirá Laura? ¿Es buena la elección que han hecho de p, q y d? ¿Por qué?
Solución:
a.1) la fortaleza del criptosistema RSA consiste en la dificultad de factorizar números grandes.
a.2) Las claves utilizadas deben tener una longitud de entre 1024 y 2048 bits.
a.3) Los números primos p y q, secretos, constituyen la trampa del sistema. Conocidos p y q es fácil
calcular d a partir de e, mientras que la complejidad de factorizar N es del orden de
e((ln(N)lnln(N))1/2 .
Ejercicio 3:
Alicia y Benito están practicando un juego popular a través de correo electrónico. El juego requiere
mantener en secreto los mensajes intercambiados simultáneamente por ambos jugadores en cada
partida. Para ello cifran sus mensajes y los envían codificados con 27 elementos de forma que A=0,
B=1,..., Z=26. Hacen uso del algoritmo RSA para cifrar sus comunicaciones. Alicia hace público su
módulo NA= 33 y su exponente eA=7. Por su parte, Benito también publica su módulo N B= 39 y su
exponente eB=5.
Calcule en claro los tres primeros valores enviados y los tres primeros recibidos por Alicia.
Solución:
Por su parte Benito también descifra con su privada letra a letra el mensaje enviado por Alicia:
225 (mód. 39) = 16 - > P
85 (mód. 39) = 8 - > I
105 (mód. 39) = 4 - > E
Ejercicio 4:
Alicia y Benito hacen uso del algoritmo RSA para cifrar sus comunicaciones con las siguientes claves
públicas:
(nA; eA) = (55; 9) y (nB; eB) = (39; 5)
a) Determine el criptograma CB que Benito debe enviar a Alicia si el mensaje en claro es
MANDA DINERO
y determine también el envío que corresponde a la respuesta de Alicia
NO TENGO.
Las letras A – Z del alfabeto internacional (sin la Ñ) se codifican de 0 – 25, el punto es el 26 y el espacio
en blanco es el 27.
b) Descifre el criptograma que recibe Benito, CA
Solución:
a)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
Benito debe enviar a Alicia el mensaje MANDA DINERO codificado de forma siguiente:
M -> 12 A ->0 N->13 D->3 ‘ ‘ ->27 I->8 E->4 R->17 O->14
Benito deberá usar la clave pública de Alicia, (nA; eA) = (55; 9), para que sólo ella pueda abrir el
criptograma CB.
La respuesta de Alicia, NO TENGO., va cifrada. El mensaje codificado toma los valores: N->13 O->14 ‘
‘ ->27 T->19 E->4 G->6 .->26
Alicia deberá usar la clave pública de Benito, (nB; eB) = (39; 5), para cifrar.
Calculo de dB :
nB= 3 ·13 =39
Ф(nB)=2·12=24
eB·dB=1(mód Ф(nB))=; dB·5=1(mód 24) dB=5