{
  "tool_id": "art-584-proof-of-reserves-verifier",
  "kernel_id": "art-584-proof-of-reserves-verifier",
  "display_name": "Proof-of-Reserves Verifier",
  "tool_version": "1.0.0",
  "mandate_type": "compliance_mandate",
  "purpose": "Independently recomputes an exchange or custodian's published Proof-of-Reserves data: a single-leaf Merkle-sum inclusion path, a liability-side Merkle-sum branch aggregation, and a coverage ratio between the two recomputed sums, with an optional cross-check against a caller-declared published reserve figure. Emits a per-check finding (reserve_inclusion, liability_aggregation, coverage_ratio) plus an overall CONSISTENT, INCONSISTENT, or INDETERMINATE determination. Generic Merkle-sum schema only; named-exchange export formats are a documented field-mapping reference in the page copy, not a standing per-exchange adapter. Mirrors the shipped art-280 reserve-proof-verifier (single-leaf inclusion) and art-540 por-liabilities-composer (composes a caller-asserted liabilities total); this node independently recomputes both sides from raw Merkle-sum path data rather than composing a pre-verified boolean. CONSISTENT never implies solvency, audit assurance, or that the underlying published figures are truthful, only that what was published is internally consistent with itself.",
  "control_description": "Independently recomputes an exchange or custodian's published Proof-of-Reserves data: a single-leaf Merkle-sum inclusion path, a liability-side Merkle-sum branch aggregation, and a coverage ratio between the two recomputed sums, with an optional cross-check against a caller-declared published reserve figure. Emits a per-check finding (reserve_inclusion, liability_aggregation, coverage_ratio) plus an overall CONSISTENT, INCONSISTENT, or INDETERMINATE determination. Generic Merkle-sum schema only; named-exchange export formats are a documented field-mapping reference in the page copy, not a standing per-exchange adapter. Mirrors the shipped art-280 reserve-proof-verifier (single-leaf inclusion) and art-540 por-liabilities-composer (composes a caller-asserted liabilities total); this node independently recomputes both sides from raw Merkle-sum path data rather than composing a pre-verified boolean. CONSISTENT never implies solvency, audit assurance, or that the underlying published figures are truthful, only that what was published is internally consistent with itself.",
  "declared_inputs": [],
  "declared_outputs": [],
  "kernel_digest": "sha256:852795237d7839b503e955db5db49f8d87ff6dc9edeb5a31687fca2e6f660b66",
  "trust_label": "independently verified: zkVM execution proof (risc0/groth16-bn254)",
  "data_vintage": "2026-08-07",
  "last_validated": "2026-08-07",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "ready",
  "wave": 82,
  "source_url": "https://ainumbers.co/chaingraph/art-584-proof-of-reserves-verifier.html",
  "generated_at": "2026-08-15T11:12:17.704Z"
}
