Chain verification · client-side · no server involved
Don't take our word for it. Recompute the chain.
If a record was edited after signing, the recomputed hash will not match the stored one — and that row is reported as BROKEN, visibly, with the row identified. The button below proves it, including what happens when a record is deliberately tampered with.
Privacy: verification runs entirely in your browser. Nothing you check is sent to us, logged, or stored — and it never will be. No login, no fee, forever.
Verify a single record
Paste any one estate record — hash and signature are recomputed here, in your browser, against the published keys. Share a permalink and the recipient's browser re-runs the same check on the same bytes.
Verify a chain
The verification runs locally in your browser using WebCrypto. No record leaves your machine. Today the chain is sha256-linked; the verify button only ever claims what the cryptography currently does.
Published chain status
The status of the production chain as published by the instrument. The button above recomputes the public replay set independently — the two never have to take each other's word.
Records are sha256 hash-linked for tamper-evidence. A card's trust path is an Ed25519 signature over a SHA-256 hash chain, verifiable offline against did:web:csoai.org — no blockchain and no timestamp authority sits in that path; our XRP Ledger work is a separate, devnet-proven demonstration of attaching that same signed evidence on-ledger, and mainnet is planned, not live. OpenTimestamps anchoring is roadmap, not yet wired. The post-quantum ML-DSA-65 (FIPS-204) signer is built, not shipped; the label will name it in the same commit it ships.
Last record: DR-0034 — An SSM leg breaks the dead-weight regime (n_eff > 2.0)
Living attestation — from GET /api/gspc
Ed25519 signature, SHA-256 hash, and XRPL status fetched at render time. No hardcoded scores. Empty fields show exactly why they are empty.
Attestation · live from GET /api/gspc · click any row for traces
Living Stamp — SIGNED
Do not treat this as a valid attestation. Check site_attestation instead.
Progress · 22 axis · 15 measured
22 axis are on the board; 15 of them carry a measurement and 7 are declared slots with no run behind them. The larger number counts slots, the smaller counts measurements — quote both or quote the smaller. A published slot exists so the gap is visible; it is not evidence of anything having been measured.
Unsigned Financial Slots · not board rows
2 unsigned financial slots measured on a smaller fleet with no separation test. Published as measured_in_lane on GET /api/gspc. NOT stamped onto the board 15. public_count stays 22 axis · 15 measured. Fetched from /interop/ as unsigned leftover only.
What this button does NOT do
- This button recomputes the sha256 hash chain — tamper-evidence, not authorship. Authorship is carried by the signed card: a ~3KB measurement card signed against
did:web:csoai.org#card-attestation-1, public keyd4cb0eaa16d5f50b…— read it out of that document yourself and compare it to thepubkeyon any card. A card's trust path is an Ed25519 signature over a SHA-256 hash chain, verifiable offline against did:web:csoai.org — no blockchain and no timestamp authority sits in that path; our XRP Ledger work is a separate, devnet-proven demonstration of attaching that same signed evidence on-ledger, and mainnet is planned, not live. OpenTimestamps (Bitcoin) anchoring is roadmap, not yet shipped — the label will name it in the commit it ships, as with ML-DSA-65. The post-quantum ML-DSA-65 (FIPS-204) signer is likewise built, not shipped; the label will name it in the same commit it ships — never ahead of it. - It does not contact a server. Verification is local; you bring the records and the WebCrypto implementation in your browser.
- It does not assert that a model is "safe", "compliant", or "authentic". Those words are not in the button's vocabulary, on purpose.