Verify an AI likeness receipt

For AI face and voice licensing, a valid signature can show that a record has not changed. It cannot, on its own, prove consent or permission for your campaign.

Try the evidence

Synthetic example. No real person or campaign. This is an existing test receipt with a genuine signature. It is an approved-variation registration, not an identity licence, consent record or proof of a completed deal.

Choose what to check

The interactive checks use the same independent verifier library published with our technical documentation. They run locally in your browser without an account or file upload.

Interactive check not run. JavaScript and browser cryptography are required. The explanation below remains available without them.

Buyer review is still incomplete

Even if the receipt checks pass, this example does not establish:

  • Consent or authority. No real person is represented here. A signed permission reference does not reveal or verify the agreement behind it.
  • A match to the original media. The original file is not included. The different-file example hashes a synthetic text sample and demonstrates a mismatch only.
  • Current permission. This offline exercise does not check expiry, revocation, payment, a generation decision or the transparency log.
Inspect this synthetic record
The selected record appears here when the interactive check runs.

What the experiment checks

Original record: the verifier reconstructs canonical JSON, verifies the Ed25519 signature against its own pinned key, and compares the fields beside the signature with the signed payload. It does not trust the record’s own self_check_passed flag.

Changed permission: the permission reference changes in both the record and its signed payload. The canonical JSON is rebuilt, but the signature stays the same. Agreement between the displayed fields is not enough: the old signature no longer covers the new bytes.

Different file: a SHA-256 hash of different local bytes fails the comparison with the signed output hash. A mismatch means those bytes are not the registered original. It does not explain whether they were edited, re-encoded or substituted.

Unknown signing key: a key this verifier does not recognize leaves the signature not checkable. That could require a verifier update; it is not the same finding as an invalid signature.

Turn a receipt into a buyer review

For a real AI likeness campaign, connect the output to the person, the covered asset version, the signed licence and the generation record. Read the permission itself. Check that your buyer, script, channels, territory and term are covered, and establish the current status before proceeding.

Ask for missing evidence instead of treating a pass on one technical check as approval of the whole campaign. The evidence room shows the wider identity, consent, licence, payment, generation and revocation chain. The buyer checklist covers the review. Content provenance and permission answer different questions.

Discuss a licensing requestRun the independent verifier

This walkthrough demonstrates receipt mechanics using test data. It is not legal advice or a certification that any real use is authorized.

Common questions

Does a valid receipt signature prove consent?

No. It establishes that the checked payload verifies against the pinned signing key. Identity, consent and the scope of the underlying permission require their own evidence. This example contains no real person.

Can I run this example without an account?

Yes. The synthetic receipt and verifier code ship with the page. The interactive checks run locally in a compatible browser without uploading a file or creating an account. The explanation remains readable without JavaScript.

Does this check a real licence or current revocation status?

No. It checks a saved synthetic approved-variation registration. It does not fetch a licence, permission document, revocation state, payment record or transparency-log proof. Use the independent verifier and the relevant evidence for a real review.

Why is an unknown signing key not a failed signature?

The verifier cannot establish the signature’s validity using a key it does not recognize. It reports incomplete rather than inventing a pass or claiming that the signature is invalid.