sealed · 9dc47566

the head of this chain

The record

recomputes cleanly

house

Seals
1
Last sealed
2026-10-14T09:45:27.562Z (1d ago)
Verdict computed
on this request
head digest9dc47566281dce5f51ac6a75ef87861eee72ded19f06021f100a026eff6c2653
chain idhouse

1 sealhead 9dc47566281dthe whole chain

genesis · seq 0declaration9dc47566281dce5f51ac6a75ef87861eee72ded19f06021f100a026eff6c2653no previous digest: this is where the chain starts2026-10-14

Each digest is a sha256 over the canonical JSON of its own entry. Recompute them from the raw record.

Every seal, with its preimage

declarationseq 02026-10-14T09:45:27.562Z

digest 9dc47566281dce5f51ac6a75ef87861eee72ded19f06021f100a026eff6c2653

prev null, this is the first seal

{
  "does": [
    "record what a coin declared at launch, before it launches",
    "seal that record so the declaration cannot be edited afterwards",
    "re-read the chain on a schedule and seal what it finds, each reading with its slot",
    "publish both, side by side, including when they disagree"
  ],
  "name": "OBSIG",
  "domain": "obsig.fun",
  "refuses": [
    "promising a coin will do well",
    "promising the declaration was true, only that it cannot be changed",
    "hiding a reading that contradicts the launch declaration",
    "printing a figure without the slot it was read at"
  ],
  "plannedTicker": "OBS"
}

Recompute it yourself

Each digest is a sha256 over the canonical JSON of its own entry, and each entry carries the digest of the one before it. Change one byte of a body and every seal after it stops matching.

digest = sha256(JSON.stringify(canonical({ seq, kind, body, slot, at, prev })))
canonical sorts object keys at every depth
entry[n].prev === entry[n-1].digest, and seq starts at 0

Every field, as JSON