Documentation

Evidence & verification

What a bundle contains, what each check proves, and how to verify one without trusting ZoneInsight.

The chain of custody

  1. A probe makes an observation and signs it with its own Ed25519 key.
  2. Observations are batched; each batch gets a Merkle root over its members.
  3. On a fixed cadence, batch roots are folded into a global root and committed to a public chain in a single transaction.
  4. An evidence bundle packages one observation, the probe's signature, the probe's public key, and the inclusion proofs from the observation up to that committed root.

What the checks prove

CheckProves
Observation hashThe payload in the bundle is the one that was hashed.
Probe signatureA specific probe identity produced it, and it has not been altered since.
Batch inclusionThe observation was in the batch whose root was published.
Checkpoint inclusionThat batch was in the checkpoint whose global root was committed.
Public chain commitmentThe global root appears in a transaction confirmed at a known block height and time.

Together these establish that the observation existed, unchanged, no later than the block that carried it — so history cannot be quietly rewritten afterwards.

Verifying a bundle

Download a bundle from a zone's Evidence tab, then check it either way:

  • The web verifier — no account, runs the same checks in your browser session.
  • The zi-verify CLI — offline apart from an optional chain RPC call:
zi-verify ./evidence-bundle.zip
# add --rpc-url to also confirm the on-chain commitment
zi-verify --rpc-url https://rpc.example ./evidence-bundle.zip

Without --rpc-url the chain-commitment check is reported as skipped rather than passed — the other four still hold.

No wallet required

You never hold, send or sign anything on-chain. ZoneInsight publishes the commitment; the chain is a notary for timestamps, not a payment rail.