Skip to main content

Proof Verifier Contract

Proofs can either be verified fully on-chain or in a TEE for cases where writing the verification contract in Solidity is impossible or carrying out the verification on-chain is expensive. While in the former case, the tooling related to the proof system can help generate the verifier contract in Solidity, for the latter case, sections on Generator and IVS enclaves provide information on operating the verification logic via a TEE.

note

Through out the docs, Proof Verifier refers to a smart contract. This is clear in the Solidity-based proof verification case. In the case of TEE-based verification scenario, the Proof Verifier refers to a contract which checks the validity of attestations received from a TEE attesting to the proof being valid.

The sub-sections below provide detailed steps to proceed with deploying the smart contracts relevant for either case: