Firmar RSA
El documento llamado "Multiuser Cryptographic Techniques." por Diffie y Hellman, introduce un nuevo enfoque de la criptografía y desafió a los criptólogos a elaborar un algoritmo criptográfico que cumpliera los requisitos de los sistemas de clave pública. Una de las respuestas al desafío fue desarrollada en 1977 por Ron Rivest, Adi Shamir y Len Adleman en el MIT y publicada por primera vez en 1978. Desde entonces, el esquema de Rivest-Shamir-Adleman (RSA) ha reinado como el enfoque de uso general más ampliamente aceptado e implementado para el cifrado de clave pública.
A continuación se muestra como el cifrado puede ser usado para realizar firmas digitales
Generación de firma
Bob desea firmar un mensaje :
- Bob selecciona dos números primos grandes distintos y y los multiplica para formar .
- Bob también elige un exponente de cifrado tal que .
- Bob calcula tal que
- Bob hace público el par de valores y mantiene privados .
- Bob firma el mensaje con
- Bob hace público el par de valores .
Verificar firma
Alice puede verificar que Bob realmente firmo el mensaje con el siguiente procedimiento:
- Alice recibe el par de valores
- Calcula , sí , entonces Alice puede decir que Bob realmente firmo el mensaje, de lo contrario la firma no es válida.
Por ejemplo:
Alice | Bob | |
p = 3, q = 11 -> n = 33 | ||
e = 3 | ||
d ≡ e-1 ≡ 7 mod (3-1)(11-1) | ||
<--- (33 , 3) | ||
m = 4 | ||
y = 47 ≡ 16 mod 33 | ||
<--- (4 , 16) | ||
x' = 163 ≡ 4 mod 33 | ||
x' ≡ x mod 33 ---> VALIDO |
Referencias
- Trappe, W., Washington, L. (2006). The RSA Algorithm. En Introduction to Cryptography with Coding Theory(164-169). United States of America: Prentice Hall.