0% encontró este documento útil (0 votos)
44 vistas15 páginas

Introducción a la Criptografía RSA

El documento describe el método RSA de criptografía de clave pública. RSA se basa en la dificultad de factorizar números grandes en productos de números primos. El método implica generar una clave pública usando dos números primos y una clave privada relacionada. Los mensajes se cifran usando la clave pública y se descifran con la clave privada.

Cargado por

carlos
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
44 vistas15 páginas

Introducción a la Criptografía RSA

El documento describe el método RSA de criptografía de clave pública. RSA se basa en la dificultad de factorizar números grandes en productos de números primos. El método implica generar una clave pública usando dos números primos y una clave privada relacionada. Los mensajes se cifran usando la clave pública y se descifran con la clave privada.

Cargado por

carlos
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

CRIPTOGRAFÍA RSA

Rivest-Shamir-Adleman
¿En qué se basa y por qué es
eficiente?

 PROBLEMA DE
FACTORIZACIÓN DE UN
NÚMERO NATURAL COMO
PRODUCTO DE NÚMEROS
PRIMOS
EJEMPLO: factorizar
555378849502345689345678
PARTES DEL MÉTODO

Paso 1: CREAR UNA CLAVE PÚBLICA


Paso 2: CIFRADO
Paso 3: DESCIFRADO
precifrado

RSA=27-28-10
PASO 1: CREAR UNA CLAVE
PÚBLICA
SE ESCOGEN DOS NÚMEROS PRIMOS p y q (SON NÚMEROS GRANDES,
MÍNIMO DE 200 CIFRAS),

EJEMPLOS 𝒑 = 𝟐𝟗 y 𝐪 = 𝟒𝟏
𝒑 = 𝟒𝟕 y 𝐪 = 𝟏𝟎𝟕
𝒑 = 𝟓𝟗𝟗𝟗𝟗 y 𝐪 = 𝟒𝟒𝟗
Paso 1:CREAR CLAVE PÚBLICA

LA CLAVE DE CIFRADO, QUE LA DENOTAREMOS POR 𝒏, es


𝒏=𝒑∙𝒒
Ejemplos:
𝒑 = 𝟐𝟗 ; 𝐪 = 𝟒𝟏 … … … … 𝒏 = 𝟏𝟏𝟖𝟗
𝒑 = 𝟒𝟕 ; 𝐪 = 𝟏𝟎𝟕 … … … … 𝒏 = 𝟓𝟎𝟐𝟗
𝒑 = 𝟓𝟗𝟗𝟗𝟗 ; 𝐪 = 𝟒𝟒𝟗 … 𝒏 = 𝟐𝟔𝟗𝟑𝟗𝟓𝟓𝟏
Paso 2: CIFRADO

SE TOMA UN NÚMERO NATURAL 𝝀, tal que


MCD(𝝀, (𝒑 − 𝟏)(𝒒 − 𝟏)) = 𝟏
El cifrado se hará calculando la clase modular de
𝑏 𝜆 (𝑚𝑜𝑑 𝑛)
Es decir, si 𝑏 𝜆 ≡ 𝑎 (𝑚𝑜𝑑 𝑛),entonces 𝑎 será el
cifrado para el bloque 𝑏.
LA CLAVE PÚBLICA SERÁ 𝑛, 𝜆
Paso 3: DESCIFRADO

SE CREA UNA CLAVE PRIVADA, LA CUÁL ESTARÁ DADA POR UN PAR DE


NÚMEROS 𝑛, 𝑑 . EL NÚMERO NATURAL 𝑑 cumple con

𝑑∙𝜆 ≡1 𝑚𝑜𝑑(𝑝 − 1)(𝑞 − 1)

ES DECIR, 𝒅 EL INVERSO MULTIPLICATIVO DE 𝝀 EN LA CLASE


MODULAR

𝑍(𝑝−1)(𝑞−1)
Paso3: DESCIFRADO

EL DESCIFRADO SE HARÁ CALCULANDO LA


CLASE MODULAR DE
𝑎𝑑 (𝑚𝑜𝑑 𝑛)
ES DECIR, SI 𝑎𝑑 ≡ 𝑏 (𝑚𝑜𝑑 𝑛), ENTONCES 𝑏
SERÁ EL DESCIFRADO PARA 𝑎
Ejemplo: Codificar el mensaje
”RSA’’
 1. Pre-ciframos la palabra RSA con base en la tabla de pre-cifrado

RSA=272810
 2. Escogemos dos números primos y creamos 𝑛
𝑝=5
𝑞=7
Así 𝑛 = 𝑝 ∙ 𝑞 = 35
 3. Dividimos nuestro mensaje codificado en bloques
27-28-10
Cada bloque tienen que ser menor a 𝑛 (en este caso menor a 35)
4. Tomamos 𝝀 = 𝟕. Recuerde que 𝜆 tiene que ser elegido de forma que

MCD(𝝀, (𝒑 − 𝟏)(𝒒 − 𝟏)) = 𝟏,


en nuestro caso
MCD(𝝀, (𝟓 − 𝟏)(𝟕 − 𝟏)) = 𝟏 MCD(𝝀, (𝟒)(𝟔)) = 𝟏 , es decir, un número
coprimo con 24 . Es decir, nuestra llave publica es (35,7)

5. Encriptamos cada bloque del mensaje usando calculando 𝒃𝝀 (𝒎𝒐𝒅 𝒏)

𝟐𝟕𝟕 ≡ 𝟏𝟑(𝒎𝒐𝒅 𝟑𝟓)


𝟐𝟖𝟕 ≡ 𝟕(𝒎𝒐𝒅 𝟑𝟓)
𝟏𝟎𝟕 ≡ 𝟏𝟎(𝒎𝒐𝒅 𝟑𝟓)
El mensaje que enviamos será 13-7-10
Fase de descifrado

6. Creamos UNA CLAVE PRIVADA, LA CUÁL ESTARÁ DADA POR UN PAR


DE NÚMEROS 𝑛, 𝑑 . EL NÚMERO NATURAL 𝑑 verifica

𝑑∙𝜆 ≡1 𝑚𝑜𝑑(𝑝 − 1)(𝑞 − 1)


𝑑 ∙ 7 ≡ 1(𝑚𝑜𝑑 24)

ES DECIR, 𝑑 es el INVERSO MULTIPLICATIVO DE 7 EN LA CLASE MODULAR


, 𝑍(𝑝−1)(𝑞−1) = 𝑍24 , es decir,
𝑑=7
Nuestra clave privada es (35, 7)
7. Deciframos el mensaje 13-7-10

𝟏𝟑𝟕 ≡ 𝟐𝟕(𝒎𝒐𝒅 𝟐𝟒)


𝟕𝟕 ≡ 𝟐𝟖(𝒎𝒐𝒅 𝟐𝟒)
𝟏𝟎𝟕 ≡ 𝟏𝟎(𝒎𝒐𝒅 𝟐𝟒)

Y mirando nuevamente en la tabla de códigos de letra, obtenemos


que el mensaje que recibimos es

R-S-A

También podría gustarte