--- type: concept tags: [parking, security, platform] sources: [parking-system-architecture] updated: 2026-06-21 --- # Disk / OS Hardening Worthwhile, but **not the main event** — it defends against the outsider-with-physical-access, not the operator (see [[threat-model]]). (See [[parking-system-architecture]] §3.) Physical-access attacks on Windows are trivial (boot media + password-reset tools), so a **dedicated Linux machine is the correct platform** — not Windows or WSL. This is a [[standing-decisions|standing decision]]. - **LUKS full-disk encryption** — defeats boot-from-USB. - **GRUB password + Secure Boot** — prevents boot-parameter tampering / unsigned loaders. - **No desktop environment** — single-purpose appliance. - **Key-based SSH only.** - **[[tpm|TPM 2.0]]** _(recommended, 2026-06-21)_ — seals the LUKS key to the boot chain so the disk **auto-unlocks only on an untampered boot**, making encryption-at-rest compatible with **unattended reboot** (a booth must come back up after a power cut without a human typing a passphrase). Also a candidate home for the non-extractable host event-signing key. Caveats (live-root limit, bus-sniff, PCR brittleness, mandatory recovery passphrase + re-seal runbook) on [[tpm]]; implementation is [[open-questions]] #12. With LUKS in place, **SQLCipher becomes optional** defence-in-depth rather than the critical layer. (The custom controller adds its own: ESP32 flash encryption + secure boot — see [[esp32-custom-controller]].)