End-to-end encrypted real-time chat with an integrated Security Operations Center (SOC) dashboard. Cryptography runs in the browser; the server relays ciphertext only and runs a live threat engine.
- E2E: AES-256-GCM, RSA-OAEP key wrap, ECDSA signatures, per-message nonces
- SOC: Session map, threat feed, analytics, packet log, attack lab
- Live demos: Attacks from chat (real wire + threat engine) and from admin SOC
- Auth: JWT, refresh tokens, MFA (email OTP when SMTP configured)
Prerequisites: Node 18+, MongoDB, Redis
# Backend
cd backend
npm install
cp .env.example .env
npm run dev
# Frontend (new terminal)
cd frontend
npm install
npm run dev- App:
http://localhost:5173(Vite default) - API:
http://localhost:5000 - Admin:
admin@securechat.local/Admin@1234— OTP in backend console for.localemails
| Doc | Contents |
|---|---|
| DEMO.md | Step-by-step viva script |
| PROJECT_STRUCTURE.md | Folder layout & APIs |
| CHANGELOG.md | What was added recently |
| ARCHITECTURE.md | System design |
| THREAT_MODEL.md | Attack mitigations |
cd backend
npm run eval:allCSV results: evaluation/results/
Set EMAIL_USER / EMAIL_PASS (or SMTP vars) in backend/.env, or run:
cd backend
npm run mfa:enable