// verify
Check a certificate you were shown.
Paste the certificate number or its claims digest. You get the record as the chain holds it, with its digest recomputed here from the claims.
How each part of a certificate is agreed
- The claims
- One validator proposes up to 6, normalised and sorted. Every other validator reads the page itself, checks each claim against its own copy, and votes agree only if it finds all of them. A certificate needs a majority.
- The claims digest
- sha256 over the stored claims joined by newlines. This page recomputes it from the record below.
- The image check
- Each validator renders its own screenshot and asks whether it shows what the text states. The answers are compared exactly, and a certificate stores the one they agreed on.
- The moment
- The transaction's own datetime, from the chain.
- Refusals
- A page that answers with an error, renders almost no text, or carries fewer than two claims is refused for every validator alike, and the refusal is the message the contract raised.
Check it yourself
Against the chain. Read certificate(id) on the contract directly. The contract's source is served at /api/contract-source, byte for byte.
Against the claims. Join the claims with newlines, with no newline at the end, and run sha256 over the result. It is the stored digest.
# the record curl https://getstanding.xyz/api/v1/certificates/0 # the digest, from two claims printf '%s\n%s' "claim one" "claim two" | sha256sum
How a judgment of a change is reached
Two certificates of the same page can be put to the network with one question: do they contradict each other on a fact a reader would act on? The contract holds the claims that differ and numbers them. Each validator asks its own model twice, once with each capture shown first, and the answer is material with the lines that carry it, or immaterial. When the two orders disagree the stored answer is unclear. Validators compare the resolved answer exactly.
A question is filed by the change itself, so the same change is answered once whichever pair of certificates asks it. A pair with no judgment is a question nobody has put yet, and the API answers it with a 404 rather than a verdict.
When a certificate is contested
Capture the page again. The new certificate links back to the one before it, both stay on chain side by side, and the change between them can be put to the network.