Encryption in transit (TLS) vs encryption at rest
coreintermediateEncryption in transit (TLS) protects data while it moves across a network; encryption at rest protects data while it sits on a disk, in a backup, or in a database file. You need both — TLS does nothing once a request lands and the data is written to storage.
Think of it as
Think of TLS as an armored truck and encryption at rest as a bank vault. The armored truck protects cash while it travels between two buildings — it does nothing once the cash is inside a building. A vault protects the cash while it sits still — it does nothing while the cash is on the road. A bank needs both; leaving out either one means the cash is exposed for part of its life.
What we're doing: Trace a password-change request through both protections to see where each one actually applies.
- 1
- TLS protects the password only while it crosses the network — it says nothing about what happens after step 2.
- 4
- Encryption at rest protects the stored hash from anyone who gets the raw disk or volume snapshot, without needing to go through the app.
- 6
- A backup is a full copy of the data outside the live system — if it is not separately encrypted at rest, it is a second, easier target.
Why this works: Each protection covers a different window in the data's life — TLS covers steps 1 and 2, at-rest encryption covers steps 4 and 6 — and neither substitutes for the other during the window it does not cover.
Enabling TLS and assuming stored data is now "encrypted"
Wrong
Better
What you see: A leaked database backup or a misconfigured storage bucket exposes every record in plaintext, even though every request to the live system was served over HTTPS the whole time — the incident report reads "TLS was enabled everywhere" right next to "the backup was not encrypted."
Why: TLS only ever covers the network hop. Once a request lands and data is written to disk, TLS has nothing left to protect — a stolen disk, an exposed snapshot, or a misconfigured bucket is read directly, with no network step for TLS to have guarded.
- TLS in transit
- Stops an attacker sniffing traffic on the network path
- Active only while a request is moving between endpoints
- Useless against a stolen disk or leaked backup file
- Encryption at rest
- Stops an attacker who obtains the raw storage medium
- Active only while data is sitting still, not moving
- Useless against traffic sniffed off an unencrypted connection
What each protection actually covers
Remember: TLS protects data in motion; encryption at rest protects data at standstill. A system needs both, because a stolen disk or leaked backup never touches the network path TLS covers.

