Skip to content
What Signal Solves
step 1/5

Reading — step 1 of 5

Read

~1 min readFoundations: X3DH

What Signal Solves

Signal Protocol (originally OTR-inspired, now used by Signal, WhatsApp, Messenger Secret Conversations, etc.) provides:

  1. End-to-end encryption: server can't read messages.
  2. Forward secrecy: past messages stay private even if current keys leak.
  3. Future secrecy / break-in recovery: future messages are safe again after key compromise.
  4. Asynchrony: send a message even if recipient is offline; they decrypt later.
  5. Deniability: messages are not cryptographically tied to a long-term identity in a non-repudiable way.

That last property is unusual. Signed messages (PGP, S/MIME) prove "Alice wrote this" — bad for deniable conversations. Signal's MAC-based authentication proves only "someone who shares the conversation keys wrote this" — that's both Alice and Bob.

Architecture pieces:

  • X3DH (Extended Triple DH): asynchronous key agreement. Bob can send to Alice even if she's offline.
  • Double Ratchet: per-message key derivation that ratchets forward (each message's key is forgotten after use).
  • Pre-keys: Alice publishes a pile of one-time keys to the server. Bob grabs one to start.

Server is untrusted. It only stores ciphertexts and pre-key bundles. It cannot decrypt messages. It cannot impersonate users (that requires identity-key compromise, which clients display via "safety numbers" / QR codes).

Compared to TLS: TLS is interactive (client + server online). Signal handles offline scenarios — text messages.

Discussion

Ask a question, share an insight, or help someone who’s stuck.

Sign in to post a comment or reply.

Loading…