Evidence · the age of the record
How old the log is, day by day
Anyone could rebuild this software. Nobody can give a new log a head that a time-stamping authority saw
last month, or put one in a Bitcoin block that was mined last week. This page lists every head of ours
that carries that kind of evidence, read from the files in anchors/ when the site was built,
so each row can be checked without us.
The evidence log
Each row is a head we signed: the root of every entry recorded up to then. A time-stamping authority states when it saw the head; the newest head of each day also goes into Bitcoin. Newest first; 5 heads, the full roots in age.json.
| Head signed | Entries | Root | Independent time (RFC 3161) | Bitcoin |
|---|---|---|---|---|
| 18 October 2026 05:42 UTC | 161 | 2cd2b0c0a5c9c099… | DigiCert timestamp service, 18 October 2026 06:04 UTC Sectigo timestamp service, 18 October 2026 06:04 UTC | sent to 3 OpenTimestamps calendars, awaiting a block |
| 17 October 2026 05:29 UTC | 120 | 2288b99df5d2f2ac… | DigiCert timestamp service, 17 October 2026 05:42 UTC Sectigo timestamp service, 17 October 2026 05:42 UTC | not anchored |
| 16 October 2026 10:19 UTC | 79 | 7a1ddbffb646b09b… | DigiCert timestamp service, 16 October 2026 12:35 UTC Sectigo timestamp service, 16 October 2026 12:35 UTC | not anchored |
| 16 October 2026 00:14 UTC | 2 | df429daa750fdfc2… | DigiCert timestamp service, 16 October 2026 01:30 UTC Sectigo timestamp service, 16 October 2026 01:30 UTC | not anchored |
| 27 September 2026 20:12 UTC | 0 | e3b0c44298fc1c14… | DigiCert timestamp service, 28 September 2026 09:46 UTC Sectigo timestamp service, 28 September 2026 09:46 UTC | not anchored |
The quote ledger
The worked example’s v1 ledger, anchored when its head moves.
| Anchored | Entries | Head | Bitcoin |
|---|---|---|---|
| 18 October 2026 | 50 | 637a922a44e29990… | sent to 3 calendars, awaiting a block |
| 13 September 2026 | 46 | f95974f59ca3a6dd… | block 967 830 |
Check a row yourself
Every file named here is in anchors/ of the
public verifier repository, copied there by
the daily anchor run with the tools that check it.
- The Bitcoin anchor
- With the standard OpenTimestamps client, which shares no code with us:
ots verify anchors/ots/evidence-head-N.payload.opentimestamps-a.ots anchors/ots/evidence-head-N.payload. The payload file is the head’s frozen string,riskrouter-evidence-head|v2|tree_size|root_hash|timestamp, and nothing else. Offline, without a Bitcoin node:node tools/head-anchor.mjs verify anchors/ots/*.otsorpython3 tools/python/riskrouter_verify.py anchors/ots/evidence-head-N.payload.opentimestamps-a.ots. - The time-stamp tokens
node tools/tsa.mjs verify anchors/tsa/evidence-head-N.digicert.json --key anchors/, or the same file withpython3 tools/python/riskrouter_verify.py. Each token is over the SHA-256 of the same payload the Bitcoin proofs commit to, so both kinds of evidence date one string.- Our signature
- Both commands above check it with
--key anchors/. A head is listed here only when it verifies. - That an earlier head is part of a later one
GET /api/v2/evidence/consistencyreturns the RFC 6962 consistency proof between two sizes. Every entry under an earlier head is under every later one, so a later head’s block bounds the earlier entries too.
What this does not prove
A head in a block existed before that block was mined. That is an upper bound, never the exact moment: the time between an entry being recorded and the next head an authority stamped is our word, and heads are stamped hourly when the log has moved. Only each day’s newest head goes into Bitcoin, from 18 October 2026; earlier heads have tokens but no block of their own.
The time-stamping authorities named here are not qualified eIDAS trust services, so their tokens are evidence of time without the legal presumption Article 41(2) of Regulation (EU) No 910/2014 gives a qualified one (the specification). No independent witness co-signs the log yet (become one). None of this says anything about what a record contains: we never see the record, only its salted fingerprint.