Google AlphaProof Code Verifies Signal Security: What Was Proved and What Was Not

Google DeepMind says its AlphaProof Code system has formally verified important security guarantees in the compiled code of Signal’s cryptographic protocol. Published on November 10, 2026, the work covers the post-quantum PQXDH handshake and Triple Ratchet used for one-to-one conversations, connecting high-level security claims to AArch64 machine code generated from libsignal.

That is a meaningful advance, but it is not a certificate that the entire Signal app is impossible to hack. The proof applies to a defined implementation, execution model, set of properties and collection of cryptographic assumptions. It does not cover every device architecture, group chat, operating-system component, linked-device state, user action or future version of Signal.

For Signal users, there is no emergency patch or account change tied to the announcement. The practical advice remains familiar: keep every Signal installation current, review linked devices, verify safety numbers for sensitive conversations and protect account recovery with Signal’s available second-factor options.

AlphaProof Code and Signal at a glance

  • Publication date: November 10, 2026.
  • Target: libsignal v0.105.4 compiled with stock rustc into AArch64 Linux machine code and linked to a small command-line harness.
  • Protocol scope: one-to-one sessions using the PQXDH handshake and Triple Ratchet.
  • Verified properties: message confidentiality and authenticity, forward secrecy, post-compromise security, handshake authentication and handshake secrecy under the stated models and assumptions.
  • Proof volume: about 6.5 million lines of machine-checked Lean proof code resting on roughly 26,000 lines of trusted specifications and AArch64 semantics.
  • Human role: researchers reviewed and approved the specifications; Lean’s kernel checked the proofs against a held-out copy of those specifications.
  • Validation check: DeepMind reintroduced two previously fixed bugs in an isolated version, and the system showed the buggy version was insecure.
  • User action: no special migration is required, but this result does not replace app updates, device security, linked-device reviews or safety-number verification.

What AlphaProof Code actually verified

What AlphaProof Code actually verified

Editorial concept: AlphaProof Code links approved security specifications to compiled mobile machine code, with Lean checking the resulting proofs.

Most formal analyses reason about a protocol design or a simplified mathematical model. DeepMind’s project went further by compiling the unmodified Rust implementation of libsignal into an AArch64 executable, then proving that executions of that binary satisfy selected protocol-level security properties. The operating environment is modeled in Lean, and the proof connects machine instructions back to the approved specification.

The target was not a full Android or iOS application. Researchers linked libsignal and the relevant SPQR crates to a small command-line harness. Low-level cryptographic primitives, two output functions and several library routines were represented by trusted contracts instead of being proved instruction by instruction. The result therefore covers the verified code around those contracts while assuming the contracted primitives behave as specified.

DeepMind evaluated the implementation in two standard security frameworks. The symbolic model treats cryptographic operations as idealized black boxes and reasons about an attacker who controls the network and may compromise keys or session state. The computational model expresses concrete bounds on a classical attacker’s advantage using assumptions about the underlying primitives.

The security properties in plain language

Forward secrecy

If a long-term key is compromised later, previously protected message keys should remain secret. The proof supports this property within the modeled one-to-one session and stated assumptions; it does not mean an attacker who already captured an unlocked device cannot read messages stored on that device.

Post-compromise security

The Triple Ratchet is designed to recover security after a temporary compromise once fresh key material is exchanged. AlphaProof Code verified this recovery property in the covered session model. Recovery still depends on the protocol progressing and does not disinfect a phone that remains under an attacker’s control.

Authentication and resistance to key compromise impersonation

The handshake proof addresses whether a participant can be tricked into accepting the wrong peer and whether compromise of one party’s long-term key enables certain impersonation attacks. Users still need a trustworthy way to associate a person with a safety number; mathematics cannot determine whether the human on the other end is who they claim to be.

Handshake and message secrecy

The verified model connects PQXDH and the Triple Ratchet, supporting secrecy and authenticity claims for messages in covered one-to-one sessions. The symbolic analysis also considers a later quantum break of the classical Diffie-Hellman component, while the computational result is limited to classical attackers and its stated assumptions.

Why the AI-generated proof can still be trusted

An AI model writing millions of lines of proof would not be reassuring if the same model could silently relax the goal. AlphaProof Code separates those roles. Humans guide and approve the specification, reviewer agents compare drafts with the implementation and research sources, and prover agents work against a fixed specification. A gatekeeper accepts a result only when Lean’s kernel checks the proof and a comparator confirms that it proves exactly the held-out specification.

The trusted base is smaller than the generated proof but not zero. Readers must trust the approved definitions, the AArch64 semantics, Lean’s kernel, the cryptographic assumptions and contracts for routines outside the verified code. DeepMind says it tested instruction semantics against independent emulators and models, yet a formal result remains only as strong as its specification and trusted components.

The speed is still notable. Google says the full project took four weeks, while comparable formal-verification programs historically required years of expert work. The published materials also make the specifications and proof artifacts available for outside examination instead of asking readers to accept a private model score.

What the proof does not cover

