隐私方案ZK² Rollup:如何在以太坊上实现高速、廉价的隐私交易
据以太坊联合创始人vitalik表示,隐私协议团队Aztec正在研发ZK-ZK rollup方案,以在以太坊主网上实现每秒数百笔的隐私交易,同时可降低每笔隐私交易的成本。
对于 ZK rollup 方案,一些读者可能已经有所了解,那这个ZK-ZK rollup,又是个啥呢?我们来看Aztec官方给出的解释:
啥是ZK² Rollup
Aztec团队正在为PLONK证明进行ZK-ZK Rollup的研发工作,以减少在以太坊主网上进行隐私交易的gas成本。
传统的ZK Rollup利用了SNARKs的“简洁性”属性来扩展公共区块链,这种技术允许将大量交易“汇总”为一笔聚合交易,因此以太坊可以一次执行100笔或1000笔交易,而所消耗的gas成本就相当于一笔以太坊交易的花费。
所以ZK-SNARKs也可以是一种用于扩容的核心工具,此外,我们已经认识到用户可以使用ZK-SNARKs来保护隐私。那两者可以同时兼得吗?
答案是:“yes”。
Aztec目前正在积极部署ZK-ZK Rollup,或简称ZK²,因为它包含了两层或多层SNARKs:
- “低层”ZK-SNARKs每个都代表了一笔隐私交易;
- “上层”ZK-SNARKs(即Rollup SNARK),则简洁地证明了低层SNARK的正确性;
100笔交易“汇总”到单个SNARK证明
Aztec很快就会允许你在以太坊主网上以100 tps的速度发送隐私交易,这同时兼顾了余额隐私和用户隐私。而在理想情况下,rollup理论上是可以达到2,000 tps的。
那为何隐私rollup交易会如此困难呢?
是什么使ZK² Rollup如此困难?
1、递归:证明的证明
在标准的ZK rollup中, rollup SNARK证明是非常适合SNARK的数学推理,围绕公共token传输的逻辑可以很容易地转换为“算术电路”。但是对于ZK² Rollup而言,你需要在另一个SNARK电路(上层Rollup SNARK)中验证一个SNARK证明(下层隐私SNARK)。
这就被称为 递归(指在SNARKs中证明SNARKs的行为) 。
而递归是很困难的,因为你要么需要非常特殊的数学条件,要么你就会面临像山一样庞大的计算量。
具体来说,你需要以下条件之一:
- 要找到所谓的“配对友好”曲线循环,而这是非常罕见的存在,而且在它们存在的地方,其安全性是非常低的,你需要选择非常大且计算成本很高的数字系统来描述它们(例如,MNT4和MNT6曲线),或者
- 模拟电路中的二进制算术,而二进制算术又可以用于模拟素数域运算。这需要大量使用范围证明(range proofs),而范围证明(range proofs)是很消耗成本的;
2、状态更新
除了计算上的不利因素之外,状态更新的管理比公共ZK Rollup要具有更多的开销。ZK² Rollups需要更多的状态更新,并且需要发送更多的数据:- 对于标准(公开)ZK Rollup而言,用户可以使用基于帐户的模型,这需要每笔交易进行2次状态更新。但是,为了防止统计攻击,保护隐私的ZK² Rollups 就需要用到2倍的数据,其中2个状态变量被添加到状态树中,另外2个变量被添加到 nullifier树 中。
- 也许一个更大的瓶颈,是数据传输要求,传统的rollup涉及每笔交易 4–8 字节的负载,而隐私隐蔽rollup涉及每笔交易 32–64 字节的负载,而在以太坊的数据,仍然是昂贵的。
3、可证明随机性
Aztec还需要验证随机性的来源(将“交互式证明”转换为“非交互式证明”的魔法,这样你就不必每次在花钱时都要忍受与以太坊进行痛苦的交互)。这种随机性意味着哈希。而在SNARKs中的哈希就是一个真正的问题:
- 对SNARK友好的哈希算法(例如Pedersen哈希)缺乏传统哈希函数的伪随机性:将输入的一部分更改为Pedersen哈希,你就会知道输出会发生什么。 由于缺少此属性,我们无法轻松生成证明者无法操纵的数字;
- 我们可以转向不太被广泛接受的SNARK友好哈希函数(例如Poseidon, Rescue),但“已定型”和“广泛采用”这两大属性,是我们对密码学原语信心的基础,而在有价值的密码学系统中部署这些未被证明的哈希函数,可能还为时过早;
- 因此,我们别无选择,只能求助于对SNARK“不友好”哈希算法(例如Blake2 或SHA256),而它们大量使用了二进制逻辑和范围证明(range proof)。
在结合其他创新的情况下,递归的大门就被打破了。
PLONK: 一种新的ZK标准
据悉,Aztec的SNARK证明是使用该公司 CTO Zac Williamson和现任首席科学家Ariel Gabizon创建的称为PLONK的最新数学成果构建的。
在过去的几个月里,一些领先的扩展性和隐私项目选择加入了PLONK生态系统,其中包括:
- Dusk Network最近宣布他们改用PLONK;
- Matter Labs正在透明设置环境中实现PLONK;
原文:https://medium.com/aztec-protocol/aztec-fast-privacy-with-zk%C2%B2-rollup-7c742f45457 作者:Thomas Walton-Pocock 编译:洒脱喜 稿源(译):巴比特资讯(http://www.8btc.com/article_576962)