La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

CRIPTOGRAFIA ASIMETRICA RSA

Presentaciones similares


Presentación del tema: "CRIPTOGRAFIA ASIMETRICA RSA"— Transcripción de la presentación:

1 CRIPTOGRAFIA ASIMETRICA RSA

2 CRIPTOGRAFIA ASIMETRICA
RSA Es un criptosistema de clave pública que sirve tanto para encriptar mensajes como para autenticación de documentos o transacciones (firmas digitales). Fue inventado en 1977 por Rivest Ron, Shamir Adi, Adleman Leonard. Es el algoritmo público más utilizado y seguramente el más sencillo tanto por su comprensión, como por su implementación.

3 CRIPTOGRAFIA ASIMETRICA
RSA Este algoritmo basa su seguridad en la factorización de números primos. No existe una manera rápida y sencilla de factorizar cantidades que son producto de dos números primos largos.

4 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Alice (Receptor) Se obtiene 2 números bien grandes p y q (primos) de forma aleatoria : p = 17 y q = 43 Se calcula el producto de p y q en N: N= pxq = 731 N se le denomina módulo. Se Calcula φN = (p-1)(q-1) φN = (17-1) (43-1) 16 x 42 = 672

5 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Alice (Receptora): envia clave pública Busca un número “e” tal que sea primo con φN, (tiene que estar entre 1 y φN - mcd(e,φN)=1) . Como “e” y φN son primos entre sí, entonces existe un “d” tal que: “e” . “d” = 1 mod φN “d” = “e”-1(mod φN)‏ d se calcula mediante el algoritmo de Extendido de Euclides como mcd(101,672)‏ e = 101 d = 173 Alice crea las claves: Clave Pública: Ce = (e,N) Ce = (101,731) Clave Privada: Cd = (d,N ) Cd = (173,731)

6 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Bernardo (emisor) : Recibe la clave pública para cifrar el mensaje El mensaje que quiere enviar Bernardo es TI (M=TI) Asignamos a cada letra un número según la tabla del alfabeto 20 - 9 Se escogen bloques de dos letras : (20,9) Expresamos los bloques como un número en la base del alfabeto (Pasamos de decimal a base 27) (20,9)27 = 20x x 27o = = “P” Usa la clave pública “Ce”=(101,731) para calcular Q (cifrado) Q=Pe(mod N) Q = (mod 731) = 507

7 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Bernardo (emisor) : Cálculo de (mod 731) = 507 x n n mod 2  Elevado al cuadrado Resultado mod 731 n/2 5491 101 1 549 50 5492 5492 (mod 731)= 229 25 5494 2292 (mod 731)= 540 (mod 731)=405 12 5498 5402 (mod 731)= 662 6 54916 6622 (mod 731)= 375 3 54932 3752 (mod 731)= 273 (mod 731)=184 54964 2732 (mod 731)= 698 (mod 731)=507

8 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Bernardo (emisor) : Expresa Q en base del alfabeto (27) (Convertir de decimal a base 27) 507 = 27 * 18 = 27 * 507(10) = 1821(27) Asignamos la letra correspondiente de (18,21)‏ = RU

9 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Alice (Receptor) : recibe mensaje “RU” Convierte el mensaje “RU” según su posición en el alfabeto = (18,21) En base 27 : 18 x x 270 = 507 = P Usa la clave privada para descifrar Cd = (173,731) Calcula Q como: Q= Pd (mod N )‏ Q= (mod 731 ) = 549

10 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Bernardo (emisor) : Cálculo de (mod 731) = 549 X n n mod 2  Elevado al cuadrado Resultado mod 731 n/2 5071 173 1 507 86 5072 5072 (mod 731)= 468 43 5074 4682 (mod 731)= 455 (mod 731)=420 21 5078 4552 (mod 731)= 152   (mod 731)=243 10 50716 1522 (mod 731)= 433 5 50732 4432 (mod 731)= 341 (mod 731)=260 2 50764 3412 (mod 731)= 52 507128 522 (mod 731)= 511 (mod 731)=549

11 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Alice (Receptor) : recibe mensaje “RU” Q expresa en base 27 (Convertir de decimal a base 27) 549 = 27 * 20 = 27 * 549(10) = 209(27) Asignando la letra correspondiente (20,9)‏ = TI

12 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Intruso Captura el mensaje “RU” y la clave Ce=(101,731)‏ Sabe que QT corresponde a 507 Pero no conoce el exponente 173 de la clave secreta de Alicia. Q= (mod 731 ) Para hallar 173 debe conseguir el inverso 101, módulo φ731. “d” = “e”-1(mod φN)‏ => No conoce φN= 672 =(p-1 x q-1) Para encontrar 731: Cuenta cuántos números no tienen factores comunes con 731. Decide factorizar 731. Dificil cuando es grande.

13 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Intruso Un número factorizado se expresa como producto de sus factores primos. Si un número es compuesto, entonces debe tener un divisor primo menor o igual que √n. Existen infinitos números primos. Sea a=1998 √1998 = 44 Para encontrar el divisor primo, es necesario experimentar con todos los primos menores o iguales a 44. 1998 =

14 CRIPTOGRAFIA ASIMETRICA
Algoritmo RSA Los datos que deben mantenerse privados son: p y q φN d Cualquiera que conozca estos datos podrá descifrar los mensajes del propietario de la clave. Además de estos datos se tiene que fijar la longitud del bloque: Longitud del bloque que vamos a cifrar. Longitud del bloque cifrado

15 CRIPTOGRAFIA ASIMETRICA
Ejemplo RSA Receptor: Elige dos primos p = 281 y q = 167. N = (p x q) = 281 x 167 N = 46927 φN = (p-1 x q-1) = ( ) x ( ) φN = 46480 Buscamos “e” y “d” tales que: e . d  1 mod (46927) d = e-1(mod φN) por ejemplo: e = 39423 d= 26767 Las claves son: Pública (39423, 46927) Privada (26767, 46927)

16 CRIPTOGRAFIA ASIMETRICA
Ejemplo RSA Emisor: Va encriptar bloques de dos, y quiere encriptar “HOLA” utilizando un alfabeto de 36 símbolos. Asignamos a cada letra un número según un alfabeto: HOLA = (17; 24; 21; 10) Bloques a cifrar: (17; 24) y (21; 10). Expresamos ambos bloques como un número en base 36: (17; 24) = 17 x x 361 = 881 (21; 10) = 21 x x 361 = 381 Elevamos estos números a e módulo 46927: mod = 45840 mod = 26074

17 CRIPTOGRAFIA ASIMETRICA
Ejemplo RSA Emisor: Expresamos estos números en base 36, teniendo en cuenta que vamos a tener tres componentes: 45840 = 12 x x x 362 = (12; 13; 35) 26074 = 10 x x x 362 = (10; 4; 20) Según el alfabeto considerado a cada número le asignamos una letra: (12; 13; 35) =) CDZ (10; 4; 20) =) A4K Luego el mensaje encriptado es “CDZA4K”.


Descargar ppt "CRIPTOGRAFIA ASIMETRICA RSA"

Presentaciones similares


Anuncios Google