Note: The Listed platform will permanently shut down December 31, 2026. Your data published on Listed will still be available in your personal Standard Notes account. Learn more

PQ SECURE MESSENGER

PQ | Secure | Messenger

A zero-knowledge, post-quantum encrypted messaging platform. Messages are encrypted and decrypted entirely in your browser using ML-KEM-768 (NIST-standardized post-quantum key encapsulation), HKDF-SHA256, and AES-256-GCM. The server never sees your keys or plaintext.

Features

Encryption & Sharing

  • Text messages — Write a secret message, get a share link. The secret key is embedded in the URL. No pre-shared keys needed, no accounts required.
  • File uploads — Encrypt files up to 10 MB. Files are password-protected with PBKDF2 (100k iterations) + AES-256-GCM.
  • Combined text + file — Send a message alongside a file in a single encrypted payload.
  • Password protection — Optionally protect text messages with a password (requires 8+ chars, letters, numbers, and 2+ special chars).
  • View limits — Set a max view count (1–100). Messages self-destruct after the limit is reached.
  • Auto-expiry — All messages are automatically deleted after 7 days.
  • Short links — Create short, shareable URLs (e.g., s.php?c=abc123).

Replies

  • Messages without a view limit can have replies enabled.
  • Recipients can reply using the sender's public key — all replies are end-to-end encrypted.
  • Reply keys are embedded in the share URL (rk parameter).

Persistent Key Pairs

  • Optionally generate a persistent ML-KEM-768 key pair.
  • Share your public key so others can encrypt messages to you without a one-time keypair.
  • Secret key is never stored on the server save it offline.

Dashboard (Registered Users)

  • Account required — One-time payment of 5 CHF via Stripe.
  • Message tracking — View all your messages, their status, view counts, reply counts, and timestamps.
  • Link management — Copy the full share link (including the secret key) directly from the dashboard. Short links are displayed when available.
  • Pause/Unpause — Temporarily disable access to a message without deleting it.
  • Delete — Remove messages permanently (API-level authentication enforced).

Two-Factor Authentication (2FA)

  • TOTP-based — Compatible with any authenticator app, Proton PASS recomended.
  • Recovery codes — 8 one-time recovery codes generated during setup.

Decryption Experience

  • Auto-fill from URL — When opening a share link (view.php?id=...&k=...), the key is auto-filled and data is pre-fetched.
  • Missing key fallback — If the URL has no key (?id=... without &k=), a prompt asks you to paste the key manually.
  • View indicator — Shows remaining views (e.g., "2 of 5 views remaining").
  • Self-destruct notice — Alerts when the message has hit its view limit.
  • Reply preview — If you have the reply key (rk), replies are decrypted and shown before you open the main message.
  • Copy, Refresh, and Back buttons — Copy decrypted text, refresh the message, or navigate home.
  • File download — Decrypted files trigger a direct download.

Cryptographic Chain

ML-KEM-768  →  HKDF-SHA256  →  AES-256-GCM
  1. ML-KEM-768 — Post-quantum key encapsulation. Generates a shared secret that only the intended recipient can recover.
  2. HKDF-SHA256 — Derives a strong symmetric key from the shared secret with domain separation.
  3. AES-256-GCM — Authenticated encryption of the actual message data.

Zero-Knowledge Architecture

  • Key generation, encryption, and decryption all happen in your browser.
  • Cryptographic operations use the Web Crypto API and WebAssembly (liboqs).
  • The server stores only ciphertext data computationally indistinguishable from random noise.
  • No third-party scripts, no CDN, no tracking.

Technical Stack

Layer Technology
Frontend Vanilla JS, Web Crypto API, WebAssembly (liboqs)
Backend PHP (ciphertext storage only no server-side crypto)
2FA TOTP (RFC 6238), SHA1, 30s period, 3-step window

You'll only receive email when they publish something new.

More from Carlostkd ✅
All posts