Skip to content

Encrypted local key vault helper for browser apps #72

Description

@truthixify

Tier: L (1-2 weeks) Type: feature

Context

Some browser-only apps need to keep derived stealth keys around briefly (e.g., to scan, to spend). Today consumers either keep them in memory (lost on reload) or insecurely in localStorage. Provide a passphrase-protected IndexedDB vault.

Scope

  • KeyVault class wrapping IndexedDB with PBKDF2 + AES-GCM
  • vault.unlock(passphrase) / vault.lock() / vault.put(label, keys) / vault.get(label)
  • Browser-only (Node consumers don't need it)
  • Auto-lock on tab idle / blur (configurable)
  • Clear documentation that this is not a replacement for hardware wallets

Acceptance criteria

  • Implementation + tests
  • Threat model documented (what it does NOT protect against)
  • Demo follow-up for opt-in vault use
  • Browser-only check in build

Files to start with

  • New: src/vault/

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave programdripsFunded via Drips NetworkfeatureNew feature workhelp wantedExtra attention is neededsecuritySecurity-sensitive work

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions