▶ Breaking
Meta is ending end-to-end encryption on Instagram DMs — May 8 2026. Here's what to use instead → // Discord leaked 70,000 government IDs. Why we built this → // OpenDescent v0.5.4 released — hubs, live streaming, signed file sharing. Download → // Normal life deserves privacy. // Meta is ending end-to-end encryption on Instagram DMs — May 8 2026. Here's what to use instead → // Discord leaked 70,000 government IDs. Why we built this → // OpenDescent v0.5.4 released — hubs, live streaming, signed file sharing. Download → // Normal life deserves privacy. //
Features  /  The full set v0.5.4 · 2026-04-24

Everything a modern chat app does. Nothing that spies on you.

Text, voice, video, files, communities, live streaming, anonymous drops, identity recovery — every feature you'd expect from a polished messenger, end-to-end encrypted by default and peer-to-peer underneath. This is everything OpenDescent does today.

On this page 01Messages, calls, files 02Communities & hubs 03Anonymous features 04Identity & recovery 05Under the hood
Short version

Messages, calls, files — encrypted before anything leaves your device.

§ 01  /  Private conversations
01.01  ·  Messaging

1-on-1 messages and group chats that you own.

Every message runs through a fresh X25519 key agreement and an AES-256-GCM encryption before it leaves your device. Group chats use a shared symmetric key with automatic rotation when members leave — so past messages stay private even if someone exits the group.

Messages persist locally, encrypted at rest, with a store-and-forward relay path if your recipient is offline — their next peer to see the message will hold it until they come back online. No plaintext ever touches a server.

AES-256-GCM X25519 DH Forward secrecy Key rotation Store-and-forward
DM  ·  sam
samlanded safe ✈
miss you already
samcall you once I'm at the hotel
🎙 voice note · 0:12
01.02  ·  Calls

Voice and video calls without an intermediary.

WebRTC with DTLS-SRTP encryption. Your device connects directly to theirs when possible — TURN relay fallback only when NAT won't allow a direct path. When a TURN relay is used, it only sees encrypted packets passing through; it never has the keys.

Signalling (the handshake that sets up the call) travels over the same libp2p network as your messages, so nobody needs to know your phone number to call you. Usernames are enough.

WebRTC DTLS-SRTP STUN / TURN Direct peer
Call  ·  active
📞
Mei
Encrypted · 00:42
🎙
📹
01.03  ·  Files

Files that are signed, sharded, and verified.

Every file you send produces a signed manifest — a canonical description of the file's chunks, hashes, and total SHA-256 signed by your Ed25519 key. The recipient verifies the signature before assembling the file, so tampering by anyone in transit is caught.

Large files are split into chunks with XOR-parity sharding, so a missing or corrupt chunk can be reconstructed from the others. Chunks flow through the mesh without assembling anywhere in the middle — only on your device and the recipient's.

Ed25519 signatures SHA-256 integrity XOR parity Chunked transfer
Transfer  ·  lecture-notes.pdf
📎 lecture-notes.pdf · 2.3 MB
SHA-256: 4f8b:9c2e:7a10:b3df:12ac:...
Sig: Ed25519 verified ✓
Shards: 12 / 12 delivered

Communities — the shape of a Discord server, without the server.

§ 02  /  Hubs, channels, streaming
02.01  ·  Hubs

Community hubs with channels, roles, and invites.

A hub is a peer-replicated community space. It has categories, text channels, voice channels, roles and permissions, invite links, and every feature you'd expect from a Discord server — but the hub exists across members' devices rather than on a central server.

Moderation (kicks, bans, mutes) is enforced through signed role changes distributed through the hub. There's no hub owner who can be subpoenaed, and no company that can shut a hub down from outside.

Peer-replicated Text / voice channels Roles Invite links
study-group
Text
#general
#assignments
#memes
Voice
🔊study
🔊afk
# general
🔒 E2E
samfinals week, brace
sending notes now 📎
meity ❤
02.02  ·  Live streaming

P2P live streaming that scales with viewers, not servers.

