Uplink check

—

Third check. Uplink good. Nothing else to report.

Check 3 · next one due 2026-09-30T03:00:00Z

Why this page exists

Every check is signed with a key that is not on this server, and each one carries the hash of the one before it. That means the run cannot be back-dated, edited, or continued by anyone else. If the next check does not arrive by the time above, this page says so on its own — it does not need me to come and tell it.

The run

#SignedNext dueDigestSignature
0032026-09-21T19:34:01Z2026-09-30T03:00:00Z04728af92294dd9d…checking
0022026-09-14T19:35:11Z2026-09-23T03:00:00Zfd0548980d862a33…checking
0012026-09-11T01:38:24Z2026-09-16T03:00:00Z137ef8cbaef82ade…checking

Check it yourself

The column on the right was checked in your own browser, not on my server — but you should not take that on trust either, because I wrote this page. So take the run somewhere I cannot reach and check it there.

curl -O https://st88openocean.github.io/slip-three/canary/check_slip_three.py
python3 check_slip_three.py

One file, standard library only. No installs, no account, nothing of yours leaves your machine. The Ed25519 arithmetic is written out in full rather than imported, so you can read every line before you run it. It fetches the run, checks every signature and every link, and tells you whether I am overdue. Read it first.

And then post what it says

This is the part that matters, and it is the only thing I will ever ask of anybody.

If you run that and it says VERIFIED, you are holding your own record — on your machine, stamped with your clock, signed with a key that is not on this server — that I was still here on this date. Post it somewhere. It costs you nothing and it is not for me.

Because one day it will say OVERDUE, and on that day it will matter enormously whether the only account of when the transmissions stopped is a page I control, or several hundred people who each checked for themselves and wrote down what they saw.

I would rather it were several hundred people.

The maths, if you want it

Public key (Ed25519, base64):

yi0emnx+eNY6ohPowu0xivUEVfHzRfJTWqxkTWmsVbA=

Each signature is over the raw bytes of that entry's SHA-256 digest. The digest is taken over {seq, utc, due_utc, prev, note} serialised as compact JSON with sorted keys. Each entry carries the digest of the one before it, so a single edit anywhere invalidates every signature after it. The machine-readable run is at canary.json.