
Security
SimpleGo's security architecture is built on the principle that every layer must be independently defensible. Compromising one layer must not weaken any other.
Four Encryption Layers Per Message
| Layer | Algorithm | Protects Against |
|---|---|---|
| 1. Double Ratchet (E2E) | X3DH (X448) + AES-256-GCM | End-to-end interception. PFS + post-compromise security. |
| 2. Per-Queue NaCl | X25519 + XSalsa20 + Poly1305 | Traffic correlation between queues |
| 3. Server-to-Recipient NaCl | NaCl cryptobox | Correlation of server I/O frames |
| 4. TLS 1.3 | mbedTLS, ALPN smp/1 | Network-level attackers |
Content padding to 16 KB fixed blocks at every layer. A network attacker sees only equal-sized packets.
No Persistent Identity
No user IDs, phone numbers, or usernames. Communication uses ephemeral unidirectional queues. No party - including the server - can correlate senders and recipients.
No Baseband Processor
No cellular modem with DMA access running proprietary firmware. This eliminates the entire class of baseband vulnerabilities documented in academic research (BASECOMP, BaseMirror).
Three Hardware Classes
SimpleGo implements security across three hardware tiers, from development boards to high-security devices with triple-vendor secure elements.
| Feature | Class 1 (ESP32) | Class 2 (STM32 + SE) | Class 3 (STM32 + Triple SE) |
|---|---|---|---|
| Key Storage | eFuse HMAC-derived | Secure Element (EAL5+) | Triple SE (EAL5+/6+) |
| Security Modes | 4 (Open/Vault/Fortress/Bunker) | 2 | 1 (always maximum) |
| Cost to Read Keys | $2,000+ with vault | $30,000+ | $200,000+ (3 vendors) |
| Target | Alpha testers, Kickstarter | Journalists, activists | High-risk individuals |
Security Documentation
- Security Overview - complete threat model, three hardware classes, honest limitations, comparison with alternatives
- Known Vulnerabilities - every published CVE and attack against ESP32 family, with ESP32-S3 applicability assessment
- Attack Equipment Economics - what it costs to break a SimpleGo device, from $15 to $400,000
- Four Security Modes - Open, Vault, Fortress, Bunker explained
Hardware Class 1 Deep Dive (12 Documents)
Hardware Class 2 and 3
- Class 2 Overview - ATECC608B integration (coming soon)
- Class 3 Overview - Triple-vendor Secure Elements (coming soon)
Known Vulnerabilities
SimpleGo maintains an honest, public inventory of all known security gaps. No finding is downplayed or hidden.
| ID | Severity | Description | Status |
|---|---|---|---|
| SEC-01 | Critical | Decrypted messages in PSRAM never zeroed | Open (Session 45) |
| SEC-02 | Critical | NVS keys plaintext (no HMAC vault yet) | Open (Session 45) |
| SEC-03 | High | memset instead of zeroize in smp_storage.c | Closed (Session 42) |
| SEC-04 | High | No memory wipe on display timeout | Open (Session 45) |
| SEC-05 | Medium | HKDF info parameter lacks device binding | Open (resolves with SEC-02) |
| SEC-06 | Medium | Post-quantum not yet active | Deferred (verified feasible) |
See Known Vulnerabilities for the complete analysis including all published ESP32 CVEs and attack research.