sp1_core_executor::subproof

Trait SubproofVerifier

Source
pub trait SubproofVerifier: Sync + Send {
    // Required method
    fn verify_deferred_proof(
        &self,
        proof: &SP1ReduceProof<BabyBearPoseidon2>,
        vk: &StarkVerifyingKey<BabyBearPoseidon2>,
        vk_hash: [u32; 8],
        committed_value_digest: [u32; 8],
    ) -> Result<(), MachineVerificationError<BabyBearPoseidon2>>;
}
Expand description

Verifier used in runtime when sp1_zkvm::precompiles::verify::verify_sp1_proof is called. This is then used to sanity check that the user passed in the correct proof; the actual constraints happen in the recursion layer.

This needs to be passed in rather than written directly since the actual implementation relies on crates in recursion that depend on sp1-core.

Required Methods§

Source

fn verify_deferred_proof( &self, proof: &SP1ReduceProof<BabyBearPoseidon2>, vk: &StarkVerifyingKey<BabyBearPoseidon2>, vk_hash: [u32; 8], committed_value_digest: [u32; 8], ) -> Result<(), MachineVerificationError<BabyBearPoseidon2>>

Verify a deferred proof.

Implementors§