Verify a receipt
Confirm what ran — model, input, output, and the TEE attestation — without trusting the operator.
A receipt is the point of Omyra: it lets anyone confirm what ran without trusting the operator. The chip hides the prompt; the receipt proves the computation.
What a receipt binds
- The model identity (a hash, not a label you have to trust).
- The input and output commitments.
- The TEE attestation — proof the work ran inside an Intel TDX or AMD SEV-SNP enclave.
- A signature chaining it all together.
Verify it
import { Omyra } from "@omyra/sdk";
const omyra = new Omyra({ network: "devnet" });
const ok = await omyra.proof.verify(result.receipt);
if (!ok) throw new Error("Receipt failed verification");
Never skip verification
If a receipt does not verify, treat the output as untrusted. A valid output with an invalid receipt is indistinguishable from a fabricated one.
Receipts are chained, so a workflow's full history can be replayed and checked end to end — see Architecture.