1 / 22

JORNADAS GRATUITAS DE CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA

JORNADAS GRATUITAS DE CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA. EST Escuela Superior Técnica Facultad de Ingeniería del Ejército Buenos Aires, 14 de noviembre de 2013. Fortalezas y debilidades de la cifra con clave pública: el caso de RSA. Ejemplos prácticos del estándar. Jorge Ramió Aguirre

ura
Télécharger la présentation

JORNADAS GRATUITAS DE CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JORNADAS GRATUITAS DE CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA EST Escuela Superior TécnicaFacultad de Ingeniería del Ejército Buenos Aires, 14 de noviembre de 2013

  2. Fortalezas y debilidades de la cifra con clave pública: el caso de RSA.Ejemplos prácticos del estándar. Jorge Ramió Aguirre Profesor UPM, Director proyectos Criptored, Intypedia y Crypt4you http://www.lpsi.eui.upm.es/~jramio

  3. Breve introducción al algoritmo RSA (1) • En febrero de 1978 Ron Rivest, AdiShamir y Leonard Adleman proponen RSA, un algoritmo de clave pública Pasos del algoritmo • Cada usuario elige un grupo n = pq con p y q primos • Los valores p y q no se hacen públicos • Cada usuario calcula (n) = (p-1)(q-1) … la trampa • Cada usuario elige una clave pública e • Condiciones de clave pública: 1 < e < (n) y mcd [e, (n)] = 1 Fortalezas y debilidades en RSA: casos prácticos

  4. Breve introducción al algoritmo RSA (2) Cada usuario calcula la clave privada d = inv [e, (n)] Se hace público el grupo n y la clave e Se guarda en secreto la clave d. También guardará p y q puesto que en la operación de descifradousará el Teorema del Resto Chino Operación de Cifra: C = NeR mod nR Operación de Firma: C = h(M)dE mod nE Fortalezas y debilidades en RSA: casos prácticos

  5. La seguridad computacional del sistema ¿Y dónde reside la seguridad del sistema? Básicamente en que dado un valor n, producto de dos primos p y q ambos grandes, es muy difícil encontrar estos dos primos en el sentido que dicha tarea tarda mucho tiempo y consume demasiados recursos Se trata del Problema de la Factorización Entera, que se vuelve intratable cuando los números que se encuentran implicados son muy grandes… Fortalezas y debilidades en RSA: casos prácticos

  6. ¿Tiempo, recursos, número grande? Mucho tiempo y demasiados recursos: miles de millones de años y toda la capacidad de cómputo mundial … pero … ¿Qué se considera hoy en día un número grande? Hablamos de al menos 1.024 bits, unos 300 dígitos, … pero lógicamente estos valores aún no han sido factorizados No entraremos en conceptos matemáticos (problemas NP)… lo comprobaremos en las siguientes diapositivas de una manera más simple y coloquial Fortalezas y debilidades en RSA: casos prácticos

  7. El problema fácil (P) y su solución Cálculo fácil o polinomial (función directa) Calcular “a mano” los siguientes productos de dos primos y tome el tiempo aproximado que tarda en la operación: a) 13*31 b) 113*131 c) 1.013*1.031 ... calcule ... Dificultad polinomial (rápido) … no vale usar calculadora 13*31 = 403; 113*131 = 14.803; 1013*1031 = 1.044.403 A medida que aumenta el tamaño de la entrada, el tiempo de cálculo aumenta proporcionalmente con el número de dígitos Fortalezas y debilidades en RSA: casos prácticos

  8. El problema difícil (NP) Paciencia, un computador va a sufrir lo mismo ... • Cálculo difícil o polinomial no determinista (función inversa) • Usando la criba de Eratóstenes, factorice en dos primos los siguientes números y vuelva a tomar el tiempo empleado: • a) 629 b) 17.399 c) 1.052.627 calcule... • Ayuda: en el caso • a) son primos de 2 dígitos • b) son primos de 3 dígitos • c) son primos de 4 dígitos Fortalezas y debilidades en RSA: casos prácticos

  9. Solución al problema difícil Dificultad polinomial no determinista (lento) a) 629 b) 17.399 c) 1.052.627 Da igual que el algoritmo sea éste -muy elemental- u otro más eficaz; el tiempo de cálculo aumenta mucho al incrementar en un solo dígito los números en cuestión. Esto es NO lineal. Los resultados a), b) y c) son el producto de los números primos inmediatamente superiores a los que se usaron en el cálculo polinomial es decir 17*37; 127*137; 1019*1033. Fortalezas y debilidades en RSA: casos prácticos

  10. Ejemplo gráfico del problema ¿Hay otros frentes de ataque? Sí y uno muy interesante: paradoja del cumpleaños Ejercicio básico realizado con software factor.exe Existen programas mucho más rápidos, e.g. Msieve Fortalezas y debilidades en RSA: casos prácticos

  11. La paradoja del cumpleaños • Con 23 personas escogidas al azar, la probabilidad que dos de ellas cumplan años en el mismo día es mayor que el 50%. • Solución: • Pizarra con los 365 días del año • Las personas entran al aula de una en una y van marcando el día de su cumpleaños en la pizarra … hasta que entre una que ya lo vea marcado • Cuando haya una colisión, se cuentan los accesos y se repite proceso • Para superar esa confianza del 50% basta que entren sólo 23 personas Fortalezas y debilidades en RSA: casos prácticos

  12. Paradoja del cumpleaños en RSA C = NeR mod nR (el atacante conoce eR y nR) Elige un valor de ataque N cualquiera (e.g. N = 2) Elige dos números aleatorios distintos i, j, dentro del cuerpo de cifra público n. Normalmente i = 1 y j = (n/2) + 1 Calcula Ni mod n = Ci y Nj mod n = Cj. Comprueba si Ci = Cj Si no hay colisión, incrementa i y j, repitiendo el proceso y comparando todos los resultados de i con los de j … PERO … sucede algo muy interesante (anillos) que optimiza el ataque. Fortalezas y debilidades en RSA: casos prácticos

  13. Paradoja del cumpleaños en RSA Ejemplo n = 133 e = 5 N = 25 Con simples ecuaciones y conociendo que e = 5, se puede encontrar la clave privada d. Fortalezas y debilidades en RSA: casos prácticos

  14. Capturas de ataque con LegionRSA (1/7) Ataque a RSA 70 bits monousuario: 21 min, 45 seg (servidor) Fortalezas y debilidades en RSA: casos prácticos

  15. Capturas de ataque con LegionRSA (2/7) Ataque a RSA 70 bits monousuario: 21 min, 45 seg (cliente) Fortalezas y debilidades en RSA: casos prácticos

  16. Capturas de ataque con LegionRSA (3/7) Ataque a RSA 70 bits en red con 4 clientes: 5 min, 18 seg (servidor) Fortalezas y debilidades en RSA: casos prácticos

  17. Capturas de ataque con LegionRSA (4/7) Ataque a RSA 70 bits en red con 4 clientes: 5 min, 18 seg (Cliente1) Fortalezas y debilidades en RSA: casos prácticos

  18. Capturas de ataque con LegionRSA (5/7) Ataque a RSA 70 bits en red con 4 clientes: 5 min, 18 seg (Cliente2) Fortalezas y debilidades en RSA: casos prácticos

  19. Capturas de ataque con LegionRSA (6/7) Ataque a RSA 70 bits en red con 4 clientes: 5 min, 18 seg (Cliente3) Fortalezas y debilidades en RSA: casos prácticos

  20. Capturas de ataque con LegionRSA (7/7) Ataque a RSA 70 bits en red con 4 clientes: 5 min, 18 seg (Cliente4) Fortalezas y debilidades en RSA: casos prácticos

  21. Ejemplo práctico de ataque con LegionRSA Fortalezas y debilidades en RSA: casos prácticos • Diferentes pruebas con software LegionRSA. • Explicación del software. • Particularidades: linealidad del ataque • Trabajo Futuro. • Viabilidad de un ataque real: • Muy interesante pero desgraciadamente, o afortunadamente, no es viable … sin embargo, se está actualmente evaluando y cuantificando la capacidad de cómputo necesaria.

  22. Conclusiones Muchas gracias Fortalezas y debilidades en RSA: casos prácticos Con los algoritmos actuales y los tamaños de clave que se usan y que los protocolos fuerzan, podemos estar tranquilos … al menos en el entorno civil. No obstante, en criptografía la paranoia es una máxima, en tanto una de sus funciones es asegurar la confidencialidad o el secreto de las comunicaciones. No es necesario ahondar en las matemáticas para entender qué hace y cómo funciona la criptografía, para diseñarla no. Con la llegada de la computación cuántica, toda la actual criptografía podría ser papel mojado …, se quedaría en una hermosa historia como las cifras del César, Vigenère, etc. de la criptografía clásica. En seguridad es sano ser algo paranoico… pero sin pasarse.

More Related