How it works
Three ideas, each of which has a physical equivalent you already understand.
Idea one: a seal only you can make
When you set this up, your computer creates two matching numbers, called a
key pair. Think of them as a signet ring and its imprint.
- The private key is the ring. It never leaves your computer. Nobody
else ever sees it, including us.
- The public key is the imprint. It is published for anyone to look at.
Anything pressed with your ring can be checked against your imprint by anyone, and nobody
without the ring can make a matching mark. That is the whole trick. Mathematically it is
nothing like a wax seal, but the property you care about is identical: easy to verify,
impossible to forge.
Idea two: sealing a message
When you send a protected message, your plugin does three things, in under a second:
- It takes a fingerprint of what you wrote — the subject line and the
body text. A fingerprint is a short code computed from the text; change one comma and
the code changes completely.
- It signs that fingerprint, together with your address, using your private key.
- It publishes the signature — not your message — to the AnuuTech network, and
adds a short reference line at the bottom of your mail.
Your recipient's plugin sees that reference, fetches the signature, and checks it against
the message actually in front of them. If the two fingerprints agree, the message is exactly
what you wrote. If they do not, they are told so.
Your message never goes to the network. Only the signature and the
fingerprint do, and a fingerprint cannot be turned back into the text it came from — the
same way you cannot reconstruct a person from their fingerprint.
Idea three: proving the address is yours
A signature proves that whoever holds a particular key wrote the message. It does not, by
itself, prove that key belongs to alice@example.com — anyone can claim any address.
So there is one extra step, done once. A gateway sends a code to that mailbox and you send
it back. Only somebody who can actually read the mailbox can do that. From then on, your key
and your address are linked, and your messages show as Verified sender
instead of merely Signed.
This is why the badge means something quite specific: this person demonstrated they
could read that mailbox. It is not a statement about who they are in the world. See
what the banners mean.
Sealing a message shut
Signing proves authorship. It does not hide anything — a signed message is still readable
by your provider, exactly like ordinary mail.
If your recipient also uses ProtectMyMail, the body can additionally be encrypted:
locked with a key only they hold. Picture posting a locked box instead of a postcard. The
postal service still handles it, still knows who sent it and where it went, but cannot look
inside.
Two things are worth knowing about that:
- The subject line is not encrypted. Only the body is. If it matters,
keep it out of the subject.
- Who you wrote to, and when, is not hidden either. Mail providers need that to deliver.
What actually happens when you press send
In roughly a second, in this order. It matters that the order is this way round.
- Your plugin reads the message your mail program is about to send, and
picks out the plain-text version — the part every mail program can display.
- It looks up your recipients on the network to see whether they have
published an encryption key. If every one of them has, the body can be sealed; if even
one has not, it is signed but left readable, because a message some recipients cannot
open is a fault, not protection.
- It computes the fingerprint of the subject and the text.
- It signs that fingerprint, your address, the recipient and the time,
with your private key.
- It publishes the signature to the network — and waits for confirmation
that it arrived.
- It adds one line to the bottom of your message pointing at that
signature, and hands the message on to your provider.
Why publish before sending? If the message went out first and the
signature failed to publish, your recipient would open a message referring to a proof that
does not exist — which reads as "something is wrong with this" about a message that is
perfectly fine. Publishing first means the worst case is a message that goes out
unprotected, which is the ordinary case for everyone anyway.
What happens when your recipient opens it
- Their plugin sees the reference line and fetches the signature.
- It fetches the sender's published key for that address, and checks
that record's own signature. A record that does not verify is treated as if it were
not there at all.
- It checks the signature was made by that key — not merely by
a key. Verifying a signature against the key packaged with it proves only that
the sender holds a key; pairing that with somebody else's address is exactly how
impersonation would work.
- It recomputes the fingerprint of the subject and text in front of them
and compares. Any difference and they are told the message was altered.
- It checks whether the mailbox was ever confirmed, and by a gateway the
network authorised — which is what separates Verified sender from
Signed.
- It draws one line saying what was established.
Every one of those checks happens on their computer. At no point does their plugin ask a
server "is this message fine?" and believe the answer — see
what you have to trust.
What is covered, and what is not
| Part of the message | Covered by the signature |
| The sender's address | Yes |
| The subject line | Yes |
| The text of the message | Yes |
| Whether it was sealed | Yes |
| The time it was signed | Yes |
| Quoted text from an earlier message | No — replies add it, so it is ignored |
| Attachments | No |
| Who it was sent to | Not yet — see trust |
What the network is for
AnuuTech is a set of computers that keep a shared, public record of two kinds of thing:
which key belongs to which address, and signatures over messages. It never holds your mail,
your keys or your password.
The reason it is a network rather than one server is that a single server could lie. If
one machine held the answer to "which key belongs to alice@example.com", whoever ran it could
change the answer and read or forge Alice's mail. Spreading it over many machines that all
check each other's work removes that single point of trust — and your plugin verifies every
record itself, so it does not have to believe any of them.
What this means in practice. If someone hacked the whole network, they
could stop you seeing a badge. They could not create a false one, because they do not have
your ring.
Next: what the banners mean.
← All documentation