Reference
Security model
Encryption claims are easy to make and hard to read. This page says plainly what is protected, what is not, and who can see what.
How messages are encrypted#
Quetz uses XMTP, which encrypts conversations with MLS, the IETF standard for group messaging. Content is encrypted on your device and decrypted on the recipient’s. Keys are generated in your browser and never leave it.
MLS gives forward secrecy, so a key compromised today does not open yesterday’s messages, and post-compromise security, so the group heals once the compromised device is removed.
Who can see what#
| Party | Can see | Cannot see |
|---|---|---|
| The XMTP network | That an encrypted payload moved between two inboxes, and when | Message content |
| Quetz, this site | Nothing. It holds no keys and stores no messages. | Message content, your conversation list |
| Anyone on chain | That your address exists, and its balances and transactions | Message content, who you talk to |
| Your conversation partner | Everything you send them, and your address | Your other conversations |
Metadata is not content, and it is not hidden
Your address is your identity#
Quetz is private, not anonymous. Your inbox is your wallet address, so anything already tied to that address, an ENS name, a public donation, an exchange withdrawal, is tied to your messages too. Use a fresh address if you need separation.
The local database#
- History is kept in an encrypted database inside your browser, keyed per address.
- Its key is stored in the browser too, so history survives a reload. That also means anyone with access to your unlocked browser profile can read your messages.
- Clearing site data removes the local copy and the key. Sign in again and it re-syncs from the network.
- On a shared or public machine, disconnect and clear site data when you are done.
What signing does and does not authorise#
Signing in is a plain message signature. It proves you control the address and registers an XMTP inbox. It is not a transaction, it moves no funds, and it grants no spending allowance. Quetz never asks for one.
Where $QUETZ gating fits#
It does not make a room more encrypted. Gating decides who is admitted; encryption decides who can read. A gated room is members-only, not secret. Rooms and $QUETZ sets out the limits in detail.
Honest limits#
- A member of a conversation can screenshot or forward anything you send them. No protocol prevents that.
- A compromised device compromises the messages on it, because that is where decryption happens.
- Quetz has not been independently audited. XMTP and MLS are open standards with public implementations; this client is a small layer on top, but it is not a reviewed one.