前序博客有:
2022年8月8日Jordi Baylina(Iden3合伙人,Polygon Hermez zkEVM技术负责人)在Zcon3分享 Tooling for building zkEVM: PIL and Circom - Jordi Baylina at Zcon3。
Polygon zkEVM主网路线图为:

Polygon Hermez 总体架构为:

其中zkProver总体示意为:

zkProver内部示意为:

以Fibonacci序列为例:

Fibonacci序列(1024个元素)对应的CIRCOM R1CS电路表示为:

以上CIRCOM R1CS电路对应的Polynomial Identities/State Machine为:

将以上Polynomial Identities以PIL程序表示为:

构建pre-processed polynomials,并计算witnesses(为state machine):

以fibonacci.js和fibonacci.pil构建测试用例:









CIRCOM中的Custom Gates:
https://github.com/0xPolygonHermez/pil-stark pil-STARK工具的作用:
Demo演示见 Tooling for building zkEVM: PIL and Circom - Jordi Baylina at Zcon3视频第24分钟。
pil-STARK实现了 Recursive STARK,可生成a CIRCOM circuit that can be verified with another STARK:
借助Recursive STARK,可:
pil-STARK生成regular CIRCOM circuit,使得可以snarkJS(PLONK或Groth16)来验证:
使用Groth16/PLONK proof的优势在于:




EVM Processor总体架构为:




https://github.com/0xPolygonHermez/zkevm-rom/ zkasm-rom:
Polygon zkEVM使用以太坊test suit来验证zkEVM,目的是维护a high level of equivalence。
当前状态为:
目标是实现100%覆盖。
当前Polygon zkEVM性能为:
单笔交易的开销为:0.00875$
仍然有很大的改进空间:
[1] 2022年8月8日Jordi Baylina在Zcon3分享 Tooling for building zkEVM: PIL and Circom - Jordi Baylina at Zcon3