Appearance
Groth16
Arithmetization 算数化
对于经过算数化的电路,我们可以表示为
其中,
QAP
对于验证矩阵的正确性,我们可以很自然地想到把矩阵通过插值计算为多项式形式,然后通过 Schwartz-Zippel 引理 来验证其正确性。这里有
但是这里观察到左边的次数是
利用SRS计算多项式
已知:
并且
对于多项式的计算,例如对于点
然后,我们就可以通过配对来验证多项式等式:
对于
- 由于我们预先知道
, 并且在电路生成时我们可以提前先计算 再丢弃 (这就是为什么Snarkjs里对于Groth电路需要再贡献一次,而Plonk不用的原因),得到:
- 从而有如下等式关系可以容易得到
:(这里的 是 的系数)
证明:
TIP
此时我们有:
P:
V: 验证