Create Encrypted Secret

Encrypted in your browser to your recipient's ML‑KEM‑768 public key, with a passphrase as second factor. We never see it.

Quantum ML-KEM-768
Encrypted in your browser before sending0/3000

The second factor: opening the secret takes the recipient's private key AND this passphrase. Send it through a different channel than the token.

How an encrypted secret is created

  1. Choose the recipient

    Pick a contact from your vault, or yourself. The secret is sealed to their ML-KEM-768 public key: only the private key in their vault can open it.

  2. Write the secret and a passphrase

    Up to 3,000 characters, with a passphrase of at least 6. The passphrase is a second key: opening the secret takes both the passphrase and the recipient's private key.

  3. Decide how long it lasts

    Choose when it expires (from 5 minutes to 1 hour) and how many times it can be opened (1, 3, 5 or 10). If your vault has an ML-DSA-65 key, the secret can be signed.

  4. Send the token and the passphrase separately

    Your browser encrypts the secret with ChaCha20-Poly1305 before sending it and gives you a token. Send it through one channel and the passphrase through another.

One-time secret FAQ

Can you read the secrets I create?
No. The secret is encrypted in your browser before it leaves, with your recipient's public key and your passphrase. Only the ciphertext reaches the server: without the recipient's private key and the passphrase nobody can decrypt it, including us.
Why do I have to add the recipient as a contact first?
Because the secret is encrypted to their ML-KEM-768 public key. Keep their public keys in your vault and compare fingerprints with them over another channel: that way you encrypt for them, not for someone pretending to be them.
What happens when it expires or runs out of views?
The secret can no longer be opened and the server deletes it. If the recipient is too late, create a new one.
Why send the token and the passphrase through different channels?
Anyone who intercepts one channel only gets one of the two pieces. Even with both, they would still lack the recipient's private key, which never leaves their vault.
What does post-quantum encryption mean?
Keys are agreed with ML-KEM-768 and signed with ML-DSA-65, the algorithms NIST standardised in FIPS 203 and FIPS 204 to withstand quantum computers. A secret intercepted today stays protected even if machines able to break RSA or elliptic curves exist tomorrow.