Skip to main content

Ledger Chat

How messages travel

The path a message takes from your device to someone else's, and what each part of the path can see.

A message can reach the other person by one of two paths. The normal path goes through the XMTP network. The fallback path goes through Humanity Ledger's own server and is only used when the normal path fails.

Normal path

Your device
  • Encrypts the message
Encrypted
XMTP network
  • Stores it until collected
Encrypted
Their device
  • Decrypts it with its own keys

Fallback path, only if the normal path fails

Your device
  • Sends the text as written
Readable
Our server
  • Can read it
  • Labels it in the chat
Readable
Their device
  • Shows the label
The normal path keeps the message encrypted from your device to theirs. The fallback path does not.

The normal path

  1. Your device encrypts the message

    Using the MLS keys for the conversation. Nothing readable leaves your browser.

  2. XMTP nodes store and forward it

    Your browser sends the encrypted message to the XMTP network directly. Our server is not involved.

  3. Their device decrypts it

    When the recipient opens Ledger Chat, their device downloads the message and decrypts it with its own keys.

The fallback path

If the normal path fails, the app sends the message to our server, which keeps it until the recipient's device collects it. While it waits, a copy is held in our cache for up to seven days and another in our database. These copies are readable by us.

A message that took the fallback path is labelled Not end to end encrypted in the conversation, on both sides. See Messaging for what we are doing to remove this path.

What an observer on your network sees

All traffic between your browser, our server and XMTP is encrypted with TLS. Someone watching your network, such as a public Wi-Fi operator, can see that you are connecting to Ledger Chat and to XMTP, and roughly how much data you send. They cannot see the content or who you are writing to.