radex.ma

Built so we can't read your messages

Privacy at Radex is not a setting. It's how the system is built.

Built on the Signal protocol

Radex messages use libsignal, the same open-source library that protects Signal: PQXDH to start each conversation (X25519 plus Kyber-1024, so recorded traffic stays safe even against future quantum computers), then the Double Ratchet, which gives every message its own key.

Your keys never leave your phone

Your phone generates its own identity key and pre-keys when you create your account. Only public keys are uploaded, so others can start a conversation with you. Each one-time pre-key is used for a single conversation, then deleted.

Forward secrecy

Message keys are thrown away after use. Even if a phone were compromised later, earlier messages could not be decrypted from it.

Encrypted calls

Voice and video calls are encrypted end to end twice: WebRTC's DTLS-SRTP, set up through your encrypted chat, and a second AES-GCM layer on every audio and video frame with a fresh key per call. Relay servers only ever forward ciphertext.

A relay that only sees ciphertext

Radex's servers hold encrypted envelopes until your phone picks them up, then delete them. They never have the keys to open them. Messages are padded so their length reveals less.

Verify who you talk to

Each conversation has a safety number (60 digits). If it's the same on both phones, no one is in the middle. If someone's key changes, the chat tells you.

Encrypted on your phone too

Messages, sessions and keys stored on your phone are encrypted with a key held in the Android Keystore.

Open source

libsignal is published under the AGPL-3.0 license. Radex is built on it and its source code will be published under the same license, so anyone can check these claims.

Coming next

Hiding who talks to whom from our own servers (sealed sender), and using one account on several devices.