Friend System

Connect with other Patchwork systems to share encrypted fronting updates. The server only ever sees ciphertext — only the intended friend can read what you send.

How It Works

When you become friends with another system on Patchwork, you exchange public keys. From that point, any fronting update you share is encrypted with their public key before leaving your device. Only they can decrypt it with their private key — the server cannot read the content of any message.

This is a dumb postbox model: the server holds and routes sealed envelopes. It knows who sent what to whom (the routing metadata) but has zero visibility into the contents.

Adding Friends

01

Find the other system

Ask your friend for their system name — the name their system is registered under in Patchwork. It is not their Discord name.

02

Send a friend request

Type that system name into the Add friend field on your Friends screen and tap Send request. It has to match exactly, though capitalisation does not matter. They’ll get a notification, and the request also waits at the top of their Friends screen.

03

Wait for acceptance

Until they accept, the request appears as Pending in your Friends list. You can cancel a pending request at any time.

04

Keys are exchanged

When they accept, both sides exchange public keys automatically. No manual setup is required. From this point, fronting updates are encrypted end-to-end.

Accepting Requests

Incoming friend requests appear at the top of the Friends screen with Accept and Decline buttons. Declining a request removes it without notifying the sender of the reason.

No pressure: You can leave a request pending indefinitely. Senders are not told how long it has been waiting, only whether it is pending or accepted.

What Friends See

When you switch fronters (and notifications are enabled), your friends see:

Fronting notification

The name and avatar (if set) of the member now fronting. The time of the switch. Nothing else.

Friends do not see:

Each friend gets their own encrypted copy. If you have three friends, three separately encrypted messages are sent. Friend A cannot read Friend B’s notification even if they intercept it.

Removing Friends

Open a friend’s entry in the Friends list and select Remove Friend. This immediately stops all future updates being sent to them. Their copy of your public key becomes useless as your future updates will no longer be addressed to them.

The other person is not notified that you removed them. They will simply stop receiving updates and their Patchwork will show your status as unavailable.

Encryption Details

Each fronting notification goes through two encryption layers:

Your device
→
Generates a random AES-GCM session key. Encrypts the fronting payload with it.
Key wrap
→
Encrypts the AES session key with the recipient’s RSA-2048 public key. Only they can unwrap it.
Server
→
Stores and routes the sealed blob. Cannot read the AES key or the payload.
Recipient
→
Unwraps the AES key with their RSA private key. Decrypts the payload locally.

For the complete privacy model, see Privacy & Security.