What is a Compute Receipt?
A compute receipt is a cryptographic proof that a specific computation was performed correctly. It contains all the information needed to verify the result without re-executing the computation.
Receipt Structure
interface ComputeReceipt {
// Job identification
job_id: string;
timestamp: number;
// Input/Output hashes
input_hash: string;
output_hash: string;
// Execution metadata
executor_id: string;
execution_time_ms: number;
// Cryptographic proof
proof: {
type: "zk-snark" | "attestation";
data: string;
signature: string;
};
// Validator attestations
attestations: Attestation[];
}Verification Process
- 1Verify the cryptographic proof matches the stated computation
- 2Check that sufficient validator attestations are present
- 3Validate all signatures against known validator public keys
- 4Confirm the receipt has been anchored to the consensus layer
Receipt Types
ZK-SNARK Proofs
Zero-knowledge proofs that verify computation without revealing inputs. Highest security but computationally expensive to generate.
Attestation-Based
Multiple validators independently execute and attest to results. Faster but requires trust in validator set honesty.