~/work $ marmot --whistle // colony_alerted
MARMOT
end-to-end encrypted group messaging on nostr, built on MLS
[01] WHAT IT IS
Encrypted DMs already exist on nostr. Encrypted groups are the hard part, and Marmot is the spec for doing them right.
It takes MLS (RFC 9420, the IETF standard for end-to-end encrypted group messaging) and runs it over nostr: identity you hold the keys to, relays anyone can host. MLS brings the cryptography, nostr brings the transport, and no company sits in the middle. Like its namesake, Marmot lives in colonies: one marmot whistles and every relay carries the alarm, so the burrow stays sealed.
[02] THE MIPS
six specs cover the whole protocol, key packages through push notifications:
[03] SECURITY MODEL
Keys ratchet forward with every message. Steal today's keys and yesterday's burrow is still sealed: past messages stay unreadable.
Regular key rotation heals the group after a breach. An attacker who falls behind the ratchet is locked out again.
Group messages are published under ephemeral keys to relays the group picks, so an observer can't even tell who is in a group, or that it exists.
MLS signing keys are distinct from your nostr identity key. Your npub never has to touch the message layer.
Any nostr relay can carry the ciphertext; groups can hop relays at will. There is no service to subpoena, seize or shut down.
MLS's ratchet tree makes group operations scale logarithmically: the same crypto works for 2 marmots or 2 million.
[04] THE COLONY
the spec is open; anyone can build a client.
Honest scope: Marmot is experimental. The specs still move, and nothing has been audited for production use yet. Read the threat model, kick the tires, file issues. The colony grows by whistling back.
JOIN THE COLONY ⇗