1)太长不看:
本文概述了一种预共识机制,可以实现即时终局性并减少验证gas成本,同时不影响zkRollup的即时资金退出。
2)背景和动机:
在承诺间隔足够短的情况下,zkRollup可以实现即时终局性。在这个方案中,聚合者的信任风险会随间隔时间增长而增加,实现终局性的成本会随间隔时间延长而降低。
首先说明zkRollup的配对验证成本超过20万gas。也就是说,在zkRollup的每个承诺间隔期内,聚合者都需要花费这么多gas来验证并敲定承诺。
我们不能忽略这一成本,因为zkRollup的承诺间隔很短。我们需要承诺来实现即时退出的终局性。只要承诺间隔很短,且恶意聚合者回滚交易的积极性不高,我们就可以实现即时终局性。
Curve贡献者Banteg:Curve上的CRV/ETH池在白帽黑客开始救援前几分钟被盗空:金色财经报道,根据区块链数据和Curve贡献者Banteg的说法,CRV/ETH池在白帽黑客开始救援前几分钟就被盗空了。这是今天发生的一系列攻击的一部分,目前估计表明,700万个CRV和1400万美元的包装以太币(WETH)在该漏洞中被盗取,这些代币是从Curve Finance上的CRV/ETH池中被盗的。
此前消息,Curve Finance称由于Vyper部分版本出现故障,许多使用Vyper 0.2.15版本的稳定币池 (alETH/msETH/pETH) 遭到攻击。受此影响,安全机构派盾称Alchemix、JPEGd、MetronomeDAO、deBridge和Ellipsis目前已累计损失2676万美元。[2023/7/31 16:07:40]
尽管我们可以使用递归零知识证明和高效的证明计算系统来聚合多个交易,我们也很难改变承诺间隔。如果我们盲目延长承诺间隔,就会影响安全性。
Lookonchain:0x8ff0开头地址错将Curve LP代币出售并造成了200万美元损失:金色财经报道,据Lookonchain监测,0x8ff0开头地址错将价值200万美元的Curve LP代币3Crv通过KyberSwap出售,仅获得0.05枚USDT。0xd8开头的MEV机器人合约通过向验证者支付23.79枚以太坊的费用,使用1.45枚USDC获得该LP代币。KyberSwap表示已联系了该用户并正在调查这起事件,之后将提供事件进展。[2023/3/11 12:56:45]
然后,我们需要思考如何在zkRollup中实现安全的即时终局性和较长的验证间隔。
3)方法:
聚合者的运行成本源自合约上零知识证明验证的gas成本高且承诺间隔短。
数字支付平台Wirex、加密货币做市商B2C2已撤回向英FCA的注册申请?:1月30日消息,数字支付平台Wirex、加密货币做市商B2C2等在美国开展业务的加密公司已撤回向英国金融行为监管局(FCA)的注册申请。FCA高管Sarah Pritchard在本月早些时候的一封信中表示,85%寻求监管机构批准的公司无法证明他们符合规定的最低标准。
Pritchard补充称,作为注册流程的一部分,我们发现了与客户尽职调查、风险评估、交易和持续监控(以及)治理等关键控制相关的重大失误。FCA还怀疑,一些被拒绝的加密公司的负责人缺乏有效和安全运营业务所需的经验和知识。希望在英国开展业务的公司对现行制度表示不满,一些领导人表示,现行制度过于强调审查单个公司,而不是建立一套标准。[2023/1/30 11:35:45]
因此,我们可以在不影响安全性和可用性的情况下延长验证间隔。
赵长鹏:清算FTT为退出后风险管理措施,此前是自愿持有FTT:11月7日消息,币安创始人赵长鹏在推特发文称,清算FTT只是退出后的风险管理措施,这是我们从LUNA身上学到的经验。我们之前曾给予支持,但未来不想再保持任何关系。我们不反对任何人,但不会支持那些在背后游说反对其他行业参与者的人。
此前赵长鹏在回应推特用户提问时表示,币安持有FTT至今并非因为有锁定期。我们此前是自愿持有这些代币,这消除了我们会攻击“竞争对手”的任何嫌疑。但持有时间是有限度的,不会永远持有。[2022/11/7 12:26:46]
3.1)第一步:跳过零知识证明配对验证
首先,我们最容易想到的解决方案就是跳过配对计算,并引入针对承诺的简单欺诈证明。
聚合者向合约提交证明或验证zkRollup承诺所需的任何东西,但这时不执行配对计算,也就不需要支付20万gas。一段时间过后,这个承诺就会得到验证;这个承诺中的每个状态将成为下一个承诺的公共输入。聚合者需要锁定一些以太币来激励验证者。一旦验证者发现欺诈行为,聚合者就会受到惩罚。
承诺就是公共输入、零知识证明数据、上一个状态根、下一个状态根、交易哈希和聚合者地址这几项的哈希值。
原像由链上事件提供,承诺保存在合约存储内。
这种方法具有很大的优势。
每个人都可以成为瞭望塔,等同于OptimisticRollup中的“验证者”,无需运行全节点或进行任何特殊的起步设置。
数据可得性问题不会发生,因为验证或执行欺诈证明所需的一切数据都在链上发出的事件中。执行欺诈证明时,我们不需要Layer2交易数据及交易结果,因为这些数据全都包含在了零知识证明的公共输入和证明中。
如果恶意聚合者提交了恶意默克尔根,并放弃了所有交易数据和默克尔树数据,我们不需要运行全节点来进行欺诈证明。我们只需检查零知识证明数据,并执行配对验证函数,即可发现这类恶意行为。
但是,上述方法存在安全性问题。
如果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成本。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。