Sunteți pe pagina 1din 3

Examen Febrero 2004 - Criptografa

Problema 1
Alicia enva a Blanca un mensaje m cifrado con el mtodo de Vernam, cuya clave K es cifrada
mediante RSA. El Hash del mensaje m es firmado con curvas elpticas. Los datos con los que
contamos son los siguientes:

Claves RSA
p = 257
q = 263
e = 12195

Hash: dado un mensaje m de n caracteres (octetos) [m = (m1, m2, ..., mn)] definimos
n

H (m ) = mi (mod 64 )

i =1
Claves para firma con curvas elpticas:
E y2 = x3 + 6x +28 (mod 71)
#(E) = 85
P = (35, 67)
Q = (4, 20) = dP, donde d es la clave secreta

Si el mensaje m cifrado con la clave K es rm en ASCII, el cifrado de K con la clave RSA es


27557 (expresado en decimal) y la firma del Hash de m es (4, 2):

1.
2.
3.
4.

Calcular la clave d de descifrado RSA


Calcular la clave K de descifrado Vernam
Calcular el mensaje en claro m y el Hash H(m)
Verificar si el mensaje cifrado es autntico

(1.25 puntos)
(1.25 puntos)
(1.25 puntos)
(1.25 puntos)

FIRMA DE UN MENSAJE m CON CURVAS ELPTICAS

Informacin pblica:
Curva E definida sobre el cuerpo Fp
Un punto P E de orden n
Clave secreta: 0 < d < n
Clave pblica: Q = dP
Generacin de la firma:

R = (x, y) =kP siendo k aleatorio


r = x (mod n)
m rd
(mod n )
s=
k
Firma = (r, s)

Verificacin de la firma
w = s-1 (mod n)

u = mw (mod n)
v = rw (mod n)
R = uP vQ
La firma es autntica si mP = rQ + sR

SUMA DE PUNTOS DE UNA CURVA ELPTICA DEFINIDA EN UN CUERPO DE


CARACTERSTICA MAYOR QUE 3
En ese caso la ecuacin de la curva es y 2 x 3 + Ax + B (mod p ) . Definimos:
P1 = (x1 , y1 )

P2 = (x 2 , y 2 )

Q = P1 + P2 = (x1 , y1 ) + (x 2 , y 2 ) = (x 3 , y 3 )
x 3 = m 2 x1 x 2

y 3 = m( x 2 x 3 ) y 2

y 2 y1
x x (mod p ) si P1 P2

siendo m = 2 2 1
3 x 2 + A (mod p ) si P = P
1
2
2 y 2

Tabla ASCII
Byte

Carcter

Byte

Carcter

Byte

Carcter

0010 0000

Espacio

0100 0000

0110 0000

0010 0001

0100 0001

0110 0001

0010 0010

0100 0010

0110 0010

0010 0011

0100 0011

0110 0011

0010 0100

0100 0100

0110 0100

0010 0101

0100 0101

0110 0101

0010 0110

&

0100 0110

0110 0110

0010 0111

0100 0111

0110 0111

0010 1000

0100 1000

0110 1000

0010 1001

0100 1001

0110 1001

0010 1010

0100 1010

0110 1010

0010 1011

0100 1011

0110 1011

0010 1100

0100 1100

0110 1100

0010 1101

0100 1101

0110 1101

0010 1110

0100 1110

0110 1110

0010 1111

0100 1111

0110 1111

0011 0000

0101 0000

0111 0000

0011 0001

0101 0001

0111 0001

0011 0010

0011 0010

0111 0010

0011 0011

0101 0011

0111 0011

0011 0100

0101 0100

0111 0100

0011 0101

0101 0101

0111 0101

0011 0110

0101 0110

0111 0110

0011 0111

0101 0111

0111 0111

0011 1000

0101 1000

0111 1000

0011 1001

0101 1001

0111 1001

0011 1010

0101 1010

0111 1010

0011 1011

0101 1011

0111 1011

0011 1100

<

0101 1100

0111 1100

0011 1101

0101 1101

0111 1101

0011 1110

>

0101 1110

0111 1110

0011 1111

0101 1111

0111 1111

S-ar putea să vă placă și