Skip to content

Beta gate: reduce/clarify Door A (F2) custody exposure #186

Description

@Jolah1

The easy-setup (F2 / Door A) path lets the server reconstruct the heir's key from (master_key, heir_email, vault_id). It's documented and inherent to that path, not a bug, but it's the weakest custody story and should be minimized for beta. (Door B / password-vault is genuine self-custody.)

Step by step

  1. Make Door B the clear default in setup; present F2 as an explicit "my heir has no wallet and I accept the tradeoff" choice with plain-language disclosure.
  2. Land the KMS work (Beta gate: move GHOSTKEY_MASTER_KEY to a KMS/HSM (envelope encryption) #184) first: it shrinks the F2 risk from "env var leak" to "KMS compromise."
  3. Envelope-encrypt the at-rest claim token under the per-vault KMS data key so a DB leak alone never yields the F2 heir key.
  4. Offer an F2 opt-out / upgrade path: let an owner re-vault an F2 heir into a Door B vault once the heir has a wallet (ties into issue Master key rotation: design + runbook #27).
  5. Re-state the tradeoff wherever F2 is chosen, in the app and the recovery kit, so no one is surprised. (Copy already corrected in fix(copy): make heir-key custody claims accurate (design review C0) #156; keep it accurate.)

Done when

Door B is the default, F2 is opt-in with clear disclosure, the at-rest token is KMS-wrapped, and there's a path off F2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions