Withdraw witness
Trail 2026-09-18-ewr1
Experiment Nr. 1, Lauf 2 — Drain ewr1 (Vultr NJ)
- Origin:
anycast.dev/witness/2026-09-18-ewr1 - Data: entries with
witness.sourceatlas-feedare RIPE Atlas measurement results (RIPE NCC, atlas.ripe.net); all other entries come from our own hosts. - Signing key:
ed25519:55a24b2cf3462636, published 2026-09-17 (vor dem Lauf) at /.well-known/logsiegel-pubkey.txt - How to check it: /.well-known/logsiegel-verify.txt (German)
- File list with sizes and SHA-256: MANIFEST.txt
Fetch and verify
BASE=https://anycast.dev/witness/2026-09-18-ewr1
mkdir 2026-09-18-ewr1 && cd 2026-09-18-ewr1
curl -sO "$BASE/MANIFEST.txt"
curl -sO "$BASE/log.jsonl.gz"
curl -sO "$BASE/checkpoints.jsonl"
curl -sO "$BASE/origin"
mkdir -p keys anchors
curl -s -o keys/signing_key.pub "$BASE/keys/signing_key.pub"
for f in $(awk '$3 ~ /^anchors\// {print $3}' MANIFEST.txt); do
curl -s -o "$f" "$BASE/$f"
done
gunzip -k log.jsonl.gz
# what you got is what the manifest says
awk '$1 ~ /^[0-9a-f]{64}$/ {print $1" "$3}' MANIFEST.txt \
| shasum -a 256 -c # GNU: sha256sum -c
# the key comes from the published file, not from the trail
curl -s https://anycast.dev/.well-known/logsiegel-pubkey.txt -o pubkeys.txt
sed -n '/Lauf-ID: *2026-09-18-ewr1$/,/END PUBLIC KEY/p' pubkeys.txt \
| sed -n '/BEGIN PUBLIC KEY/,/END PUBLIC KEY/p' > pub.pem
pip install logsiegel==0.1.2
logsiegel verify . --pubkey pub.pem
Expected: PASS: <N> entries, <M> checkpoints. The guide also shows how to break the check on purpose, so you know it measures something.
The copy of the public key inside the trail (keys/signing_key.pub) proves nothing against us — whoever controls the directory can rewrite log and key together. Take the key from the published file.
Files
| File | Bytes | SHA-256 (first 16) |
|---|---|---|
| MANIFEST.txt | 1,832 | adc6ef719f8171f3 |
| anchors/cp002047-digicert-20260917T184500Z.tsr | 6,006 | c467bd307a18932c |
| anchors/cp003958-digicert-20260917T190000Z.tsr | 6,007 | 08a1bab25575fd1c |
| anchors/cp006425-digicert-20260917T191500Z.tsr | 6,007 | da3aacf90f1bdaa8 |
| anchors/cp007052-digicert-20260917T191940Z.tsr | 6,007 | 29ea95b207396249 |
| checkpoints.jsonl | 21,517 | 85964f2551589073 |
| keys/signing_key.pub | 113 | 4f742e43bd44dfa4 |
| log.jsonl.gz | 763,486 | 2dd3cca3e2d78021 |
| origin | 35 | b1497cfe879b23c5 |
Unpacked, log.jsonl is 5,407,245 bytes, SHA-256 f9e2f985367f6fd6da9288205f9a443b1e017a0ca6951933ebff374e65096c82. Unpacking changes nothing about the proof.
4 RFC 3161 timestamp tokens are in anchors/; each one stamps a signed checkpoint root. The certificates to check them against: digicert-root-g4.pem, digicert-chain.pem — or your own system trust store, the result must be the same.