Security Architecture
SHADE implements military-grade encryption with defense in depth. All cryptographic operations run locally in your browserβnothing is ever sent to any server.
Core Principles
Zero Trust
No server ever sees your keys. All encryption/decryption happens in your browser.
Defense in Depth
Multiple layers of protection: encryption, isolation, detection, self-destruct.
Key Isolation
Each feature uses purpose-specific encryption keys derived from your password.
Minimal Exposure
Private keys are decrypted only when needed and for the shortest time possible.
Encryption Standards
| Component | Standard | Details |
|---|---|---|
| Encryption | AES-256-GCM | Authenticated encryption with 256-bit keys |
| Key Derivation | PBKDF2 | 310,000 iterations (OWASP 2025) |
| Hashing | SHA-512 | Integrity verification checksums |
| MAC | HMAC-SHA-256 | Message authentication codes |
| Random | CSPRNG | Cryptographically secure random via Web Crypto |
Encryption Pipeline
plaintext
β
βΌ
βββββββββββββββββ
β PBKDF2 β password + salt β derived_key
β 310k iterationsβ
βββββββββ¬ββββββββ
β
βΌ
βββββββββββββββββ
β AES-256-GCM β plaintext + key + iv β ciphertext
β random IV β
βββββββββ¬ββββββββ
β
βΌ
βββββββββββββββββ
β SHA-512 β ciphertext β checksum
βββββββββ¬ββββββββ
β
βΌ
{ iv, salt, ciphertext, checksum }Secure Storage
All sensitive data is stored in IndexedDB with purpose-based key isolation:
SecureKeyManager (IndexedDB)
βββ burner:{id} β encrypted burner private key
βββ stealth:master β encrypted stealth master seed
βββ stealth:{idx} β encrypted stealth spend key
βββ gasless:{id} β encrypted fee payer key
βββ passkey:{id} β encrypted passkey credentialEach key type uses a different encryption purpose, so compromising one doesn't expose others.
Threat Detection
SHADE actively monitors for tampering and attacks:
Detects if browser debugger is attached
Monitors for DevTools opening
Verifies critical functions aren't modified
Detects breakpoints in security code
Monitors for screenshot attempts
Freshness verification on encrypted data
Self-Destruct Protocol
If tampering is detected, SHADE automatically:
- 1.Wipes all encrypted storage (IndexedDB)
- 2.Clears session data and memory
- 3.Logs the threat type (locally only)
- 4.Displays security alert to user
Threat Model
Threats Addressed
Out of Scope
Session Security
Web Crypto API
All cryptographic operations use the browser's native Web Crypto APIβa battle-tested, audited implementation maintained by browser vendors. No third-party crypto libraries with potential vulnerabilities.