End-to-end encryption
Also known as: E2EE
Scrambling a message on the sender's device so that only the receiver's device can read it, not even the service carrying it.
Draft - this entry has not been reviewed yet.
Formal
A design in which data is encrypted on the sending device with keys held only by the people talking, so every server in between, including the provider's own, passes along data it has no key to read.
In plain English
Like posting a locked box that only your friend has the key to - the postal service carries it all the way but can never open it.
In practice
A ministry lets staff use a chat app with end-to-end encryption on their work phones. IT can manage the phones, but a request to the app's provider for the chats would return nothing readable.
Why it matters
Without it, every message can be read at the provider, so one break-in or one curious member of staff exposes everyone; the trade-off is that lost keys mean lost messages.
Technical deep dive
The defining property is where the keys live: only on the endpoints, never with the operator of the relay. That makes E2EE a threat-model statement rather than an algorithm. It protects content against the server, its administrators, its cloud provider and anyone who compels or breaches them; it does not protect against a compromised endpoint, a malicious client update, or screenshots, and in most deployments it does not hide metadata such as who talks to whom, when, from which IP address and how often.
The dominant design for messaging is the Signal Protocol. Each device publishes an identity key and signed prekeys to the server; a sender runs an asynchronous key agreement (originally X3DH, replaced in 2023 by PQXDH, which adds a post-quantum KEM so that recorded traffic cannot later be decrypted with a quantum computer) and then the Double Ratchet. The ratchet derives a new message key for every message through a symmetric KDF chain and mixes in fresh Diffie-Hellman outputs whenever the direction of conversation changes. This gives forward secrecy (stealing today's keys does not reveal yesterday's messages) and post-compromise security (the conversation heals once new DH values are exchanged). WhatsApp and Google Messages' RCS chats use the Signal Protocol, Apple's iMessage moved to its PQ3 protocol in 2024, and Messaging Layer Security (RFC 9420, July 2023) standardises efficient group key agreement with a ratchet tree so that membership changes cost O(log n) instead of O(n).
The weakest point is key authentication. The server distributes public keys, so a malicious or coerced server could hand out its own key and sit in the middle. The countermeasures are out-of-band verification of safety numbers or QR codes and, increasingly, key transparency logs that make such substitutions publicly detectable. Multi-device support multiplies the problem: every linked device, web client and backup is another endpoint. Cloud backups are a classic gap; WhatsApp added optional end-to-end encrypted backups in 2021, and Apple's Advanced Data Protection extends E2EE to most iCloud categories but was withdrawn for new users in the UK in February 2025 after a government demand.
E2EE differs from TLS, which is hop-by-hop and terminates at the provider, and from encryption at rest, where the provider holds the keys. In e-mail, OpenPGP (RFC 9580) and S/MIME provide E2EE for the message body only, leaving headers and subject in the clear. For organisations the trade-offs are concrete: E2EE conflicts with server-side malware scanning, legal hold, archiving obligations and DLP, and lost keys mean lost data. Proposals for client-side scanning to detect illegal content, debated in the EU for several years, would move inspection onto the endpoint and are widely criticised by cryptographers for undermining exactly the guarantee E2EE is meant to give.
What to learn first
Everything this builds on, foundations first.
- Cryptographic key
- →Encryption
- →Public-key cryptography
- →End-to-end encryption
Relationships
- Implements
- Confidentiality
- Don't confuse with
- TLS
- Mitigates
- Data breach
Sources & further reading
Official documentation
- Signal Protocol documentation · Signal
Reference works
Where this data comes from
This entry was drafted by an AI from the sources above and has not yet been checked by a person. Treat it as a starting point, and check anything important against the sources.
See the review queueSuggest a correction on GitHubThis term as JSON
Check yourself
Loading…