Google anuncia un nuevo algoritmo que hace que el cifrado FIDO sea seguro para las computadoras cuánticas


imágenes falsas

El estándar industrial FIDO2 adoptado hace cinco años proporciona la forma más segura conocida de iniciar sesión en sitios web porque no depende de contraseñas y tiene la forma más segura de autenticación de dos factores incorporada. Sin embargo, al igual que muchos esquemas de seguridad existentes en la actualidad, FIDO se enfrenta a una amenaza siniestra, aunque lejana, de la computación cuántica, que algún día hará que la criptografía actualmente sólida que utiliza el estándar se desmorone por completo.

Durante la última década, matemáticos e ingenieros se han apresurado a evitar este criptopocalipsis con la llegada de PQC (abreviatura de criptografía poscuántica), una clase de cifrado que utiliza algoritmos resistentes a los ataques de la computación cuántica. Esta semana, investigadores de Google anunciaron el lanzamiento de la primera implementación de cifrado resistente a cuánticos para su uso en el tipo de claves de seguridad que son los componentes básicos de FIDO2.

La implementación más conocida de FIDO2 es la forma de autenticación sin contraseña: claves de acceso. Hasta el momento, no se conocen formas de anular las claves de acceso en ataques de phishing de credenciales. Docenas de sitios y servicios ahora permiten a los usuarios iniciar sesión utilizando claves de acceso, que utilizan claves criptográficas almacenadas en llaves de seguridad, teléfonos inteligentes y otros dispositivos.

«Si bien los ataques cuánticos todavía están en un futuro lejano, implementar la criptografía a escala de Internet es una tarea enorme, por lo que hacerlo lo antes posible es vital», Elie Bursztein y Fabian Kaczmarczyck, director de investigación de ciberseguridad e inteligencia artificial e ingeniero de software, respectivamente, en Google escribió. «En particular, para las claves de seguridad, se espera que este proceso sea gradual, ya que los usuarios tendrán que adquirir otras nuevas una vez que FIDO haya estandarizado la criptografía resistente a la criptografía poscuántica y este nuevo estándar sea compatible con los principales proveedores de navegadores».

El camino hacia la PQC está plagado de riesgos. RSA y otros algoritmos de cifrado se han utilizado durante décadas y no se conoce ninguna forma de romperlos. A lo largo de los años, ese historial ha generado confianza en que su uso es seguro. Los algoritmos PQC están en su infancia, y eso, con razón, ha generado preocupación de que todavía no se puede confiar en ellos. Un ejemplo de ello: un algoritmo PQC llamado SIKE. El año pasado, después de avanzar como candidato de cuarta ronda en un programa dirigido por el Instituto Nacional de Estándares y Tecnología del Departamento de Comercio de Estados Unidos, SIKE fue total y espectacularmente destruido por una sola computadora clásica.

El algoritmo PQC utilizado en la implementación de las claves de seguridad FIDO2 adopta un enfoque más cauteloso. Combina el algoritmo de firma digital de curva elíptica (que se cree que es irrompible mediante la computación clásica pero que se rompe fácilmente con la computación cuántica) con un algoritmo PQC conocido como Crystals-Dilithium. Crystals-Dilithium es ahora uno de los tres algoritmos PQC seleccionados por NIST para su uso con firmas digitales.

El Dilithium particular utilizado en la implementación de clave digital recientemente lanzada parece resolver una variedad de problemas. En primer lugar, para romperlo, un atacante tendría que derrotar tanto el cifrado ECDSA como el cifrado PCQ que sustenta su seguridad. Y en segundo lugar, las claves que utiliza son pequeñas en comparación con muchos otros algoritmos PQC que circulan actualmente. En la publicación de esta semana, los investigadores de Google escribieron:

Nuestra implementación propuesta se basa en un enfoque híbrido que combina el algoritmo de firma ECDSA probado en batalla y el algoritmo de firma resistente cuántico recientemente estandarizado, Dilithium. En colaboración con ETH, desarrollamos este novedoso esquema de firma híbrida que ofrece lo mejor de ambos mundos. Confiar en una firma híbrida es fundamental ya que la seguridad de Dilithium y otros algoritmos cuánticos resistentes estandarizados recientemente aún no han resistido la prueba del tiempo y los recientes ataques a Rainbow (otro algoritmo cuántico resistente) demuestran la necesidad de precaución. Esta cautela está particularmente justificada para las claves de seguridad, ya que la mayoría no se pueden actualizar, aunque estamos trabajando para lograrlo para OpenSK. El enfoque híbrido también se utiliza en otros esfuerzos poscuánticos, como el soporte de Chrome para TLS.

Desde el punto de vista técnico, un gran desafío fue crear una implementación de Dilithium lo suficientemente pequeña como para ejecutarse en el hardware limitado de las claves de seguridad. Mediante una cuidadosa optimización, pudimos desarrollar una implementación optimizada para la memoria de Rust que solo requería 20 KB de memoria, que era lo suficientemente pequeña. También dedicamos tiempo a garantizar que la velocidad de nuestra firma de implementación estuviera dentro de las especificaciones de claves de seguridad esperadas. Dicho esto, creemos que mejorar aún más la velocidad de la firma aprovechando la aceleración del hardware permitiría que las claves respondieran mejor.

En el futuro, esperamos que esta implementación (o una variante de ella) se estandarice como parte de la especificación clave FIDO2 y sea compatible con los principales navegadores web para que las credenciales de los usuarios puedan protegerse contra ataques cuánticos. Si está interesado en probar este algoritmo o contribuir a la investigación de claves de seguridad, diríjase a nuestra implementación de código abierto OpenSK.

La seguridad de RSA y otras formas tradicionales de cifrado asimétrico se basa en problemas matemáticos cuya respuesta es fácil de verificar pero difícil de calcular. RSA, por ejemplo, se basa en la dificultad de factorizar números primos. Encontrar los números primos para el número 27,919,645,564,169,759 es difícil, pero una vez que a alguien le dicen que los números primos son 48,554,491 y 575,016,749, se necesitan unos segundos para verificarlos (gracias a Boot.dev por el ejemplo).

Un método de factorización conocido como algoritmo de Shor hace que teóricamente sea posible resolver este tipo de problemas. Eso, a su vez, significa una muerte segura para muchos de los esquemas criptográficos que ahora protegen sesiones web cifradas, datos bancarios y médicos, y otros secretos. Lo único que frena este escenario apocalíptico es la enorme cantidad de recursos de computación cuántica necesarios.

Si bien las computadoras clásicas no pueden ejecutar el algoritmo de Shor con la suficiente eficiencia como para descifrar las claves RSA que se utilizan hoy en día, las computadoras cuánticas con suficiente potencia podrán resolverlos en cuestión de ocho horas. Nadie sabe cuándo llegará ese día, aunque un experto en el campo dijo recientemente que no será durante nuestra vida. Aún así, como señalaron los investigadores de Google, la adopción de cualquier esquema de PQC será lenta, por lo que tiene sentido comenzar a trabajar más temprano que tarde.



Source link-49