OpenChainGraph Suite · ART-413 · Private-Input Profile

Private-Input Sanctions Screen

Demonstrates the private-input screening shape: screens a privately held party/transfer list against a fixed three-name synthetic test list by case-insensitive substring match, and emits only the verdict (screened, hit count, clean flag) without disclosing the list. This is a demonstration of the screening shape, not a sanctions screen; the list version is a label the caller supplies, not bound to any list bytes. Carries an OCG Standard §25 ocg-private-input@1 declaration: the party list is committed via sha256-salted@1, never present in the clear. Private-input variant of screen_tip20_transfer_batch (art-38) — use that public-input kernel when disclosure of the party list is acceptable; use this one when it is not. The verdict is public and the list is not in the receipt; hiding holds only if the proof is generated where the list lives, because a server that is handed the list has seen it.

⚠ Truth-in-copy note: the tool's output text still refers to screening "against a committed list" and "against the pinned list version" : read that as the screening ran against this kernel's fixed three-name synthetic test list by substring match, and the list version is a caller-supplied label not bound to any list bytes. The output wording changes with the next re-prove of this kernel.
OCG §25 Private Input Sanctions Screening AML Proofs Deferred
🔒 All inputs are processed locally in your browser. No data is transmitted. Do not enter real personal data — use synthetic or anonymised inputs only. The screened party list stays a private witness — only a salted commitment and the screening verdict ever leave this page.
Private Witness (never leaves this page in the clear)
The private input. Only a sha256-salted@1 commitment to this list is included in the exported artifact — never the names themselves.
Fresh CSPRNG salt per screening run (SPEC.md §25.1). Never reused, never included in the artifact.
Public Inputs
List version label (public). A label the caller supplies — not bound to any list bytes.
Case-insensitive substring matching (public config).
Verdict Detail
Private-Input Declaration (§25)
Execution Hash (SHA-256)

Ask your agent

Copy this paragraph into Claude, OpenClaw, or any MCP-aware agent to run this exact tool, with this sample, and verify the artifact.

Run the AINumbers MCP tool `screen_sanctions_private`. Task: Screen a privately held party/transfer list against a pinned OFAC-SDN-style list version and emits a public verdict (screened, hit count, clean flag) without disclosing the party list.
Call it with arguments: {"policy_parameters":{"parties":[{"name":"Example Shipping Co"}],"salt":"1111111111111111111111111111111111111111111111111111111111111111"}}
Verify before trusting: call `verify_execution_hash` on mcp.ainumbers.co (https://mcp.ainumbers.co/mcp) with the parameter `claimed_hash` set to the returned `execution_hash`, passing the full artifact the run returned (the object containing `policy_parameters` + `output_payload` + `execution_hash`; equivalently `policy_parameters` + `output_payload` with `claimed_hash`), not the bare hash string.
Return the ledger link https://ledger.ainumbers.co/ so a human can re-verify without contacting us.
PII rule: All inputs are processed locally in your browser. No data is transmitted. Do not enter real personal data — use synthetic or anonymised inputs only.
Over MCP, the run happens on the AINumbers worker. No AINumbers server stores your inputs.
Open the tool with the sample prefilled: https://ainumbers.co/chaingraph/art-413-screen-sanctions-private.html#p=v1.H4sIAAAAAAAA_wF2AIn_eyJwYXJ0aWVzIjpbeyJuYW1lIjoiRXhhbXBsZSBTaGlwcGluZyBDbyJ9XSwic2FsdCI6IjExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEifbT9yzN2AAAA