Settings
Sovereign Suite · free for personal use

CIPHER

You need to send one paragraph to one person, through a channel you do not control. CIPHER turns it into a block of text that is useless to anyone else, and back again at the other end. No account, no software to install, and nothing about the message ever leaves your browser.

1. Make a key pair

Do this on the machine that will receive messages. Give the public key to whoever is writing to you. Keep the private key: it is the only thing that can read what comes back, and it is not stored anywhere.

2. Encrypt to someone's public key

3. Decrypt with your private key

CIPHER uses the encryption built into your browser: AES-256-GCM, with PBKDF2 (310,000 rounds of SHA-256) for passphrases and ECDH on P-256 for key mode. What it protects is the content of the message. It does not hide that you sent something, who you sent it to, or how long it was, and it cannot help if the device at either end is already compromised. In passphrase mode the passphrase is the whole of the security: anyone who copies the message can guess at it offline for as long as they like, so use several unrelated words, and send the passphrase by some other route than the message itself. In key mode, a lost private key means the messages sent to it can never be read again, by you or anyone. Nothing is stored here.

Questions people ask

How can I send a message securely when neither of us wants to install anything?

Encrypt the text into a block of characters and send that block through whatever channel you already use. The recipient pastes it into the same page and gets the message back. What has to travel by a different route is the passphrase, or in key mode only the public key, which is safe to send in the open.

What does encryption in a browser actually protect?

The contents of the message, in transit and wherever it comes to rest. It does not hide that you sent something, who you sent it to, when, or how long it was, and it cannot help if the device at either end is already compromised. Encryption protects the message, not the fact of the message.

Should I use a passphrase or a key pair?

A passphrase is simpler and is right for a one-off to someone you can reach by another route. Its weakness is that anyone who copies the encrypted block can guess at the passphrase offline for as long as they like, so it needs to be several unrelated words. A key pair removes the shared secret: the recipient publishes a public key, you encrypt to it, and only their private key opens the result.

Related tools