Google DeepMind says it used AlphaProof Code to mathematically check key security properties in libsignal, the reference implementation of the Signal messaging protocol. The work took four weeks. DeepMind says similar verification has historically taken expert teams years.
The system paired human researchers with AI agents. Researchers and AI helped turn Signal’s security goals into mathematical specifications, which people reviewed. Then agents powered by Gemini Carbon generated about 6.5 million lines of Lean proof code. Lean is a programming language whose checker can verify whether a mathematical proof follows its rules. The agents flagged about one percent of the codebase for human review.
What did the proof cover?
The researchers checked the compiled machine code for libsignal’s post-quantum PQXDH handshake and Triple Ratchet. They proved specific properties, including forward secrecy, authentication and protection after a device has been compromised. The research paper says the code was compiled from unmodified Rust using a standard compiler, then checked as AArch64 machine code.
This goes beyond proving that an abstract design is secure: it connects specified security guarantees to compiled code. DeepMind calls it the first formal verification of a widely deployed cryptographic protocol’s implementation at this depth. The team also put two previously fixed bugs back into an isolated version of the code; the system produced proofs showing the buggy versions failed the stated security properties.
The proof has limits
This is not a mathematical guarantee that every part of Signal, or every app using the protocol, is free of security problems. The proof covers selected properties of libsignal, not the whole app. It also relies on approved specifications, Lean’s checker and contracts for low-level cryptographic routines. The Register notes that the result does not prove the computational secrecy of actual message bytes; DeepMind’s paper describes proofs in both symbolic and computational models, which depend on assumptions about the underlying cryptographic primitives.
DeepMind says it is making the verification materials available for others to use. It hopes to apply the approach to areas such as medical-device firmware and power-grid software, but says scaling the method will require more research. The work is a step toward checking more real-world code, not evidence that those other systems have been verified.
Why it matters
For people using Signal, the work adds a machine-checked proof for specific security properties in its core protocol implementation. It does not establish that the entire app is bug-free, and the proof depends on assumptions about cryptographic components.