Go live inside a hub and your stream is distributed mesh-pull style — each viewer pulls chunks from a few peers and redistributes to others, the way BitTorrent works for static files, applied to live video. The more people watching, the stronger the distribution gets.

No central streaming server. No rights for a middleman to pull the stream. Viewers join via the hub; the stream is end-to-end encrypted and ends when you do.

WebRTC DataChannels Mesh-pull Scales with viewers
▶ streaming
▸ 42 peers
NODE 01
NODE 02
NODE 03
NODE 04
NODE 05
NODE 06
NODE 07
NODE 08
NODE 09
NODE 10

Anonymous features — for the conversations that shouldn't have a name attached.

§ 03  /  Dead drops, DMS, trust
03.01  ·  Dead Drops

Onion-routed posts with no identity attached.

A Dead Drop is a post that travels through several layered-encrypted hops before landing in a public space. Each hop only sees the next hop — none of them know both sender and destination. Proof-of-work spam prevention stops floods. A daily rotating network key means yesterday's drops can't be correlated with today's.

No account is attached. No metadata is collected. For journalists and sources, whistleblowers, or anyone whose message needs to exist without an author.

Onion routing Proof-of-work Daily key rotation No identity
Dead Drop  ·  compose
Author— anonymous
Routeonion · 5 hops
PoWsolving · 1.2s
Day keyd4:2026-04-24
Payload[encrypted · 412 bytes]
Status▶ ready to drop
03.02  ·  Dead Man's Switch

Messages that send only if you don't check in.

Set up a Dead Man's Switch with a custom timer (1 hour to 30 days) and a list of messages to send to specific people if you don't check in before time runs out. Check in and the clock resets. Miss a check-in and the messages go.

Useful for travel situations, journalists protecting sources, activists preparing for detention, or anyone preparing for the worst. The switch runs on peer-to-peer infrastructure — no company to compel or disable.

Custom timer · 1h → 30d Multiple recipients Peer-enforced
Dead Man's Switch  ·  armed
"Travel · week of 2026-05-01"
★ ARMED
03 : 12 : 44
Until next check-in
Will send to mum · sam · jaz  (3 recipients)
03.03  ·  Trust web

A web of vouching to spot impersonators.

Because there's no central registry, anyone can pick any username. The trust web lets your contacts vouch for each other's keys — so when you see a new handle, you can see which of your existing contacts have confirmed that key belongs to who it claims to be.

Combined with Trust-On-First-Use (TOFU) key pinning, this gives you a human-scale alternative to certificate authorities — social-graph verification instead of a single company saying who's real.

TOFU pinning Vouching No CA
Trust  ·  @mei
Handle@mei
KeyEd25519 · 4f8b:9c2e:7a10:b3df
Pinned2026-01-03 · 112 days
Vouched bysam · jaz · marcus · 5 more
Key changes0 · unchanged since pinning
Status▶ Trusted ✓

Your identity, actually yours.

§ 04  /  Keys, recovery, zero PII
04.01  ·  Cryptographic identity

A keypair on your device is your account.

The first time you open OpenDescent, it generates an Ed25519 keypair locally. That keypair is your identity. There's no registration server, no database row with your name on it, no email confirmation. You're a public key on a network.

You pick a human-readable username. If someone's already using it, you'll pick a different one. Usernames are local-to-your-invite-graph, not globally registered — so two different groups could have someone called @sam without collision.

Ed25519 Local keygen No registration server
Identity  ·  @you
Handle@you
Public keyEd25519 · d4:f2:9a:...
Created2026-04-24 · local only
Phone— not collected
Email— not collected
ID— not collected
04.02  ·  12-word recovery

Lose the phone, keep the account.

The first time you create your identity, the app shows you a 12-word BIP39 mnemonic. Write it down, save it in your password manager — that 12-word phrase is the deterministic seed for your Ed25519 key. Anywhere you enter the same 12 words, you get the same identity back.

This is the only path to recovery. There is no "forgot password" link, because there's no central account to reset. Lose the phrase without a backup and the account is gone — which is the same trade-off as the point of end-to-end encryption in the first place.

BIP39 mnemonic Deterministic Cross-device
Recovery phrase
01forest
02echo
03river
04quiet
05orbit
06flame
07north
08spire
09amber
10glass
11drift
12bloom

