The signature check
This is the page everything else on this site points at. It is short, because the procedure is short.
Before you start
You need a fingerprint you established independently and stored somewhere you control. If you do not have one yet, stop and read pinning a key first, because a signature checked against a key from the page you are checking proves nothing at all. That is a page vouching for itself, and any forger achieves it for free.
The procedure
- Find the signed block. It starts and ends with the PGP armour lines. If there is no signed block, you are finished and the answer is no.
- Copy the whole thing. Everything from the opening line to the end of the signature. Nothing trimmed, no whitespace altered, no quotation marks converted. A partial copy fails in a way that looks identical to tampering.
- Verify against your pinned key. Not a key the page offers, not one you fetched because verification complained, the one whose fingerprint you checked and stored.
- Read the output. Both the key ID and the date inside the signed text. This is the step people skip and it is where the two dangerous outcomes live.
The four outcomes
| Result | Meaning | What to do |
|---|---|---|
| BAD signature | The maths fails. Text altered after signing or the signature fabricated. | Leave. Unambiguous, no judgement needed. |
| No public key | Signed by a key you do not hold. A gap in your keyring, not a verdict. | Import the correct key after checking its fingerprint. Never one the page hands you. |
| GOOD, unexpected key | The maths works against a key that is not yours. | Leave. The word GOOD appears, which is exactly why this one catches people. |
| GOOD, old date | Verifies perfectly but the statement is from months ago. | Treat as unconfirmed. Signatures never expire, so genuine old statements get replayed. |
Why the date is inside the signature
A signature has no expiry built into it. A statement signed two years ago verifies exactly as cleanly today, because nothing about it has changed. That property makes signatures excellent for archives and awkward for anything about the present.
Putting the timestamp inside the signed text fixes it, because the date cannot then be adjusted without breaking the signature. An attacker replaying an old statement is stuck presenting an old date. Then the only question is whether you look, and a correctly signed roster from before a rotation lists addresses that have since been retired and recycled.
If it fails
Leave without typing anything. There is no situation in which a failed check is worth working around, and the excuses offered for one are all the same lie wearing different clothes. Key was rotated. The forum stripped the signature. Posting from mobile. Will sign it later.
The one genuinely difficult case is a message announcing that the signing key itself has changed, because anyone holding the old key can sign a handover with it. No single message settles that. What settles it is consistency across independent places over time, so the correct response is to slow down and wait several days rather than act inside whatever deadline the message sets.