wren-linux / docs / keys-and-encryption.md (as a page)
# Keys and encryption: do I still need full disk encryption?
A fair question, once you know that Wren Linux keeps your most sensitive files
encrypted on their own: your password database (KeePassXC), the Whonix vault, an
SSH key's passphrase, a GPG key's passphrase. If all of that is already
ciphertext, is full disk encryption (FDE) still worth it?
**Short answer: yes, keep it.** Here is the reasoning, so it is a choice and not a
rule. For the wider picture — tampering, borders, what a thief can really do — see
[opsec.md](opsec.md); for passwords themselves, [passwords.md](passwords.md); for
GPG keys, [gpg.md](gpg.md).
## A login or sudo password does not encrypt anything
It is easy to think "they can't get past my login" or "they don't have my sudo
password." Neither protects a file on the disk:
- Someone with the powered-off laptop **boots it from a USB stick, or takes the
drive out, and reads the whole disk** — your login and sudo passwords never come
up. They gate a *live* session, not the bytes on the disk.
- With **autologin** (Wren's default on an encrypted disk), whoever turns the
laptop on *is you*: they land in your session and read your files. Reading your
own `~/.ssh`, your configs, your downloads needs **no sudo at all** — sudo only
guards *root* actions.
So a login/sudo password is not a lock on your data at rest. **Full disk encryption
is the only thing that is.**
## What is actually sensitive on the disk
More than the vault. A working laptop collects, among other things:
- **SSH keys** (e.g. `~/.ssh/`) — including, for a Wren server, the key to your
VPS.
- **GPG private keys** (`~/.gnupg/`) — and, for whoever signs Wren releases, the
**release signing key**, the most dangerous key of all: with it, someone can
sign a fake Wren Linux that your users' machines would trust.
- **Traces:** logs, caches, shell history, the desktop browser's profile, the plain
fact that you run Tor and Whonix, and the plaintext an amnesic Whonix session
briefly leaves on disk (deleted, not wiped — host FDE is its backstop).
A private key *with a passphrase* is ciphertext at rest even without FDE, which is
good. But it is not the whole story (next section), and a **passphrase-less key is
plaintext on the disk** — so the first rule is: every private key gets a passphrase.
## Three layers, each for a different job
1. **Per-file encryption** — the passphrase on each key, the app password on each
vault file. It keeps *that file* unreadable at rest. It does **not** stop someone
who can change your system.
2. **Full disk encryption** — the blanket over everything at rest, *and* the thing
that resists **tampering**. Without FDE, someone with brief physical access
(a border, a hotel, an "evil maid") does not need to read your encrypted files:
they **alter your unencrypted system** — plant a keylogger — hand it back, and
capture your vault, wallet and key passphrases the next time you type them. FDE,
with Secure Boot, is what makes that hard. On Wren, **FDE + autologin is one
passphrase at boot** and nothing after — one prompt, everything protected.
3. **A hardware security key** (a FIDO2/OpenPGP token) — for the few keys that
could do the most harm. The private key **never touches the disk**, so booting
the laptop can't reach it, and a keylogger can't extract it. This is the right
home for the **release signing key** especially; it matters more there than FDE
does.
Per-file encryption protects a stolen file. FDE protects everything, and protects
you from tampering. A hardware key protects the crown jewels even from a tampered
machine. They stack; they don't replace each other.
## What to do
- **Keep full disk encryption**, set up at install (the guided "encrypted LVM"
option; see [install-base.md](install-base.md)). With autologin it costs you one
passphrase at boot and nothing more.
- **Put a passphrase on every private key** — SSH and GPG alike.
- **Keep the Whonix wallets, messenger and passwords in the vault**, each under its
own password; host FDE is the layer beneath them.
- **For a release signing key, use a hardware security key**, so it is never on the
disk at all.
If your machine never leaves a place you fully trust, leaning on the per-file
encryption alone is more defensible. For a laptop that travels, keep FDE: the keys
you most want to protect — your SSH key, your GPG keys — are exactly what tampering
goes after, and FDE is the cheap, one-passphrase defence against it.