{
  "tool_id": "art-390-tip20-memo-commitment-validator",
  "kernel_id": "art-390-tip20-memo-commitment-validator",
  "display_name": "TIP-20 Memo/Commitment Validator",
  "tool_version": "1.0.0",
  "mandate_type": "compliance_mandate",
  "purpose": "Validates a TIP-20 TransferWithMemo's 32-byte memo as a hash-or-locator commitment: checks length/hex form, recomputes the SHA-256 commitment over a supplied off-chain payload or a templated invoice-ID locator, and reports whether the memo matches. Integrity-only -- distinct from screen_tip20_transfer_batch (art-38, AML/Travel Rule screening of a transfer batch). Calculator only, zero egress.",
  "control_description": "Validates a TIP-20 TransferWithMemo's 32-byte memo as a hash-or-locator commitment: checks length/hex form, recomputes the SHA-256 commitment over a supplied off-chain payload or a templated invoice-ID locator, and reports whether the memo matches. Integrity-only -- distinct from screen_tip20_transfer_batch (art-38, AML/Travel Rule screening of a transfer batch). Calculator only, zero egress.",
  "declared_inputs": [],
  "declared_outputs": [],
  "kernel_digest": "sha256:2e6765cb6fedbe96e56bc75b47196c2e7243c367d754267127df2711a012aee4",
  "trust_label": "independently verified -- zkVM execution proof (risc0/groth16-bn254)",
  "data_vintage": "2026-07-10",
  "last_validated": "2026-07-10",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "ready",
  "wave": 65,
  "source_url": "https://ainumbers.co/chaingraph/art-390-tip20-memo-commitment-validator.html",
  "generated_at": "2026-07-25T20:02:55.601Z"
}
