1)太长不看:
本文概述了一种预共识机制,可以实现即时终局性并减少验证gas成本,同时不影响zkRollup的即时资金退出。
2)背景和动机:
在承诺间隔足够短的情况下,zkRollup可以实现即时终局性。在这个方案中,聚合者的信任风险会随间隔时间增长而增加,实现终局性的成本会随间隔时间延长而降低。
首先说明zkRollup的配对验证成本超过20万gas。也就是说,在zkRollup的每个承诺间隔期内,聚合者都需要花费这么多gas来验证并敲定承诺。
我们不能忽略这一成本,因为zkRollup的承诺间隔很短。我们需要承诺来实现即时退出的终局性。只要承诺间隔很短,且恶意聚合者回滚交易的积极性不高,我们就可以实现即时终局性。
A股开盘:深证区块链50指数下跌5.12%:金色财经消息,A股开盘,上证指数报3364点,开盘下跌1.95%,深证成指报11729.8点,开盘下跌2.28%,深证区块链50指数报3585点,开盘下跌5.12%。区块链板块开盘下跌5.12%,数字货币板块开盘下跌6.24%。[2023/4/23 14:20:58]
尽管我们可以使用递归零知识证明和高效的证明计算系统来聚合多个交易,我们也很难改变承诺间隔。如果我们盲目延长承诺间隔,就会影响安全性。
然后,我们需要思考如何在zkRollup中实现安全的即时终局性和较长的验证间隔。
3)方法:
聚合者的运行成本源自合约上零知识证明验证的gas成本高且承诺间隔短。
标记为Genesis trading的地址向Coinbase转移超1亿枚USDC:金色财经报道,据PeckShield监测,标记为Genesis trading的地址在过去12小时内向Coinbase转移了超过1亿枚USDC。[2023/2/15 12:08:51]
因此,我们可以在不影响安全性和可用性的情况下延长验证间隔。
3.1)第一步:跳过零知识证明配对验证
首先,我们最容易想到的解决方案就是跳过配对计算,并引入针对承诺的简单欺诈证明。
聚合者向合约提交证明或验证zkRollup承诺所需的任何东西,但这时不执行配对计算,也就不需要支付20万gas。一段时间过后,这个承诺就会得到验证;这个承诺中的每个状态将成为下一个承诺的公共输入。聚合者需要锁定一些以太币来激励验证者。一旦验证者发现欺诈行为,聚合者就会受到惩罚。
Coinbase因供应商问题暂停澳大利亚用户存提款:2月7日消息,Coinbase官网显示,由于第三方支付供应商出现问题,澳大利亚PayID支付已中断,导致澳大利亚用户的存款和提款目前受到影响。[2023/2/7 11:52:19]
承诺就是公共输入、零知识证明数据、上一个状态根、下一个状态根、交易哈希和聚合者地址这几项的哈希值。
原像由链上事件提供,承诺保存在合约存储内。
这种方法具有很大的优势。
每个人都可以成为瞭望塔,等同于OptimisticRollup中的“验证者”,无需运行全节点或进行任何特殊的起步设置。
数据可得性问题不会发生,因为验证或执行欺诈证明所需的一切数据都在链上发出的事件中。执行欺诈证明时,我们不需要Layer2交易数据及交易结果,因为这些数据全都包含在了零知识证明的公共输入和证明中。
Lido V2已上线Solana,节点佣金降为5%:12月21日消息,Lido V2已上线Solana,主要变化是取消了专门的100%佣金,转而支持公共验证节点,最高佣金为5%。此外,验证节点区块和质押奖励将获得SOL而不是stSOL。
官方表示,v2的变化侧重于节点运营商的盈利能力和简单性,最终有助于为Lido用户提供更安全的质押体验。[2022/12/21 21:59:11]
如果恶意聚合者提交了恶意默克尔根,并放弃了所有交易数据和默克尔树数据,我们不需要运行全节点来进行欺诈证明。我们只需检查零知识证明数据,并执行配对验证函数,即可发现这类恶意行为。
但是,上述方法存在安全性问题。
如果Layer1上发生51%攻击,将恶意默克尔根合法化,我们很难阻止。
由于51%攻击的执行成本随底层区块链的出块时间增加而增加,我们需要足够长的验证期限,才能有效提高51%攻击的难度。理想的验证期限是7天,因为ORU的退出期限也是7天,这可以根据挖矿成本和实际的攻击奖励计算得到。
在这种情况下,我们没有理由舍ORU而取上述方案。
3.2)第二步:无需零知识证明验证的预共识承诺,通过递归零知识证明配对实现终局性
我们可以通过以下方式解决上述安全性问题。
我们将这个没有经过零知识证明验证的承诺视为预共识。预共识会通过零知识证明验证限制终局性。
(consensuscommit)=>(pre-consensuscommit)=>(pre-consensuscommit)=>….=>(pre-consensuscommit)=>(consensuscommit)
所有预共识承诺都会通过配对来限制共识。因此,Layer2用户可以享受安全的即时交易终局性。我们需要使用带有递归零知识证明的所有预共识承诺来验证共识承诺。这里有两个电路:预共识电路和递归电路。预共识电路包含采用zkRollup方案的dApp的逻辑。递归电路只需要从Layer1中获取预共识数据作为公共输入。
递归零知识证明可以用来对一段时间内的预共识进行水平合并:与此同时,它也可以用来将大量交易垂直聚合到预共识承诺中。
如果说任何虚假的预共识承诺都会影响带有配对的共识验证,我们总是可以通过零知识证明配对其进行欺诈证明。一旦证明成功,聚合者就会使用零知识证明验证者函数将该承诺删除,然后重新开始进行交易聚合并创建预共识承诺。
如果急的话,资产持有者可以花20万gas通过预共识来达成共识,然后就可以立即退出。正如“第一步”中提到的那样,他们不需要任何特殊设置,即可实现共识终局性,因为所有输入都已聚合,而且可以通过链上事件搜索到。无论验证多少预共识承诺证明,递归验证的gas成本都不会增加,因为这些证明将被哈希到条目哈希中。
51%攻击者无法敲定恶意默克尔根,因为每个根最终都会通过由zk电路实现的合约代码逻辑在链上进行验证。
4)总结:
这种带有欺诈证明的预共识协议及相关数据可访问性可以让zkRollup拥有较长的承诺间隔。这种方法可以大量节省验证计算所需的gas成本。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。