Verify

Verify a proof bundle offline.

Inspect whether a serious cyber claim survives independent verification through signatures, lineage, and evidence integrity checks, without relying on the originating system or WitnessOps to stay in the loop.

Start here if you need to test whether a serious cyber claim survives independent verification.

Included in v1

Receipt JSON verification, deterministic checks, breach reporting, and explicit malformed versus unsupported failure classes.

Not included in v1

Bundle uploads, mixed payloads, and artifact-byte revalidation remain out of v1.

Public result model

The public verdict stays deterministic while still exposing receipt-only scope and artifact-revalidation state.

Receipt-only caveat

A tampered PV example can still verify here.

In /verify v1, `valid` means the receipt artifact verified in receipt-only mode. It does not mean the referenced artifact bytes were fetched and rehashed again. Scope and artifact revalidation remain visible beside the public verdict so the result does not overclaim.

verify-flow
$ paste receipt JSON
$ POST /api/verify
 
verdict: valid
scope: receipt-only
artifact_revalidation: not_performed
proof_stage_verified: PV
tampered-pv-example
$ POST /api/verify # tampered PV receipt
 
verdict: valid
scope: receipt-only
artifact_revalidation: not_performed
meaning: receipt artifact verified; referenced bytes not rechecked
Verify Input

Paste receipt JSON, upload a `.json` file, or load a deterministic fixture.

/verify v1 accepts receipt JSON only. Bundles, mixed payloads, and unsupported receipt classes fail closed.

verify receipt
> paste a receipt JSON document or load a fixture
Read Next

Verification is one trust layer, not the whole system.

Use the docs to understand receipt structure, verification scope, and where higher-assurance bundle checks fit after receipt-first v1.