{
  "tool_id": "art-128-content-binding-assertion-validator",
  "kernel_id": "art-128-content-binding-assertion-validator",
  "display_name": "Content Binding Assertion Validator",
  "tool_version": "1.0.0",
  "mandate_type": "compliance_mandate",
  "purpose": "Validate hard-binding (c2pa.hash.data/bmff, tamper-evident) vs soft-binding (watermark/fingerprint, survives re-encode). Confirms asset byte-hash matches claimed hard-binding hash. Emits TAMPER_EVIDENT / SOFT_BINDING_ONLY / UNBOUND verdict. Terminal stage.",
  "control_description": "Validate hard-binding (c2pa.hash.data/bmff, tamper-evident) vs soft-binding (watermark/fingerprint, survives re-encode). Confirms asset byte-hash matches claimed hard-binding hash. Emits TAMPER_EVIDENT / SOFT_BINDING_ONLY / UNBOUND verdict. Terminal stage.",
  "declared_inputs": [
    "art-127-dual-layer-disclosure-verifier"
  ],
  "declared_outputs": [],
  "kernel_digest": "sha256:8b845be829dad04a632712212b54bc9449cbc940642f29d007acb77e67a4b826",
  "trust_label": "deferred -- deterministic source published, zkVM proof not yet generated",
  "data_vintage": "2026-07-10",
  "last_validated": "2026-07-10",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "ready",
  "wave": 23,
  "source_url": "https://ainumbers.co/chaingraph/art-128-content-binding-assertion-validator.html",
  "generated_at": "2026-07-25T20:02:55.601Z"
}
