BreezeRo/encrypted-discord

★ 0Forks 0TypeScriptGitHub ↗Compare

README

Encrypted-Discord

Encrypted-Discord is a dual-browser WebExtension (Chrome + Firefox) foundation for end-to-end encrypted overlays on Discord.

This project now includes a working cryptographic envelope implementation and extension scaffolding designed for high-security iteration.

What Exists Today

  • TypeScript WebExtension project targeting Chrome and Firefox from a single codebase.
  • MV3 background service worker, Discord content script, and extension options page.
  • Local identity creation (signing + key agreement keypairs).
  • Trusted peer public-key store.
  • Group message envelope encryption for 1..N recipients.
  • Per-recipient key wrapping using ephemeral ECDH + HKDF + AES-GCM.
  • Unit tests for crypto round-trip behavior.

Important Security Reality

This is a strong foundation, not a finished audited secure messenger.

  • No MLS/Signal-style ratchet yet.
  • No key transparency or safety-number UX yet.
  • No formal cryptographic audit has been performed.

See docs/SECURITY-ARCHITECTURE.md for details.

Quick Start

  1. Install dependencies:

    npm install
  2. Build extension bundles:

    npm run build
  3. Load extension:

  4. Open extension options page:

    • Generate identity for your local Discord user id.
    • Add trusted peer public keys and fingerprints.

Development Commands

  • npm run typecheck
  • npm run lint
  • npm run test
  • npm run build:chrome
  • npm run build:firefox
  • npm run dev:chrome
  • npm run dev:firefox

Repository Layout

  • src/background: background service worker and runtime message handlers.
  • src/content: Discord overlay content script.
  • src/options: options UI and identity/peer management.
  • src/shared: cryptographic protocol and shared types/storage.
  • src/manifests: browser-specific manifests.
  • tests: unit tests.
  • docs: architecture and project documentation.

Project Goal

Build toward a secure E2EE group messaging extension where users can establish and run encrypted Discord-side conversations for groups of any size with strong key verification, compromise resistance, and auditability.

Contributors

CopilotBreezeRo

Issues