> For the complete documentation index, see [llms.txt](https://maru-2.gitbook.io/maru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://maru-2.gitbook.io/maru/zk-implementation/plonky2-verifier-in-circom.md).

# Plonky2 verifier in Circom

Since it's currently not possible to directly verify Plonky2 proofs in smart contracts, this problem can be solved by using Circom. Through a bridge between Circom and Plonky2 proofs, we generate a program that takes Plonky2 proofs as input and convert them into Circom-style SNARKs. After this step, we create a smart contract capable of verifying Circom SNARK proofs.
