作者:0xhhh,EthStorage;编译:Faust,《极客web3》
导语:自Rollup成为显学以来,定序器Sequencer去中心化始终是以太坊/Celestia社区的关注焦点,同时也是Layer2研发工作中难以逾越的大山。对此,不同的Rollup方案均提出过关于节点去中心化的设想,为这一话题提供了无比广阔的想象空间。
本文作者以知名ZKRollup项目Aztec为例,以近期Aztec Labs提出的名为B52、Fernet的2个提案为切入点,为广大读者解析ZKR如何实现定序器节点的去中心化。
提案B52打算实现以下目标(理想情况下):
1. 去中心化的sequencer网络,由L2节点自己选举每一轮的proposer
2. 去中心化的prover网络,prover节点硬件要求低
3. Rollup整体具备很好的抗审查性.
4.L2产生的MEV价值由L2节点获取
5. L2区块被提交到DA层时,可以获得比较有效的最终性Finality,不可逆转的finality则要等ValidityProof(有效性证明)提交完毕
6. L2 Token可以拥有不错的经济模型
7. L2区块和交易数据都在L2的p2p网络中传播
8. L2继承L1的安全性
该方案将整个L2出块流程划分成三个时间阶段:
Block Proposal Window(BPW)
BlockAcceptance Window(BAW)
State advances
其中,BPW(区块提议)阶段是多个定序器Seuqnecer提出不同的区块并竞争、Prover选择某个备选区块给出投票的过程。
BAW(区块采纳)是Prover给区块构造有效性证明Validity Proof,并将其提交的过程。
Block Proposal Window(区块提议阶段):
BPW可以再细分为Block Proposal, Block Voting, Aggregation三个阶段。
Beosin解析Reaper Farm遭攻击事件:_withdraw中owner地址可控且未作任何访问控制:8月2日消息,据 Beosin EagleEye 安全舆情监控数据显示,Reaper Farm 项目遭到黑客攻击,Beosin 安全团队发现由于_withdraw 中 owner 地址可控且未作任何访问控制,导致调用 withdraw 或 redeem 函数可提取任意用户资产。攻击者(0x5636 开头)利用攻击合约(0x8162 开头)通过漏洞合约(0xcda5 开头)提取用户资金,累计获利 62 ETH 和 160 万 DAI,约价值 170 万美元,目前攻击者(0x2c17 开头)已通过跨链将所有获利资金转入 Tornado.Cash。[2022/8/2 2:54:18]
Block Proposal(BP)阶段中任何人都可以收集交易,并广播自己的BP内容。BP内容会包含三个部分: txs order hash, prover reward percentage, burn token amount
txs order hash: Proposer 从L2的交易池(mempool) 中选择最有价值的一批交易并排序,然后将这批交易的哈希值放进自己构建的区块中。
prover reward percentage: Sequencer分享给Prover的区块奖励百分比
burn token amount: Proposer提议销毁的L2 Native Token数量,接着它将自己提出的BP发送到L2 p2p网络中
Block Voting 投票阶段:
Prover 在p2p网络中接收到不同Proposer提出的BP后,会投票给能让自己获得最多reward的BP。不过投票的组成很特殊:
BitDNS入选火种源计划,将为BitCherry生态应用提供域名解析服务:据官方消息,2021年4月14日,BitDNS成为首批加入BitCherry分布式商业生态的合作伙伴。BitDNS将为BitCherry链上应用提供分布式域名解析服务,实现一键去中心化,帮助企业和个人用户更加便捷、安全的参与数字资产交易,管理链上价值数据信息。BitCherry将携手BitDNS打造去中心化的网络生态系统,建立安全便捷的链上分布式商业生态体系。[2021/4/14 20:18:34]
Vote={BlockHash, Index of Proof Tree}
BlockHash是Prover要投票的Proposal的哈希,而Index of Proof Tree则是Prover要参与构建的Proof Tree的叶子索引值(后面会解释)
Aggregation聚合:Proposer在L2 p2p网络中收集Prover们针对BP的投票,将其聚合并放进BP中,提交到L1上(每个BP一般只包含与自己有关的投票记录)。
在此,需要强调BP被选中并纳入Rollp账本的先决条件:
拥有最高的分数:
SCORE(y) = NUM_PROVERS (x)^3 * BURN_BID(z)^2`
NUM_PROVERS (x)是该BP获得的Prover投票数量,BURN_BID是该BP所提议销毁的L2 Token数量。由于BURN_BID越高,BP提议者最后获得的奖励越少,所以这个数值要设置得当。
同时,该BP需要在Block Proposal Window结束前被提交到L1上,对应的有效性证明Proof要在Block Acceptance Window结束前被上传到L1。
需要注意:BP的分数计算中,投票数量占的比重最大,其次才是burn token的数量。同时,B52方案允许多个proposer(其实就是sequencer)针对一个有效的BP名额展开竞争
B52方案仅需要Proposer(sequencer)在自己的BP中指定burn token的数量(类似于EIP1559的方式)而无需事先stake token,这可以让网络更加permissionless(无准入许可),同时也有利于L2的原生Token产生通缩。
DeFiBox上线Mdex 合约解析功能:据官方公告,Heco 数据合作平台 DeFiBox 现已上线Heco项目Mdex 的合约解析功能,用户通过 DeFiBox 可以直观查看收益率,并根据相关数据进行策略调整,提高了用户体验。[2021/1/27 13:38:26]
此外,BP中不包含完整的交易数据,只包含交易序列的哈希,道理类似于以太坊PBS方案,旨在避免MEV被其他Proposer窥探并抢跑。
Block Acceptance Window(区块采纳阶段)详解:
在Block Proposal Window结束后,Prover需要reveal揭示他们的BP对应的完整交易数据。Prover投票的BP如果被选中的话(分数最高,可通过L1合约查询),它们就需要构造投票时给出的Index of Proof Tree所对应的Sub Proof Tree。
假设Aztec的区块包含2^13=16384的交易数量,并且有2048个prover,那么每个prover构造2^3=8笔交易组成的sub proof tree.然后prover把自己构造的sub proof tree广播到L2 p2p网络中。proposer接收之后,会把所有的sub proof tree聚合成一个block proof。
接着Propsoer将聚合的proof提交到L1的Rollup合约,合约会验证这个proof以及对应状态转换结果的正确性。这里要注意,Prover如果故意不提交proof的话,不仅无法获得Proposer许诺的区块奖励分红,还会被slash,因为要成为Prover是需要提前质押Token的。因此,与Proposer(Sequencer)不同,Prover并不是Permissionless的。
State Advances(状态推进阶段)详解:
在 Block Acceptance Window结束之后,Rollup合约会选择一个分数最高的区块纳入Rollup账本,并且把区块奖励Reward按照Proposer(Sequencer)事先声明的比例,分别发送给Proposer和Prover。
浪潮集团王伟兵:标识解析、标识密码、区块链是构建工业区块链三个技术要素:金色财经现场报道,12月5日,2020世界区块链大会于武汉举办,会上浪潮集团区块链技术研究院首席架构师王伟兵演讲表示,消费互联网是实现人和人的连接的,工业互联网从技术上看更偏重物,工业互联网数量多,管理难度大,面向物的标识解析和密码学适合应用。标识解析的本质是提供名称映射的分布式数据库,构建工业区块链的三个技术要素是标识解析、标识密码、区块链。标识解析需要目录服务、数据共享,标识密码主要做设备身份认证、设备写入链,区块链则增强安全,完成可信交易。[2020/12/5 14:06:24]
以上便是Aztec的B52方案。但本文作者认为,B52提案存在一些潜在问题:
问题一: 假如一个分数最高的区块的validity proof是不完整的。提案中给出的解决方法是,假如Proposer只提供了50%的proof,那么他也只能获得50%的区块奖励,从而确保Proposer没有动力故意不提交完整的proof。同时Prover自己也可以直接向合约直接提交proof。
按照提案的叙述,是可以接受一个区块没有完整交易的validity proof。这点其实是不合理的:因为:zkrollup都是在给出validity proof的同时,才声明这个区块对应的新状态有效。
如果proposer最后提交到L1的聚合proof缺失了某个交易的proof,很显然在这笔交易之后发生的所有交易的状态转换证明都是不成立的(因为交易是顺序执行并且有状态依赖的),我们也就无法确认这个区块对应的新状态是有效的。
因此这个时候,合理的方式应该是进入无限等待的Block Acceptance Window,直到所有交易的proof都提交完成。
问题二:假如得分最高的区块是非法区块(B52方案里也没有解释这点)。BP仅仅包含交易序列的哈希,所以恶意的proposer实际上可以故意构造有问题的交易,比如双花交易。那么这个时候,实际上需要在L1合约增加一个任何人都可以提交illeagal proof的函数, 这个illeagal proof用于证明得分最高的BP是一个非法区块。
并且这种举报应该是有奖励的,我们可以把proposer 发送到合约中的burn token都奖励给提交illegal proof的举报者节点。
有趣的思考:关于叔块和多余的Prover Work: B52方案实际上会在每轮分数最高且有效的BP出现后,把这一轮出现的其他BP(已经提交完整proof)作为叔块,分配一定的叔块奖励。
哈勃公链CTO全面解析项目技术开发进展:据官方消息,近日,哈勃公链(Hubble Chain)首席架构师 Kevin 从美国硅谷视频连线,对目前项目的技术开发进度,进行详尽的汇报解读。
Hubble Chain是一条支持跨链交易且拥有去中心化交易系统的公有链,通过采用H+POR 共识机制、虫洞网络系统,以及底层跨链协议等区块链技术,构建全球区块链智能金融新生态。
2020年5月,哈勃GDP(全球数字支付)计划面向全球正式启动,通过HB跨境兑换、HB全球结算、HB尊享支付,全面实现以HB为价值流通转换的全球化数字货币支付场景的应用落地。[2020/6/5]
这实际上沿用了ETH POW共识机制的做法,为了避免算力过度集中,需要分配一部分出块奖励给未被采纳的区块提出者(矿工),以保障小矿池/个体矿工的利益,避免算力被大矿池垄断。因此采用以太坊表现不错的叔块机制也是一个很聪明的选择。
B52提案在Rollup去中心化方面的意义:Proposer是去中心化且不需要质押的,准入门槛低;但是因为需要自己Build最有价值的区块,以及需要收集其他Prover的投票,并聚合所有Proof,实际上Proposer的硬件门槛没有提案中叙述的那么低(比如带宽可能不会很低)。
所以,最终还是会成为一个比较中心化的网络,类似Mev-Boost Builder,因为最终能出块的proposer往往也是最擅长捕捉MEV的Block Builder。
同时,B52方案里的Prover需要质押资产,但因为仅仅需要生成sub tree proof,相比于那些需要完整生成整个block proof的方案来说,Prover的去中心化程度会更好(硬件要求可以放低了)。
活性Liveness:总体的网络Liveness是不错的,因为L2有自己的p2p网络来广播交易和投票/BP,并且Sequencer和Prover都比较去中心化。但是需要解决我们上面提到的两个问题,一个是得分最高的区块一定是合法的区块,第二个是需要等待完整的block proof提交到L1才能进入一个新状态。所以需要一个更有效的激励机制,避免整个Rollup网络由于缺失某一部分tx proof而无法正常工作(停机)。
抗审查性Censorship Resistance:如果我们能保证任何人都能发布区块提议BP,并且保证不只是Proposer可以提交block proof,那么网络会有很好的抗审查性 。
最终性Finality:L2的finality 跟网络的liveness息息相关,因为最终的verified finality 还是需要等待Block Proof的提交,但实际上你也可以相信一个得分最高的BP对应的区块内容(只要它里面不包含恶意交易)。
这个区块会在Block Acceptance Window 开始时被揭示reveal,意味着作为用户,仅仅需要等待一个Block Proposal Window的时间,你提交的交易所在的区块就可以被采纳。
继承L1安全性:作为一个通过提交validity proof来更新状态的L2,是可以继承L1的安全性。
Fernet 方案简介:通过VDF在每轮出块周期内,为Committee(就是Sequencer节点集合)中不同的节点设定一个预估的分数,最终分数最高的Sequencer提议的区块会成为有效块。
首先,如何加入Committee?实际上需要在L1质押16个ETH,并且在质押操作完成后等待4个L1区块后,加入Sequencer Committee。至于退出Sequencer Committee,则需要调用L1合约里的Unstake函数,之后再过3天才能拿回自己质押的剩余金额。
然后,什么是VDF?Verifiable Delay Function就是可验证延迟函数,该数学函数满足严格的串行执行特性,它会执行一些计算步骤,并至少会消耗一段可预估的时间。我们把VDF算出来的数值记作Score,它满足均匀正态分布,因此当Sequencer算出VDF Score后,就可以判断自己被选中为合法Proposer的概率有多大。
Sequencer的VDF计算如下:
Score = VDF( privatekey , public inputs )
public inputs = { current block number , randao }
randao是一个随机数,用来防止Sequencer提前计算未来所有区块高度下自己的VDF Score
Fernet整个流程主要分为3个阶段:
1. Proposal Phase 2. Proving Phase 3. Finalization
Proposal Phase:PROPOSAL_PHASE_L1_BLOCKS = 2 Ethereum blocks (该阶段会维持2个L1 block的时间)
这个阶段开始,每个Sequencer都会用VDF算出自己在当前出块高度下对应的VDF Score。如果Sequencer认为自己的VDF Score很有可能赢得这次区块的出块权(假设Score满足正态分布),那么他会提交一个Proposal到L1的Rollup合约。Proposal包含:交易序列的哈希、指向哪个之前的L2区块。
unproven block:只提交了Proposal到Rollup合约的区块block contents。接着,Sequencer需要把unproven block对应的 block contents 以及proof of VDF 一起发送到L2的p2p网络中。
ProvingPhase:PROVING_PHASE_L1_BLOCKS= 50 L1 blocks(该阶段会维持50个L1区块,大概10 min)
Prover从L2的p2p网络中接收所有Block Contents中对应的交易,并会为VDF Score更高的区块构建Proof。Proof的构建也是采取多个Prover并行协作的方式(类似B52方案) 。
因此需要Sequencer在最后将多个不同的交易对应的Proof聚合成一个Block Proof(包含VDF Proof),提交到L1的Rollup合约。任何人都可以将已经提交Block Proof的Block Contents提交到Rollup合约上。
Finalization:需要提交一笔L1的交易来Finalize区块,一个最终可以被Finalize的区块需要满足:提交了Block Contents和Block Proof,指向的前一个区块必须是Finalize的。在满足以上条件的基础上,还要拥有最高的Score。
流水线出块机制:需要注意的是,Fernet采用的是流水线出块机制.当第N块的Proposal阶段结束时,第N+1个块的Proposal就开始了(Aptos等公链也有类似的做法)。但对于第N+1个块来说,它需要等待第N个块Finalize后,它才能提交L1的Final Block交易,并且验证通过成为Final Block 。
潜在的攻击维度:假如VDF Score最高的Sequencer故意不在L2 p2p中广播Block Contents, 那么有可能导致区块重组reorg。
reorg的L2区块数量计算:1+PROVING_PHASE_L1_BLOCKS / PROPOSAL_PHASE_L1_BLOCKS =1+50/2=26块
解决方式:增加叔块机制,避免每个L2slot(出块时隙)只有一个完整的候选区块。
Fernet在去中心化上的意义:Sequencer通过质押16个ETH加入Sequencer Committee,准入门槛并不高(但也不低)。Prover不需要任何质押,但假如Prover不生成Proof也没有惩罚。这与B52方案基本是相反的。
活性Liveness:整体网络的 Liveness 是可以保证的,因为VDF+叔块机制可以保证每一轮不止有一个出块者。
MEV:MEV的考量是最特殊的,该方案计划引进PBS,这样作为Sequencer计算出一个高分的VDF Score后,就可以直接找Block Builder构造一个更有价值的区块。
抗审查性Censorship Resistance:Fernet 也将采用跟以太坊一致的PBS机制,因此本质上 Fernet 抗审查的问题等价于以太坊 PBS 的抗审查问题。
极客 Web3
个人专栏
阅读更多
Foresight News
金色财经 Jason.
白话区块链
金色早8点
LD Capital
-R3PO
MarsBit
深潮TechFlow
标签:BLOROOPROPVERBlockchain PropertyProof of AnonOpen Proprietary ProtocolGetaverse
整理:FunBlocks 演讲者:Will Robinson,视频链接本文是AllianceDao的Will Robinson在ETHCC上的演讲全文,由FunBlocks整理.
作者:MARTIN YOUNG,cointelegraph 编译:善欧巴,金色财经分析师认为,现货比特币 ETF、新稳定币的采用以及即将到来的以太坊扩容升级都是可能重新点燃加密货币市场的催化剂.
作者:Terry;白话区块链伴随着「非典型熊市」的不断变换,加密世界中始终不曾褪色的「减半」叙事逐步临近——目前据第四次比特币减半的时间已剩余约 9 个月.
作者:Blockworks Research,编译:金色财经xiaozou最近,几个DeFi OG 项目的代币价格飙升。让我们深入了解一下这些协议的新动向,看看它们都有哪些出色的表现.
作者:Scarlett Wu,Mint Ventures 投资经理距离上一次对 Yuga 生态的回顾已经一年之久,一年前被捧上神坛的 Yuga Labs 仍在常常符合预期、偶尔超预期地交付产品.
来源:Bankless;编译:倩雯,ChainCatcher主持人:Uniswap 很酷,因为每个代币都有自己的交易所,有自己的池子,V2、V3、V4都是如此.