# What Knit encrypts, and what stays visible

> Direct and group chats are end-to-end encrypted: only the people in the conversation can read them, even though other people's phones carry them. The Nearby room is open by design, and a few routing details stay visible so phones know where to take each message.

Docs · Privacy. Checked against Knit 2.9.0.

On Knit, your messages travel through phones that belong to strangers. That's what makes the mesh work, and it's why direct and group messages are sealed on your phone before they leave it, with keys that only the people in the conversation hold.

## What's sealed

|  | Direct messages | Group chats | Nearby room |
| --- | --- | --- | --- |
| Text, photos, voice notes | Sealed | Sealed | Open |
| Reactions and ticks | Sealed | Sealed | Open |
| Forward secrecy | If both apps are current | If every app is current | None |

Open means anyone in range can read it. Sealed means locked with keys that only the people in the conversation have. A phone that carries a direct or group message holds a copy it can't open, and so does an Internet relay, which is opt-in.

In direct and group chats, the seal also covers what kind of attachment a message has, so a carrying phone can't tell a photo from a voice note. A reaction or a delivery tick looks like any other sealed message, so nobody passing it along can tell who reacted to what, or when your message arrived.

The Nearby room is plaintext by design. It's for talking to everyone around you, with no fixed list of people to seal it for, so treat it like speaking out loud in a crowd.

## What stays visible, and why

A message has to say where it's going, or no phone could deliver it. So the outside of each message, its envelope, stays readable while what's inside stays sealed:

- Which Knit identity sent it, who it's for, when it was sent and how big it is.
- For a group: its member list, and its name and photo if the group has them. Every group message carries these, so a member who missed a change still gets the current version.
- Your profile: the name, status and profile picture you choose go out openly to the phones around you, so people can recognise you before they've added you. Updates also reach your contacts sealed, but the open version still goes out.
- Whether two messages carry the same file. A carrying phone can't see the file, but it can tell when two messages point at the same one.

Someone watching the radios can also see that your phone sent something, and when, without being able to read it. Encryption protects what you say, not the fact that you're talking.

> **Your identity is a key, not a number** Knit creates your identity on your phone: a random key, with no phone number, email address or account behind it. Other people see the name you choose, and anyone can choose any name, which is what safety numbers are for.

## Checking you're talking to the right person

1. Open the person's profile and find the Encryption section, which shows a safety number.
2. With them in front of you, scan each other's code, or compare the numbers and tap Mark as verified.
3. If you added them from a link and can't meet, compare the number over a call instead.

A match means the keys on your phone really are theirs, so nobody is sitting in the middle of the conversation. Your safety number stays the same while the message keys change, so a verified contact stays verified.

Every message also carries its sender's signature, Nearby room posts included. Nobody can post under your identity or change a message on its way without the change being caught and the message thrown away.

## Forward secrecy: recorded messages stay closed

In direct and group chats, Knit keeps changing the keys as a conversation goes on, and deletes the ones it's finished with. Someone who records your sealed direct or group messages as they pass can't open them later, even if they get hold of a phone's keys afterwards, because the keys that would open them no longer exist.

- Keys change by block of messages, not with every single message. A new block starts when the conversation turns around and the other person replies, after 200 messages, or after 24 hours.
- A phone holds on to a finished key for a while longer, normally two days and never more than about a month, in case a late copy of a message still needs it. That recent stretch is the part someone holding a copied key could still open.
- If someone did copy a phone's keys, they're locked out again once they lose access to the phone and each of you has started a fresh block.
- When someone leaves a group, the members who stay switch to new keys, so what's sent after their leave reaches you is closed to them.

> **Older versions** A chat with someone on an older version of Knit falls back to the older scheme, which is still end-to-end encrypted for direct and group chats but has no forward secrecy, until they update. Reactions and delivery ticks toward them go out in the clear. In a group, a message gets forward secrecy only when every member's app supports it, and the group's details name the member holding it back.

## On your phone

Knit keeps your messages, contacts and keys in an encrypted database. Its key is locked by a hardware-backed key in Android's keystore, which never leaves the phone and isn't included in cloud backups, so the files are unreadable if they're copied off the phone. Reading them takes unlocking the phone and opening Knit, so your screen lock matters as much here as anywhere.

A backup from Settings › Backup and restore is one encrypted file, locked with a recovery key that Knit shows you once and doesn't keep. Without that key nobody can open it, Knit's developer included. Restore it onto one phone at a time: two phones sharing one identity keep resetting each other's conversations.

## Keeping your conversations private

- Verify the people you talk to most, in person if you can.
- Keep Knit up to date, and ask the people you talk to to do the same, so your chats keep forward secrecy.
- Use a screen lock on your phone.
- Keep anything private out of the Nearby room.
- Store your backup's recovery key somewhere safe, like a password manager.

## What to expect

- Routing details stay visible, as listed above: who a message is from and for, when, how big, and a group's member list, name and photo. Your profile's name, status and picture are public to the phones around you.
- Anyone in range can read the Nearby room, and phones carry its posts for 6 hours.
- If you pair an optional Meshtastic radio, its Meshtastic room sits outside Knit's encryption, like the Nearby room. A direct message sent over LoRa stays sealed, but its sender, recipient, timing and size travel on a public channel that reaches kilometres, which is why LoRa for direct messages has a switch of its own.
- Internet relays are opt-in. A relay holds sealed copies of direct and group messages that it can't read, but it sees that a conversation is active and the IP addresses connecting to it.
- Someone who can unlock your phone and open Knit can read what's in it, as with any messenger.

## Common questions

### Can Knit's developer read my messages?

No. Your direct and group messages are sealed on your phone, and only the phones in the conversation hold the keys. The mesh needs no server. Knit lists one Internet relay, run by its developer, and relays are opt-in. That relay holds sealed copies of your direct and group messages that it can't read, and it sees that a conversation is active and the IP addresses connecting to it.

### Who can read the Nearby room?

Anyone in range, on purpose. It's plaintext by design, an open broadcast to everyone around you, so there's no fixed group of people to seal it for.

### Do link previews leak anything?

Link previews are off until you turn them on. When they're on, your own phone fetches the page's title and picture, so that site sees your IP address, and sends them with your message. The people you send to never contact the site.

### What if I lose my phone?

The database on it is encrypted, so reading your messages takes unlocking the phone. To carry on as yourself on a new phone, you need a backup and its recovery key; without them, you start over with a new identity and your contacts see someone new.

## Read next

- [Store-and-forward](https://getknit.app/docs/store-and-forward/index.md): How phones hold on to a message and hand it to the next phone they meet, and why some messages arrive late.
- [Bluetooth and Wi-Fi Aware](https://getknit.app/docs/bluetooth-and-wifi-aware/index.md): Why Knit runs two radios at once, what each one is good at, and what Android asks you for.
- [Privacy policy](https://getknit.app/privacy/index.md): What the app and the default relay keep, in full.
- [Internet relays](https://getknit.app/updates/internet-relays/index.md): Opt-in relays that hold sealed copies for when nobody is in range.

Canonical page: https://getknit.app/docs/encryption/