The easiest mistake is to turn a narrow, strong claim into a universal one. AlphaProof Code did not prove that Signal is unhackable, that every app using Signal-related technology has identical protections or that no future vulnerability will appear.

  • The full Signal Android, iOS or Desktop application, including user interface, storage, notifications, media handling and update delivery.
  • Group messaging; the paper restricts its Signal model to one-to-one sessions.
  • Complete multi-device behavior and every linked-device state.
  • Operating-system security, malicious keyboards, screen capture, spyware, physical access or an already unlocked device.
  • Every processor architecture or runtime environment; the verified executable is AArch64 Linux machine code in the project’s modeled environment.
  • The internal security of the low-level cryptographic primitives modeled by contracts; their properties enter as assumptions.
  • Every post-quantum property. The paper lists SPQR post-quantum healing outside the symbolic result and quantum attackers outside the computational result.
  • Unlimited scale. The computational bound has cases where it becomes uninformative for many long sessions and epochs.
  • Future libsignal changes. A proof for v0.105.4 does not automatically transfer to code modified after that version.

What Signal users should do now

The announcement increases confidence in important cryptographic code, but it does not change ordinary account and device hygiene. Signal’s own support guidance points users toward a small set of checks that protect layers outside the proof.

  • Update Signal on the primary phone and every linked device. Old releases can miss security fixes and newer protocol support.
  • Review Signal Settings > Linked devices and remove anything you do not recognize. When in doubt, unlink all secondary devices and reconnect only the ones you control.
  • Verify safety numbers for high-risk conversations, especially after an unexpected change. A verified safety number change must be approved before sending again.
  • Enable the second-factor options available to your Signal Login and keep a backup method. Signal says supported passkeys may be stored in an operating-system store, password manager or physical security key.
  • Protect the phone itself with a strong device unlock method, current operating-system patches and caution around unknown links, attachments and requests for verification codes.
  • Do not read the proof as a reason to ignore social engineering. Signal says it will not contact users in-app to request passwords, payment information or verification codes.

A hardware key can protect Signal Login, not message encryption

Signal’s support documentation says passkeys for Signal Login can be stored on a physical security key. Readers who want a USB-C and NFC option can review the Yubico YubiKey 5C NFC on Amazon (Amazon ASIN B08DHL1YDL). Yubico lists FIDO2/WebAuthn, USB-C and NFC support for this model. Confirm the exact product, seller, firmware, compatibility, return policy and current price before ordering.

A YubiKey does not strengthen the PQXDH handshake or Triple Ratchet that AlphaProof Code verified. It protects a separate account-access layer, and Signal’s support page says users should keep another authenticator or passkey available because Signal cannot recover a lost second-factor setup. A hardware key is optional, not a requirement created by this research.

Affiliate disclosure: ReaderSpice may earn a commission from qualifying Amazon purchases made through the link above, at no additional cost to you.

Why this matters beyond Signal

The larger result is methodological. Formal verification has often been reserved for operating-system kernels, compilers and other systems where years of specialist work can be justified. AlphaProof Code shows that a human-guided team of AI agents can generate and integrate proof work at a scale that would previously have been impractical for an existing industrial codebase.

That does not mean developers can press a button and certify any application. Writing a strong specification remains difficult, external contracts must be justified and real software includes threads, files, dynamic linking, hardware variation and user-controlled inputs that may not fit the current semantics. The project’s own documentation treats specification quality as the next major challenge.

If the approach scales, the most useful shift would be from testing whether software fails on known examples to proving that defined classes of failure cannot occur within a modeled boundary. Banking code, medical-device firmware, cloud infrastructure and critical industrial controls are obvious candidates, but each would need domain-specific properties and independent review.

Bottom line

AlphaProof Code provides unusually deep evidence for the covered version of libsignal. It links the one-to-one PQXDH and Triple Ratchet implementation to machine-checked proofs of important secrecy, authentication, forward-secrecy and post-compromise properties, rather than stopping at a protocol diagram or source-level argument.

The limits are just as important as the achievement. The work does not certify the entire Signal app, every architecture, group chats, multi-device behavior, a user’s phone or the cryptographic primitives modeled as assumptions. Signal users do not need to change apps or rush into a special update because of the announcement. Keep the software current, verify sensitive contacts, review linked devices and protect account recovery; treat the proof as stronger evidence for one critical layer, not a replacement for every other layer of security.

Sources

Google DeepMind: Introducing AlphaProof Code, November 10, 2026

Google DeepMind project: AlphaProof Code verification overview and scope

Google DeepMind paper: AlphaProof Code – Verifying Signal Security at the Machine-Code Level

Google DeepMind GitHub: code-verification proof artifacts

Signal Support: Is it private and can I trust it?

Signal Support: How to keep Signal up to date

Signal Support: Linked devices

Signal Support: Safety numbers

Signal Support: How to protect yourself on Signal

Signal Support: Two-factor authentication, passkeys and physical security keys

Wired: A new AI tool from Google DeepMind proved the Signal protocol is secure

The Register: Google DeepMind melds humans and AI agents to vet Signal security

Yubico: YubiKey 5C NFC specifications

Amazon: Yubico YubiKey 5C NFC (ASIN B08DHL1YDL)

Comments

comments