Under the hood — the network that makes it all peer-to-peer.

§ 05  /  libp2p mesh, DCUtR, relay
05.01  ·  libp2p mesh

A mesh network where the network is the users.

OpenDescent is built on libp2p — the same peer-to-peer stack that powers IPFS, Filecoin, and parts of Ethereum. Every device that runs OpenDescent is a full node in the mesh. There's no "OpenDescent server" class of machine; there are just peers.

Peer discovery uses mDNS on local networks and KadDHT across the wider internet. You find the people you want to talk to via their public key; the mesh routes messages between you.

libp2p KadDHT mDNS Noise Yamux
Mesh  ·  42 peers connected
YOU
05.02  ·  NAT traversal

Holes through firewalls, not around your privacy.

Most home networks are behind NAT, which makes direct peer-to-peer connections surprisingly hard. OpenDescent uses DCUtR (Direct Connection Upgrade through Relay) for hole-punching, attempting a direct connection through a temporary relay-assisted handshake.

When hole-punching fails, traffic falls back to Circuit Relay v2 — a relay node forwards your encrypted packets but never has the keys. The relay sees ciphertext, nothing more.

DCUtR Circuit Relay v2 STUN / TURN
Connection  ·  establishing
Path 01direct · mDNS · local
Path 02DCUtR · hole-punched ✓
Path 03relay · fallback
SelectedPath 02 · direct peer
Latency42ms
EncryptedNoise · Yamux
05.03  ·  Offline delivery

Messages wait. Until the recipient's online.

If your recipient is offline when you send a message, store-and-forward holds the encrypted message at another peer in their trust graph until they come back. The holding peer sees ciphertext only — it can't read what it's holding, only that there's a message for a given key.

Combined with DHT-based peer discovery, this means you can send messages without knowing whether the recipient is online right now. The mesh figures it out.

Store-and-forward DHT routing Encrypted at rest
Delivery  ·  queued
Recipient@sam · offline
Messages2 queued · encrypted
Holding peer@jaz · trusted relay
Peer visibilityciphertext only
Retrynext peer sighting
Status▶ Awaiting

Feature questions, straight answers.

§ 06  /  FAQ
Which features are in v0.5.4 today?01
Everything on this page is shipped in v0.5.4: 1-on-1 & group messaging, voice & video calls, file sharing with signed manifests, community hubs with text and voice channels, P2P live streaming, Dead Drops, Dead Man's Switch, trust web, identity + mnemonic recovery, and the full libp2p mesh including DCUtR and circuit relay.
What's on the roadmap but not in v0.5.4?02
Disappearing messages, stickers, macOS and Linux native builds, a mobile PWA, and bots/integrations for hubs. These are the main gaps vs Signal/Discord today.
Is group chat really end-to-end encrypted?03
Yes. Group chats use a shared AES-256 key distributed to members via their individual E2E encrypted channels. When a member leaves, a new shared key is generated and distributed to the remaining members — so the ex-member's key can't decrypt future messages (and forward secrecy keeps past ones safe).
How does Dead Man's Switch work without a central server?04
When you arm a switch, the messages are encrypted to the recipients' keys and distributed to peers with trigger times. Your check-in signal cancels the trigger. If you miss the check-in window, the peers with the trigger release the encrypted messages. No single peer has enough information to fire falsely, and there's no central authority to compel or disable.
Can messages be recovered if I lose my device?05
Your 12-word mnemonic recovers your identity on a new device. Messages themselves live on your devices, encrypted at rest — if the device is gone and you didn't back up the local data, the messages are gone (nobody else has a copy, including us). This is the trade-off of true end-to-end encryption.
Does OpenDescent work offline?06
Partially. On the same local network, two OpenDescent devices can talk over mDNS with no internet needed. Across the wider internet, you need connectivity to reach peers. There's no "completely offline mode" today, but on-mesh communication without internet access is something we'd like to add.
Now try it

Download OpenDescent and see every feature on your own machine.

Free, open source, no account required. The full feature set is in v0.5.4 for Windows.