扩容技术 / 主题阅读

ZK-SNARK与ZK-STARK的信任假设差异:无信任设置与多参与方计算

ZK-SNARK依赖可信设置生成的公共参考字符串,而ZK-STARK通过公开可验证随机性实现透明设置,两者在安全性假设上存在根本区别。

区块链技术中零知识证明的示意图,展示数据验证过程
主题资料配图,非新闻现场照片 · 配图:读懂区块链之零知识证明(zk-snark)

ZK-SNARK的可信设置机制

ZK-SNARK协议运行需要创建公共参考字符串(CRS),该字符串为证明和验证提供公共参数。其安全性依赖于CRS的生成过程,若生成参数的恶意参与者掌握了关键信息,可能伪造有效的有效性证明。为解决此问题,部分ZK-rollup采用多参与方计算仪式(MPC),由可信个体共同生成参数。每位参与者贡献随机性(称为“有毒废料”)并立即销毁,只要其中一人诚实销毁输入,系统安全性即得到保证。然而,这本质上仍需信任参与者在生成过程中不泄露信息或破坏随机性。

ZK-STARK的透明设置与抗量子特性

ZK-STARK被视为ZK-SNARK的改进方案,其核心优势在于无需可信设置。它利用公开可验证的随机性来设置生成和验证证明的参数,从而消除了对特定参与者的信任需求。此外,ZK-STARK在证明和验证时间上具有更好的可扩展性,其复杂度呈准线性增长,而ZK-SNARK呈线性增长。更重要的是,ZK-STARK基于哈希函数而非椭圆曲线加密,使其对量子计算机攻击具有天然的抗性,而ZK-SNARK使用的ECC被认为易受量子计算威胁。

证明大小与验证成本的权衡

尽管ZK-STARK在信任假设和抗量子性上更优,但它在以太坊主网上验证时面临更高的成本。ZK-STARK生成的证明体积较大,导致在L1上的验证费用较高。相比之下,ZK-SNARK生成的证明体积小,验证速度快,能够显著降低主网上的验证成本。因此,ZK-rollup通常根据应用场景的需求,在安全性、信任假设和验证成本之间进行权衡,选择使用ZK-SNARK或ZK-STARK。

资料与延伸阅读

你可以通过以下原始资料核对文中概念,并继续深入阅读。

  1. Zero-knowledge rollups | ethereum.org
  2. 配图:读懂区块链之零知识证明(zk-snark)
← 更多扩容技术文章返回顶部 ↑