A sync protocol whose only server is somebody else's mail server.
What is Tandem?Tandem is a protocol for keeping collections of records in sync across many devices and many people, end-to-end encrypted, in real time. It needs no server of its own. Its only infrastructure is a mailbox: one account on any IMAP server.
It is for people who trust each other. It does not work in an adversarial environment.
Every piece of data is an encrypted, signed message in one folder of a mail account. The mail server sees opaque ciphertext, sizes and timing. Nothing else.
Who can read a collection is decided by who holds its key. Who may change what is decided by signatures checked on every device. The mail server decides nothing.
Records merge without coordination, so devices work offline and in any order, and every device ends up with the same state.
Live updates use IMAP IDLE: the mail server notifies connected devices when messages arrive, without polling. Our Fastmail transport tests measured about 0.5 seconds for an appended message to reach another connected client. App batching, the network and the provider affect the time an edit takes to appear. On mobile, live updates run while the app is active; it catches up when reopened.
Tandem adds its own identity and key management above IMAP. Each person has a participant record within a hub, with independent signing and encryption keys for each approved device. Those devices share an encrypted home, so new lists and settings sync automatically. A password-protected hub management key approves new devices; each collection's owner controls sharing and its encryption keys. The mailbox credential alone gives no access to private contents.
Tandem was written for Liszto, a to-do app. It doesn't know that.
A household, friends, a small team. People who trust each other.
Like a tandem bicycle, it only works when its riders cooperate: everyone is honest and wants to keep it moving forward.
Tandem does not work in an adversarial environment. Everyone who shares the mailbox holds its credential, and anyone who holds it can delete everything in it. A member who can write to a collection can vandalise it until the owner removes them. A stolen device can act for you until it is revoked; cutting off future access also requires fresh home and collection keys.
The encryption keeps the mail provider, and people on the mailbox who aren't members, from reading or forging your data. It does not protect you from the people you let in.
Two words: no servers.
Three more: not ours, anyway. Any standards-compliant mail account works. There is no relay, no push service and no key server to run, and a mailbox you pay for is more predictable than infrastructure that shrinks and grows on other people's terms.
Keeping things that aren't mail in a mail account is not a new idea. Kolab did it. Apple Notes did it. See the prior art.
Quite a lot.
This is a draft for review, not a security sign-off.
Executable models, cryptographic conformance tests and mail-transport probes are kept alongside the draft. The participant/device design has selected model and crypto tests; its complete wire format, implementation and independent security review remain unfinished.
A tandem is a bicycle for two. It is also how a two-seat jet seats its crew: one behind the other. And the domain was available.