Skip to content
Quetz
Open Quetz

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#

PartyCan seeCannot see
The XMTP networkThat an encrypted payload moved between two inboxes, and whenMessage content
Quetz, this siteNothing. It holds no keys and stores no messages.Message content, your conversation list
Anyone on chainThat your address exists, and its balances and transactionsMessage content, who you talk to
Your conversation partnerEverything you send them, and your addressYour other conversations

Metadata is not content, and it is not hidden

Encryption protects what you say. It does not hide that two inboxes exchanged messages, or when. If who you talk to is itself sensitive, that is not something end-to-end encryption solves, here or anywhere else.

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.