Fundamentos Matemáticos del Cifrado Asimétrico Banco de Guatemala
Cerradura, s. Divisa de la civilización y el progreso. -- Ambroce Bierce, Diccionario del Diablo
Funcionamiento de una cerradura
Las computadoras trabajan con números Mensaje: M=77 e=101 n=110 s=115 a=97 j=106
Los multimedios Rojo=191 Verde=138 Azul=62
Las cerraduras digitales Mensaje Llave Llave Mensaje Cifrado f(m,ll) f -1 (MC,Ll) Mensaje Cifrado Mensaje
La historia del ajedrez S=1+2+4+8+16+32+64 S=18,446,744,073,709,551,615 1000 veces la producción mundial de arroz del año 2010 = 464,000,000,000 toneladas métricas. S 64 bits
El tiempo de rompimiento Si se tiene una computadora que pruebe un millón de llaves por segundo los tiempos medios de rompimiento serían: 56 bits = 2,285 años 64 bits = 585,000 años 128 bits = 1025 años *Edad estimada del universo 1010 años
El problema Eva Alicia Bob
Los Visionarios Ralph Merckle, Martin Hellman, Whitfield Diffie
El doble candado
El doble candado
Se retira un candado
Se retira el segundo candado
La llave simétrica viene dentro de la caja
Otro ejemplo en el mundo físico Color base Mezcla Color personal Secreto Color personal Secreto
El resultado de las combinaciones
Las Funciones de Trampa o Humpty Dumpty 5 5 5 2 25 f(5) = 25 f -1 (25)
Funciones Modulares x mód 30 x mód 60 x mód 24 x mód 12
El Cálculos de Potencias 5 40 mód7 =? 5 1 mód7 = 5 5 2 mód7 = 5*5 mód 7 = 25-(3*7) = 25-21 = 4 5 4 mód7 = (5 2 mód 7) 2 mód 7 = 16 mód 7 = 2 5 8 mód7 = (5 4 ) 2 mód 7= 4 5 16 mód7 = 2 5 32 mód7 = 4 5 40 mód7 = 5 8 mód 7*5 32 mód 7 =2
ALICIA Selecciona el 3como número secreto Calcula 7 3 mód 11 = 2 Diffie-Hellman Se acuerda un número base y uno módulo de conocimiento público, en este caso 7y 11. BOB Selecciona el 6como número secreto Calcula 7 6 mód11 = 4 Se realiza el intercambio de números 2 y4 sin temor a que alguien los capture Cálcula 4 3 mód11 = 9 Cálcula 2 6 mód11 = 9 (7 3 ) 6 = 7 3x6 = 7 18 = 7 6x3 = (7 6 ) 3
Realmente es seguro? Para que el algoritmo sea seguro, los dos números acordados deben ser grandes, muy grandes mínimo de 512 bits esto es equivalente a 155 dígitos decimales, e incluso 1024 bits es decir 309 dígitos decimales. Ejemplo de un decimal de 512bits: 82410542973692774100821916431873179294153337312 304787210752212996037687716491 Ejemplo de un decimal de 1024bits: 13269387334363396355070885044457961840043533724 38319831178011938972310859630322098062396030337 54020080479707309940486219892240176599368734776 51534758771529
La Llave Privada y Pública Alicia Bob Carlos Daniel
RSA: Rivest Shamir Adleman Ron Rivest, Adi Shamir y Leonard Adleman
Un poco de literatura Dicho esto, rogóal bachiller que, si era poeta, le hiciese merced de componerle unos versos que tratasen de la despedida que pensaba hacer de su señora Dulcinea del Toboso, y que advirtiese que en el principio de cada verso había de poner una letra de su nombre, de manera que al fin de los versos, juntando las primeras letras, se leyese: Dulcinea del Toboso. --El Quijote, parte 2, capítulo 4
RSA
RSA, la llave pública Alicia selecciona dos números primos py q, que multiplicados (N=p*q) conforman la llave pública junto con un número y número base, eque también se hace público con la llave edebe ser co primo del número (p-1)(q-1)y por lo genera se utilizá 65,537.
RSA: El cifrado Bob, Carlos, Daniel, que tiene N, puede cifrar un mensaje, operándolo en su valor numérico agrupando el mensaje en números más pequeños para poder aplicar la siguiente fórmula: Cifrado=Mensaje e mód N
RSA: El descifrado Alicia necesita una llave privada, un número que revierta la función anterior. Según la teoría de números, sípy qson primos sólo se requiere resolver con enteros la ecuación: ed (p-1)(q-1)v = 1para ello se utiliza el algoritmo de Euclides extendido (el algoritmo de Euclides sirve para calcular el Máximo Común Divisor). Al hallar d puede descifrar el mensaje aplicando: Mensaje= Cifrado d mód N
Los números primos En 512 bits hay 10 150 números primos. Para dar una idea de esta cantidad, imagine que en el universo hay estimados 10 84 átomos, si a cada átomo se le asignara un millardo de números primos cada microsegundo desde el inicio del universo, habría al día de hoy 10 110 números primos remanentes sin haber sido asignados.
Los números RSA Número RSA Bits Premio Factorizado RSA-100 330 $1,000 USD Abril 1, 1991 RSA-110 364 $4,429 USD Abril 14, 1992 RSA-120 397 $5,898 USD Julio 9, 1993 RSA-129 426 $100 USD Abril 26, 1994 RSA-130 430 $14,527 USD Abril 10, 1996 RSA-140 463 $17,226 USD Febrero 2, 1999 RSA-155 512 $9,383 USD Agosto 22, 1999 RSA-576 576 $10,000 USD Diciembre 3, 2003 RSA-640 640 $20,000 USD Noviembre 2, 2005 RSA-704 704 $30,000 USD Julio 2, 2012 RSA-768 768 $50,000 USD Diciembre 12, 2009 RSA-896 896 $75,000 USD No RSA-1024 1024 $100,000 USD No RSA-1536 1536 $150,000 USD No RSA-2048 2048 $200,000 USD No
Ejemplo de Cifrado Mensaje = ALGO Códificación: A =65 L =76 G =71 O = 79 p= 11 q= 17 y e= 7 N= p*q= 187 la llave pública junto con 7 65 7 mód187 =142 = Ä 76 7 mód187 = 32 = 71 7 mód187 =113 = q 79 7 mód 187 = 139 = ï Mensaje Cifrado: Ä qï
Cálculo de la Llave Privada ed φ(n)v = 1 ed-(p-1)(q-1)v = 1 7d (10)(16)v = 1 7d-160v = 1.. Se resuelve por el algoritmo extendido de Euclides, ya que la solución debe ser con enteros. d= 23 La llave privada
Descifrado 142 23 mód187= 65= A 32 23 mód187= 76 = L 113 23 mód187= 71= G 139 23 mód187= 79= O
Invirtiendo el proceso Alicia Bob Carlos Daniel
La Firma Digital El proceso inverso de D(C(m)), C(D(m)) cifrando con la llave privada y descifrando con la llave pública un resumen matemático del mensaje: El Firmante (FunciónHash(Mensaje)) d módn = HashDelMesajeCifrado El Receptor HashDelMensajeCifrado e módn = HashDelMensaje FunciónHash(Mensaje) = HashDelMensaje
La elección de los números aleatorios El caso de Netscape 1.1 implementando SSL. El error de Linux Debian. Los Alemanes y la máquina cifradora Enigma. La reducción del universo de llaves por tiempo y electricidad.
Rana Dardo Dorado (Phyllobates Terribilis) La Evolución
La Revolución
Gracias por su atención.