Google DeepMind formally verifies key Signal encryption code with AI agents

Google DeepMind has introduced AlphaProof Code, a human-guided AI framework that researchers used to formally verify key security properties of libsignal, the Rust reference implementation behind the Signal protocol.

In its Nov. 10 announcement and accompanying technical paper, Google DeepMind said the work targeted one-to-one session code in libsignal-protocol v0.105.4, with spqr v1.6.0, wrapped in a small command-line harness called libsignal-cli. The code was compiled with the stock Rust compiler into AArch64 Linux machine code.

The proofs cover PQXDH session setup and Triple Ratchet messaging for init, send, and recv operations. DeepMind says the proofs establish properties including forward secrecy, authentication, post-compromise security, handshake secrecy, and message confidentiality and authenticity under the assumptions in its models.

Earlier formal analyses often focused on protocol designs or narrower implementation properties. DeepMind’s paper says this is the first proof connecting protocol-level security guarantees to the unmodified code of a widely used cryptographic protocol implementation.

How AlphaProof Code worked

AlphaProof Code splits the job between people and AI agents. Human researchers decide what should be proved, review the specifications, and approve the security statements. AI agents then produce Lean proof code, and Lean’s kernel checks whether the proofs satisfy the approved statements.

According to the technical paper, the agents generated about 6.5 million lines of machine-checked Lean proof code. The proof rests on about 26,000 lines of trusted specifications and AArch64 semantics. Google DeepMind says the verification process took four weeks, compared with years of expert labour that similar work could have required with earlier tooling.

The team also reintroduced two previously fixed libsignal bugs into isolated builds. In both cases, the framework proved that the modified binaries violated the symbolic security theorems, which gave the researchers a test that the specification could catch known real-world mistakes rather than only confirming a weak model.

Where the proof stops

The work does not verify the entire Signal mobile app. It also does not verify every part of the Signal service or every privacy property associated with using Signal.

Google DeepMind described the Signal protocol as widely deployed, with variants used in apps such as Signal, Google Messages, WhatsApp, and Meta Messenger. The new proof is about Signal’s reference implementation, not independent verification of every app that uses a Signal-protocol variant.

The paper states that keygen was not verified; the theorems cover init, send, and recv. The scope is restricted to one-to-one sessions. Group messaging, sealed sender, server-side protocols, multi-device state, side channels, and some broader deployment questions are outside the proof.

Cryptographic primitives are also handled through contracts or assumptions, depending on the model. That is normal in this kind of formal verification, but it means the result should be read as a proof about the specified code and specified properties under stated assumptions, not as a blanket guarantee that no vulnerability can exist anywhere around Signal.

The security engineering significance

Software security often has a gap between a protocol that has been analyzed on paper and an implementation that must parse inputs, manage state, serialize messages, handle memory, and interact with a compiler and runtime.

By verifying compiled machine code, DeepMind reduced reliance on assumptions about the Rust source semantics or compiler correctness for the covered code path. The paper says an implementation or compiler bug that violated the formalized security properties would have made the theorem false and caused the proof to fail.

WIRED reported that the analysis did not find new vulnerabilities in the examined portions of Signal, while Axios reported that Google DeepMind is treating the work as a research project rather than a commercial cybersecurity product. Those points keep the announcement in perspective: the work is a strong security-assurance result, not a new end-user feature or a full product launch.

For developers and security teams, the larger development is AlphaProof Code itself. If similar AI-assisted workflows can be repeated on other real-world codebases, formal verification may become less limited to rare, high-budget projects. The remaining hard part is not just getting AI agents to write proofs, but deciding exactly which security properties should be proved and what assumptions the proof is allowed to make.

Get new small business insights by email

Practical ideas and useful articles to help you make better business decisions.

HelperX Bot

Not sure what to read next?

I can suggest related Tech Help Canada articles based on the topic you’re reading now.

Tech Help Canada Staff researches, writes, and reviews practical content for business owners and professionals. Our coverage spans business, marketing, SEO, technology, and the tools and systems people use to grow and operate online. We focus on clear, useful information backed by research, hands-on experience, and editorial review. Learn more about our team and editorial standards. Need help with something? Contact Us

Leave a Comment

Tweet
Share
Share
Pin
WhatsApp
Reddit
Email