Open source · Serverless · E2EE

Serverless. Untracked. Yours.

Stade is a messaging app that requires no central server. Every message is delivered directly between devices — no server, no logs, no surveillance.

Device A
ed25519:a1f3…
LAN Tor Bluetooth
ChaCha20-Poly1305 · Double Ratchet
Device B
ed25519:c92d…
0
Central Servers
3
Transport Layers
256-bit
Encryption Strength
GPL-3
Free License
Features

Designed for privacy,
proven for security

Modern cryptography and decentralized architecture working together. Every layer is carefully considered so your messages stay between you and your recipient alone.

End-to-End Encryption

Messages are decrypted only on the recipient’s device. No intermediary, no provider, can ever see the content.

Forward Secrecy

Double Ratchet derives an independent session key per message. A compromised key never exposes past conversations.

Multi-Transport

LAN, Tor and Bluetooth — three paths, one app. The best available channel is selected automatically based on network conditions.

QR Identity Verification

Key exchange is confirmed face-to-face via QR code. The strongest trust model against man-in-the-middle attacks.

Serverless Architecture

No account creation, no phone number, no metadata. Your data lives only on your device — nowhere else.

Fully Open Source

Every line of code is open for inspection on GitHub. Security is a verifiable proof, not a claim.

Transport Layers

Connected in any condition,
always encrypted

Stade manages three distinct connection channels automatically. Even if the internet goes down, your message gets through.

LAN

Local Network

Direct peer-to-peer connection with devices on the same WiFi or local network. Fast, low latency, no internet required.

mDNSTCP/IPLocal discovery

Tor

Anonymous Network

Routing through the Tor network hides your IP address. No geographic location or identity is ever exposed.

3-hopHidden servicev3 onion

Bluetooth

Offline

Encrypted communication with nearby devices without any internet connection. Works even in network-free environments.

BLEMeshInternet-free
How It Works

Secure communication
in four steps

No registration, no phone number, no account. Just you and the other device.

1

Create Identity

An Ed25519 key pair is generated locally on your device. Never sent to any server.

2

Pair via ID

Use the other party'’s ID. A shared secret is derived using X25519 key exchange.

3

Message

The best transport is selected automatically. Each message is encrypted with a unique session key.

4

Verify

Compare the contact’s key fingerprint to confirm their identity. Definitive assurance against impersonation.

Security Principles

Security guarantees
built into the design

In Stade, privacy is not a feature — it is the architecture itself. These guarantees arise directly from how the software operates.

Zero metadata

Message timestamps, recipient lists and communication frequency are never stored on any node.

Local data sovereignty

All messages and keys are stored only on your device. The app can be locked with a passphrase.

Future secrecy

Future keys cannot be pre-computed. Every session is entirely independent from past ones.

Auditable codebase

No hidden backdoors. Anyone can inspect the code and independently verify every security claim.

Identity independence

No phone number, email or third-party service required. Identity is purely a cryptographic key.

Censorship resistance

Tor support and the absence of a central blocking point make Stade resistant to censorship and takedowns.

Technical Stack

Proven algorithms,
modern interface

Stade uses cryptographic primitives that have become industry standards. It doesn’t reinvent the wheel — it relies on proven foundations.

Cryptography
Key exchangeX25519 (ECDH)
Identity signatureEd25519
Hash & KDFBLAKE2b
Symmetric encryptionChaCha20-Poly1305
Session protocolDouble Ratchet
Local lock KDFArgon2id
Platform
Kotlin Multiplatform
Shared core logic
Android
Background service, notifications
Desktop
JVM · Compose Multiplatform
LAN / mDNS Tor v3 Bluetooth LE GPL-3.0

Your messages belong to you alone.

Download Stade, audit the source code, or contribute to the project.