在之前的零知识证明系列文章中,我们详细介绍了ZK-SNARKs技术及其使用优缺点,本期内容我们将继续介绍另外两种零知识证明类型ZK-STARK和递归ZK-SNARK?
ZK-STARK是Zero-KnowledgeScalableTransparentArgumentofKnowledge的缩写。就像ZK-SNARKs一样,ZK-STARKs表示一个声明是有效的,而不透露任何关于声明本身的信息。
除了一些差异外,STARK与SNARK具有相同的属性。关于SNARK的文章可参考往期(超链接)。基于STARK的有效性证明是使用一条对验证者隐藏的信息生成的。STARK还可以在不泄露输入的情况下验证交易的正确性。
ZK-STARKs的主要区别在于它们的可扩展性和透明性:
ZK-STARK被认为是透明的,因为它可以在没有公共参考字符串(CRS:CommonReferenceString)的可信设置的情况下工作。相反,STARK协议使用可公开验证的随机性来建立证明者和验证者之间的交互。
ZK-STARK是可扩展的,因为证明和验证复杂性规模与计算复杂性呈拟线性关系。使用ZK-SNARKs,证明和验证的复杂性规模与底层计算呈线性关系。
这仅仅意味着当我们需要验证的计算量更大时,ZK-SNARK协议需要比ZK-STARKs更多的时间来生成和验证证明。这就是为什么STARKs更适合处理大量交易的应用程序。
使用ZK-STARKs有四个主要好处:不需要可信设置,它们是可扩展的,它们为用户提供最大的吞吐量,并且它们有高安全性保证。
1.无需可信设置
ZK-STARK不需要可信设置即可运行,而是依赖于公共随机性。这减少了用户的信任假设并提高了基于STARK的协议的安全性。
2.可扩展的属性
与SNARK相比,STARK的计算和验证速度更快。更重要的是,即使底层计算的复杂性呈指数级增长,ZK-STARKs的证明和验证时间仍然很短。
3.最大吞吐量
与SNARKs一样,STARKs可以通过启用安全且可验证的链下计算来扩展区块链。提交到L1链的单个STARK证明可以验证在主链外进行的数千笔交易。因此,几个备受瞩目的ZKrollup项目使用ZK-SNARKs来证明链下计算的完整性。
4.更高的安全保障
ZK-STARKs使用抗碰撞哈希(collision-resistanthashes)进行加密,而不是ZK-SNARKs中使用的椭圆曲线方案(ellipticcurveschemes)。这被认为可以抵抗量子计算攻击,使其比SNARK中使用的椭圆曲线更安全。
使用ZK-STARKs的两个主要缺点是它们使用更大的证明大小,并且在区块链空间中采用该技术的较少。
1.更大的证明尺寸
虽然STARKs提供了更快的证明,但缺点是这些证明与基于SNARK的证明相比更大。这使得STARK证明在以太坊上的验证成本更高,因为计算更大的证明会产生更高的gas费用。
2.采用率较低
SNARKs是零知识技术在区块链中的第一个实际应用,这就是为什么它们比STARKs拥有更多的市场份额。大多数ZKrollups使用ZK-SNARKs,基于SNARK的ZK证明的开发者生态系统和工具更大。
尽管ZK-STARKs也有知名的支持者,包括以太坊基金会,但他们的采用率较低。因此,开发人员可能会发现使用STARKs构建ZK项目的支持和工具较少。
StarkNet
作为以太坊上的L2网络运行的通用ZKrollup。StarkNet允许去中心化应用程序(dApps)实现无限的可扩展性,而不会损害以太坊的去中心化和安全性。
dYdX
基于以太坊的ZKrollup项目(兼作去中心化交易所)为加密货币用户和交易者提供快速且低成本的交易、借贷。dYdX使用STARK证明作为其安全机制的一部分,保证用户的资金安全。
PolygonMiden
具有EVM兼容性的基于STARK的ZKrollup。虽然仍在生产中,但PolygonMiden将成为第一个与EVM兼容的ZK-STARK协议,并允许开发人员迁移以太坊原生dApp以享受L2网络上的可扩展性。
递归SNARK(RecursiveSNARK)系统为不同的交易区块并行生成证明,并将它们聚合成一个提交到主区块链的单个区块证明,这意味着一个SNARK可以验证其他SNARK。
L2汇总仍然在以太坊上提交一份有效性证明。然而,这种递归证明会验证多个L2区块中的交易,一旦链上合约接受提交的证明,所有交易都会生效。
递归ZK-snarks通过将多个L2证明包含在提交给L1链的单个证明中,极大地增加了可以用ZK证明完成的交易数量,这目前受到以太坊12-14秒出块时间的限制。
区块时间是指在以太坊上挖掘一个新的交易区块需要多长时间。ZKrollups每个区块只能提交一笔链上交易(以及相应的有效性证明),限制了它们可以处理的交易数量。
递归ZK-SNARK与常规ZK-SNARK有何不同?
递归ZK-SNARK不同于普通的ZK-SNARK,因为递归ZK-SNARK可以通过将为不同L2块生成的SNARK组合成一个提交给L1链的有效性证明来验证多个交易块。
ZKrollups在发布到主区块链之前为每批交易创建一个SNARK证明,并且单个SNARK证明只能验证在L2rollup上进行的一个交易块。
ZK-SNARKs可以在不使用原始输入的情况下验证已被常规ZK-SNARKs验证过的交易。因此,链上智能合约可以验证更大的链下计算集,而无需运行多个SNARK作为输入。
零知识证明已经从隐私保护技术发展成为下一个扩展技术的前沿。随着ZKrollup的爆发,可以肯定地说,ZK-SNARKs,ZK-stark和递归SNARKs将在扩展以太坊的驱动中发挥重要作用。
以上就是什么是ZK-STARK以及有哪些技术优势?如何运作?的全部内容,望能这篇什么是ZK-STARK以及有哪些技术优势?如何运作?可以帮助您解决问题,能够解决大家的实际问题是非常好学习网一直努力的方向和目标。