Move WebSocket to Phase 2, add Ethereum identity + ENS to roadmap
Phase 1 complete (WASM interop was the last item). Phase 2 additions: - WebSocket real-time push - Ethereum-compatible dual-curve identity (secp256k1 + X25519) - MetaMask/Rabby wallet connect - ENS domain resolution (@vitalik.eth → Warzone identity) - Hardware wallet via existing secp256k1 support - Session key delegation (sign once per 30 days) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
11
DESIGN.md
11
DESIGN.md
@@ -424,15 +424,24 @@ warzone.wasm # browser client (via wasm-pack)
|
||||
- [x] OTP key replenishment
|
||||
- [x] Fetch-and-delete delivery
|
||||
- [x] 17 protocol tests
|
||||
- [ ] **WebSocket real-time push** (replace HTTP polling with instant delivery)
|
||||
- [x] WASM bridge for web↔CLI interop (same crypto on both clients)
|
||||
|
||||
### Phase 2 — Core Messaging
|
||||
- [ ] WebSocket real-time push (replace HTTP polling with instant delivery)
|
||||
- [ ] Delivery receipts (sent, delivered, read)
|
||||
- [ ] File transfer (chunked, encrypted)
|
||||
- [ ] Multi-device support (device list signed by identity key)
|
||||
- [ ] Sender Keys for group encryption (replace per-member fan-out)
|
||||
- [ ] Group management (kick, leave, key rotation)
|
||||
- [ ] Message ordering and deduplication
|
||||
- [ ] Ethereum-compatible identity (dual-curve: secp256k1 + X25519 from same BIP39 seed)
|
||||
- Fingerprint = Ethereum address (Keccak-256 of secp256k1 pubkey)
|
||||
- BIP44 paths: m/44'/60'/0'/0/0 (Ethereum), m/44'/1234'/0' (Warzone X25519)
|
||||
- MetaMask/Rabby wallet connect (sign challenge → derive session)
|
||||
- Hardware wallet support via existing secp256k1 (Ledger/Trezor)
|
||||
- ENS domain resolution (@vitalik.eth → 0xd8dA... → Warzone identity)
|
||||
- Crates: k256, tiny-keccak, ethers-rs/alloy for ENS resolution
|
||||
- Session key delegation from hardware wallet (sign once per 30 days)
|
||||
- [ ] TUI client (ratatui)
|
||||
- [ ] Web client (WASM)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user