WalletPress Security Model ๐ข
Watch-only (default)โ
- No private keys touch the server. Ever.
- Reads are public chain state via RPC/explorer endpoints.
- Your address list is the only sensitive data โ stored in Postgres, encrypted at rest if you enable column encryption.
Key custody (beta, opt-in)โ
If you enable custody mode:
- Keys are encrypted with libsodium secretbox (XSalsa20-Poly1305).
- The encryption key is derived from a passphrase you provide โ it is never stored.
- Signing happens inside the WalletPress process; keys never leave memory unencrypted.
- Full audit trail of every signing request.
Read before enabling custody
- Run custody mode only behind TLS + strong auth.
- Keep the WalletPress host patched; it becomes key material.
- Prefer hardware wallets for anything you can't afford to lose.
Disclosureโ
Security issues: see Operations โ Security. Do not open public issues for vulnerabilities.