Pairings, KZG, SNARK
KZG承诺方案是一种加密方法,用于安全地锁定多项式,使得后续验证者可在不透露秘密内容的情况下确认其存在。这种方案在以太坊生态中至关重要,尤其在与零知识证明的结合下,提高了区块链交易的隐私性和可扩展性。KZG的实现依赖于椭圆曲线和复杂的数学原理,适合在其升级过程中高效、安全地验证交易。
由 Kate、Zaverucha 和 Goldberg 引入的承诺方案(又名“KZG 承诺”方案)是可用于承诺 4844 blob交易的最佳机制。
零知识证明 - KZG多项式承诺
本文介绍了如何在 zk 证明中有效地使用 KZG 承诺,提高证明验证的效率。
多项式承诺正在重塑整个区块链的架构,不论是在链的数据结构优化上,模块化区块链的数据可用性上,还是零知识证明系统上都将大有作为。
一段代码生成零知识证明可以分为代码变成多项式阶段,多项式生成承诺两个阶段。
第一阶段,简单来说就是把代码转换成 a * b = c 三元算式的列表(就是写电路),然后套数据公式把三元算式的列表转换成多项式,然后用R1CS&QAP的方式对多项式进行约束;
第二阶段,先是通过f(x) = h(x)t
Trusted Setup其实就是生成一个非对称加密的私钥,即s;然后生成一系列的公钥,即g^(s^i), i = 0....n;其中g是椭圆曲线中的生成元; i是从0到n的整数,n是多项目的degree。其中的s必须销毁,谁都不能知道;只保留下来一系列的公钥;以太坊基金会已经生成了4组这类的公钥对
文章介绍了以太坊的EIP-4844提案,即Proto-Danksharding,旨在通过引入新的交易类型和数据字段(blob)来优化以太坊的扩展性,特别是对Layer 2 Rollup解决方案的益处。