La IA de DeepMind demuestra que el cifrado de Signal cumple sus garantías clave
Google DeepMind afirma que sus agentes de IA han demostrado matemáticamente que el código de cifrado de Signal para chats individuales cumple sus principales promesas de seguridad. El trabajo, presentado el 10 de noviembre, usó un nuevo sistema llamado AlphaProof Code y comprobó el propio programa compilado, es decir, el código que se ejecuta de verdad. Según DeepMind, es la primera vez que la implementación de un protocolo criptográfico tan extendido se verifica formalmente por cualquier método, con o sin IA. No se encontraron fallos nuevos en las partes revisadas.
En resumen
- Verificado: el código de los chats individuales de libsignal, la biblioteca central de Signal, incluido su intercambio de claves poscuántico y el mecanismo de renovación de claves.
- No verificado: los chats de grupo, las apps de Android e iOS, los ataques de canal lateral y la generación de claves.
- WhatsApp usa el protocolo Signal, pero su software no formó parte de esta prueba.
Qué se ha demostrado
La verificación formal consiste en escribir una propiedad de seguridad como un enunciado matemático y demostrar que el programa la cumple siempre, en lugar de probarlo con ejemplos. La mayoría de los análisis de protocolos como Signal se quedan en el diseño. DeepMind bajó hasta el código máquina: el equipo tomó libsignal en su versión 0.105.4 y la biblioteca spqr, las compiló para Linux en ARM de 64 bits con el compilador estándar de Rust y razonó sobre el ejecutable resultante, según la descripción técnica.
Primero, los investigadores tradujeron con varios modelos de IA los objetivos de seguridad de Signal a especificaciones formales, y una persona revisó cada una. Después, agentes basados en Gemini Carbon escribieron las demostraciones en Lean, un lenguaje cuyo verificador comprueba cada paso de forma automática. El resultado son unos 6,5 millones de líneas. Los agentes marcaron cerca del 1 % para revisión humana, y todo el proyecto llevó cuatro semanas. Entre los diez teoremas demostrados están el secreto hacia adelante, que protege los mensajes antiguos si una clave se filtra más tarde, y la seguridad poscompromiso, que restablece la protección después de que un dispositivo haya sido hackeado temporalmente.
Para comprobar que el sistema distingue el código correcto del erróneo, el equipo volvió a introducir dos fallos reales de Signal, corregidos hace tiempo, en una copia aislada del código. En ambos casos, AlphaProof Code generó una demostración verificada por máquina de que la versión con el fallo era insegura.
Qué queda fuera de la prueba
La descripción detalla los límites. Las apps móviles no se verificaron directamente, y los autores solo esperan que los resultados se trasladen si las apps ejecutan el código del protocolo sin cambios. Los chats de grupo quedan para trabajos futuros. Los canales laterales, como las fugas por tiempo de ejecución o consumo eléctrico, quedan fuera, igual que la generación de claves y el uso en varios dispositivos. Además, las demostraciones dan por hecho que las piezas criptográficas básicas son sólidas. El director de tecnología de Signal, Ehren Kret, dijo que el trabajo «nos da aún más confianza» en las garantías de privacidad del código.
El blog de DeepMind menciona Signal y Google Messages entre las apps que usan este protocolo. WhatsApp adoptó el protocolo Signal hace años, pero la prueba cubrió el código libsignal de Signal y no el software de WhatsApp, así que no dice nada nuevo sobre WhatsApp. El trabajo se apoyó en parte en una verificación formal anterior de Signal hecha sin IA. El método además es costoso: Google dijo a Wired que exige mucha computación, y el investigador Swarat Chaudhuri afirmó que queda «un largo camino» antes de poder aplicarlo a todo el software del mundo, informa 9to5Mac. DeepMind ha publicado las demostraciones en GitHub para que expertos externos puedan revisarlas.
• Introducing AlphaProof Code: a breakthrough in verifying complex software at depth - Google DeepMind
• Formal verification of the Signal protocol implementation - Google DeepMind
• code-verification - GitHub
• Google DeepMind analysis proves Signal and WhatsApp encryption is secure - 9to5Mac