Veli Chat
E2EE · serverless · ephemeral · Tor v3 · RAM-only · padded
Two-party terminal chat that leaves nothing on disk. Every session generates an ephemeral X3DH bundle and a Tor v3 onion, exchanges one invite code out-of-band, completes a Double Ratchet handshake, then speaks XChaCha20-Poly1305 over 6-bucket padded frames. State lives in RAM and is wiped on /quit.
npx veilchat
npm i -g veilchat && veil
checking npm…
checking GitHub…
Threat model
Protects: confidentiality, forward secrecy, post-compromise, metadata minimization (no accounts, no logs, padded).
/whois (4×4 grid, BLAKE2b).Install & use
Flow: gen X3DH bundle + onion → share one invite code OOB → dial .onion via Tor → X3DH → Double Ratchet → chat → /quit wipes RAM. Verify with /whois 4×4 safety numbers aloud — if they match, no MITM.
Why it matters for internships
Shows you can reason about protocol composition (X3DH → Double Ratchet → padded transport), ship to npm with bins, and document a realistic threat model — not just demo crypto. The Ghost Track write-up proves you can break; Veli proves you can build with the same primitiv.