Ayer hubo un revuelo cibernético por un nuevo trabajo de criptografía que indica que el método de pasar información con claves de seguridad por internet (usado en compras online con tarjetas de crédito, o toda vez que aparece el candadito en el browser) no es tan seguro como parecía.
El método actual (el algoritmo RSA), usado en casi todas las transacciones “encriptadas”, se basa en un problema irresuelto de las matemáticas: no hay un método general para saber cuáles son los factores primos de un número, salvo fuerza bruta. Los números primos, recordemos, son los que son divisibles solo por sí mismo y por 1. Por ejemplo, ¿12 es primo? Obvio que no, es par, y además lo puedo descomponer en 12=2x2x3, (2 y 3 son primos). Que tal 2012 (nuestro año): pruebo dividiendo por 2 primero, y luego sigo hasta encontrar los primos que lo dividan 2012=2x2x503 (503 es primo). En suma, no hay otra manera que probar uno por uno.
En el método de encriptación actual, Alicia, que va a recibir el mensaje, elige dos números primos, los multiplica y publica el resultado. Obvio que es un número muy grande, de otro modo sería fácil encontrar sus factores. Lo importante es que el número es público, cualquiera puede verlo. Y lo interesante del método es que dos personas se pueden mandar un mensaje secreto sin haber intercambiado jamás una clave. La clave es pública, pero solo Alicia sabe descifrarla. El que manda, convierte su mensaje a un número (esa parte es fácil) y luego lo combina con el número público. El mensaje queda encriptado y para desencriptarlo hay que saber los números primos que eligió Alicia.
¿Cómo elige Alicia los número primos? Lo mejor es elegirlos al azar, de esa manera se minimiza la chance de que alguien los descifre. Y aquí está el punto del trabajo. Lo que hicieron los autores es examinar más de 6 millones de claves públicas y hacerles una “prueba de sanidad”. El resultado es que un porcentaje muy chico pero significativo de esas claves públicas son idénticas, y no puede ser casualidad sino que parece debido a la manera de elegir los primos. Generar número verdaderamente azarosos con computadoras es difícil. La conclusión del trabajo es que algunas claves son vulnerables.
Si bien no es para alarmarse, los autores no publicaron cuáles son las claves que son vulnerables y tienen su método “al resguardo” (under custody). El trabajo se va a presentar recién en agosto en un congreso en California pero ya se está pensando que, para grandes bases de datos, quizás haya que cambiar de método de encriptado.
[clearfix]Publicado en: El Desmitificador Blog de TN [/clearfix]