A messenger whose server has nothing worth taking.

Z has no accounts, no phone numbers and no server-side storage. Here is everything our relay holds while a message of yours is in flight — the whole record, not a summary of it.

{ "t": "msg", "id": "01JB7QM4XK2VZP", "payload": "zs1.kR9mQx…", "ts": 1757538142 }
no "from" field

An identifier, a padded blob it cannot read, a timestamp — held in memory, deleted on delivery. There is no sender field because the relay never learns who sent it, and no account to attach it to.

Get Z See how it works

On Google Play, and as a direct download for Android, Windows, macOS and Linux. Every release ships SHA-256 checksums so you can verify what you downloaded.

What makes Z different

The server knows nothing

The relay holds ciphertext addressed to opaque mailbox IDs, in RAM, until delivery. It never learns who sent a message, never writes to disk, and keeps no account list — because none exists. A full copy of the server reveals no messages and no names.

Verifiable, not just promised

The protocol is published in full, pinned by test vectors that three independent implementations reproduce on every change. You can check the claims rather than take them.

Ready for quantum

Key agreement is hybrid: classical X25519 combined with ML-KEM-768, so traffic captured today cannot be unlocked by a future quantum computer. Identities are moving to hybrid signatures the same way.

Your devices, one identity

Link a laptop to your phone by comparing a short code. Both send and receive, history syncs end-to-end encrypted, and a lost device can be revoked — your contacts stop trusting it the moment they hear.

What we don't collect

Run it yourself

This page is served by the Z relay itself. Personal self-hosting is expressly permitted: docker compose up in the repository's server/ directory, then point the app at your own address. How to self-host.