docs/supersync-encryption-at-rest-decision.md
Status: Accepted
Decision date: 2026-01
Last verified: 2026-07-29
The current SuperSync deployment operates without project-managed encryption of the PostgreSQL database files. The repository does not provide or support a LUKS or PostgreSQL transparent-data-encryption deployment path.
The previously implemented LUKS tooling requires dm-crypt and other host kernel
capabilities that are unavailable in the production OpenVZ environment. The
PostgreSQL TDE experiment was also not viable in that environment. Both attempts
were retired rather than leaving an untestable security mechanism in the active
deployment path.
The retirement summary and implementation-history pointers remain under
packages/super-sync-server/archive/encryption-attempts-openvz-incompatible/
as historical evidence. The executable files and runbooks were removed so they
cannot be mistaken for a supported production path.
The deployment relies on access controls and the hosting environment for database-file protection. Users who need server-blind content confidentiality should enable SuperSync E2EE. Operators whose threat model requires encrypted storage must supply that property at the infrastructure layer and verify backup and restore behavior themselves.
Reconsider this decision only with an operations-owned proposal that includes:
Viable future directions include moving to a KVM host with infrastructure-managed disk encryption or a managed PostgreSQL service that provides encryption at rest. The retired implementation in Git history is a research input, not a shortcut to approval.