You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The mainnet auditor account 0x5ba6F05b245C06c3a4C05e7bC4486dE3661393ea is set on-chain via setAuditorPublicKey, which enables private ops (they fail closed until it is set). But its BabyJubJub private half currently lives as a local operator secret (contracts/.auditor-key.local.json, gitignored), and the auditor is an operator-controlled key rather than an independent custodian (README.md "What is Real vs. Simulated" + go/no-go). BenzoNet's manifest carries the same custody note ("until M3 sealed storage imports it").
Scope
Move the auditor private half out of .auditor-key.local.json into the APP_MASTER_KEY-sealed prod store, with a documented import + access model.
Tracker: #154
Context
The mainnet auditor account
0x5ba6F05b245C06c3a4C05e7bC4486dE3661393eais set on-chain viasetAuditorPublicKey, which enables private ops (they fail closed until it is set). But its BabyJubJub private half currently lives as a local operator secret (contracts/.auditor-key.local.json, gitignored), and the auditor is an operator-controlled key rather than an independent custodian (README.md"What is Real vs. Simulated" + go/no-go). BenzoNet's manifest carries the same custody note ("until M3 sealed storage imports it").Scope
.auditor-key.local.jsoninto theAPP_MASTER_KEY-sealed prod store, with a documented import + access model.setAuditorPublicKey(owner-gated), rotate downstream auditor decryption, and the operational cadence/triggers. (The console rotation UI is Console Auditor surface: compliance ledger, key rotation ceremony, public-vs-auditor view #56; this issue is the mainnet key-custody + protocol runbook.)Acceptance criteria
setAuditorPublicKeyrotation runbook (mainnet + BenzoNet) including downstream decryption impact.Ownablecustody.Dependencies
Ownableadmin-custody transfer (setAuditorPublicKeyis owner-gated).