tl;dr:如果「TheMerge」进展顺利,分片将成为以太坊在2023年及之后的开发主轴,而距离2015年分片被提出,其含义已经发生了很大变化。在Vitalik提出「以Rollup为中心的以太坊路线图」和以太坊的「Endgame」之后,以太坊的大方向发生了事实上的转变——「退居幕后」,作为Rollup的安全性保证和数据可用性层。Danksharding和Proto-Danksharding是一系列的技术组合,表现形式在于「发现问题」、引入或提出新技术来「解决问题」的一套组合拳。时间线拉长到未来几年,Rollup的整体价值将变大:以太坊上呈现多Rollup的发展格局、跨Rollup基础设施高度完善、Rollup生态高度繁荣——甚至超越以太坊本身。引言
图片来源转眼2022年已走过一半。我们回看Vitalik在2018年Devcon演讲中提出的SerenityRoadmap,容易发现以太坊的发展路径几经更迭—对比当前的路线图,分片被赋予新的含义,eWASM亦少有人提及。为了避免潜在的欺诈和用户误导问题,今年1月底,以太坊基金会宣布弃用「ETH2」的说法,而是把当前的以太坊主网改称为处理交易和执行的「执行层」,把原ETH2的说法改称为协调和处理PoS的「共识层」。
当前,以太坊官方的路线图涵盖了三部分内容:信标链、合并与分片。其中,信标链作为以太坊向PoS迁移的前置工作,以及共识层的协调网络,于2020年12月1日启用,迄今已运行近20个月。合并指当前以太坊主网与信标链的最终合并,也即执行层与共识层的统一,标志着以太坊正式迁移到PoS。在IOSG的文章「黎明将至:以太坊合并近在咫尺」中,我们介绍了合并相关的重要进展:当前以太坊Ropsten与Sepolia测试网成功完成了合并,紧接着是Goerli的合并;如果一切顺利,意味着我们离主网合并不远了。
图片来源本文我们将着重讨论分片。原因在于:其一,假定主网合并能够在年内顺利实现,那么分片将紧随其后,作为2023年以太坊的开发主轴。其二,以太坊分片的概念最早由Vitalik在2015年的Devcon1中提出,此后GitHub的ShardingFAQ中提出了分片的6个发展阶段。然而,随着以太坊路线图的更新和相关EIP的推动,分片的含义和优先级都产生了很大变化。当我们在讨论分片时,需要先确保对其含义的理解达成一致。综上两点,梳理清楚分片的来龙去脉是很重要的。本文将着重讨论以太坊原分片、Danksharding和Proto-Danksharding的由来、进展和未来路线,而非具体到每个技术细节。关于Danksharding和Proto-Danksharding的详细内容,可参考IOSG此前的文章:「扩容杀手锏Danksharding会是以太坊分片的未来吗」、「EIP4844:即将开启L2交易费降低可预见的洼地效应」。QuickReview
Google身份验证器iOS版本新增支持云同步功能:4月25日消息,Google 身份验证器的 iOS 端应用推出 4.0 版本,新增支持云同步功能,用户可将验证器生成的验证码同步至所有的 Google 账号和设备,即便丢失设备也可随时获取验证码。[2023/4/25 14:25:17]
这篇文章中将会多次提到Rollup、数据可用性和分片。我们在这里快速回看一遍三者的基本概念。
当前主流Rollup分为zkRollup和OptimisticRollup。前者基于有效性证明,即批量执行交易,依赖密码学证明SNARK来保证状态转换的正确性;后者「乐观地」假设所有状态转换是正确的,除非被证伪;即需要一段时间窗口来确保错误的状态转换能够被发现。
数据可用性对zkRollup和OptimisticRollup都非常重要。对前者而言,用户可以基于数据可用性重建二层的所有交易,以确保抗审查;对后者而言,需要使二层的所有数据都被发布,没有被隐藏任一交易。至于当前数据可用性面临的瓶颈与相应的解决方案,在下文中会提到。
图片来源以太坊全节点对EVM的完整状态进行存储,并参与所有交易验证,这样确保了去中心化和安全性,但随之而来的是可扩展性的问题:交易线性执行,且需要每个节点进行逐一确认,这样无疑是低效的。此外,随着时间推移,以太坊网络数据不断积累,运行全节点的硬件要求随之水涨船高。全节点数量下降将引发潜在的单点故障,并削弱去中心化的程度。直观地看,分片相当于分工合作,即对所有节点进行分组,每笔交易只需要由单组节点进行验证,并定期向主链提交交易记录,以此实现交易的并行处理。采用分片使得在提高可扩展性的同时,也降低了单组节点的硬件要求,从而解决上述两个问题。原分片
图片来源以太坊原方案中有64个分片,每个分片中都有独立的提议者和委员会,提议者是被随机选择的一个验证者,收集交易并进行排序;委员会是一组验证者的集合,每隔一定时间被随机分配到各个分片上,并验证交易的有效性,如果委员会的2/3投票通过,则调用验证者管理合约向信标链提交交易记录。区别于下述的「数据分片」,这种分片也被称为「执行分片」。背景
前Blockstream CSO:以太坊向PoS过渡将使监管机构更容易控制网络:8月21日消息,前 Blockstream 首席战略官 Samson Mow 近日在社交媒体上发表对以太坊合并相关看法,他认为以太坊的问题在于其往往优先考虑 Token 经济学,而不是去中心化,因此随着向权益证明(PoS)网络过渡,监管机构将更容易控制网络继而加剧监管捕获(regulatory capture)风险。
Samson Mow 表示,将验证者的最低门槛设置为 32 ETH 会限制验证者的数量,此外,66% 的验证者需要遵守 OFAC 规定,他们存入质押的 ETH 无法提取(因为提取功能未被编码),所以与工作量证明(PoW)共识机制相比,PoS 网络其实更加中心化。[2022/8/21 12:38:47]
在聊Danksharding之前我们不妨先花点时间了解其背景。个人猜想,Danksharding推出的社区氛围基础主要来自Vitalik的两篇文章。这两篇文章为以太坊的未来发展方向定下了基调。首先,Vitalik于2020年10月发表了「以Rollup为中心的以太坊路线图」,提出以太坊需要在中短期内对Rollup进行集中支持。其一,以太坊基础层扩容将聚焦于扩大区块的数据容量,而非提高链上计算或IO操作的效率。即:以太坊分片旨在为数据blob提供更多空间,以太坊无需对这些数据进行解释,只确保数据可用。其二,以太坊的基础设施进行调整以支持Rollup。长远来看,以太坊的未来应该作为安全性高的、人人可处理的单一执行分片,以及可扩展的数据可用性层。
图片来源此后,Vitalik在2021年12月发表的「Endgame」中描述了以太坊的最终图景:区块产出是中心化的,但区块验证实现去信任且高度去中心化,同时确保抗审查。底层链为区块的数据可用性提供保证,而Rollup为区块的有效性提供保证。类似于Cosmos的多链生态,以太坊的未来将是多Rollup共存的——它们都基于以太坊提供的数据可用性和共享安全性。用户依赖桥在不同Rollup之间活动,而无需支付主链的高额费用。上述两篇文章基本确定了以太坊的发展方向:优化以太坊的基础层建设,为Rollup服务。以上论点也许基于这样一个看法:既然Rollup已经被验证有效并且得到良好的采用,那么「与其将花上几年时间等待一个不确定且复杂的扩容方案,不如将注意力放在基于Rollup的方案上」。在此之后,Dankrad提出了新分片方案Danksharding。以下我们把Danksharding的具体技术组成拆分出来理解。Proto-Danksharding
货币研究机构Ebury:美联储或放慢加息步伐 欧元料受提振:7月5日消息,随着美国通胀可能放缓,美联储可能会放慢加息步伐,这或会为欧元提供一些支撑。Ebury市场策略主管Matthew Ryan表示,现在认为美联储不太可能再次加息75个基点,这至少对欧元和风险资产总体而言是温和的利好,尤其是考虑到市场预期在7月27日的FOMC会议上有约四分之三的几率以此幅度加息。随着食品和能源价格停止上涨,甚至在某些情况下有所下降,通胀可能在未来几个月有所缓解。(金十)[2022/7/5 1:51:03]
图片来源Proto-Danksharding提出的背景在于,虽然Rollup方案对比以太坊主链而言显著降低了交易费用,但还没有到足够低的理想程度。这是由于以太坊主链上提供数据可用性的CALLDATA仍然占据较大的花费(16gas/byte)。在原先的设想中,以太坊提出在数据分片中提供每个区块16MB的专用数据空间给Rollup使用,但距离数据分片的真正实施仍旧遥遥无期。今年2月25日,Vitalik和DankRad等提出了EIP-4844提案,也即Proto-Danksharding,旨在以简单、前向兼容的方式扩展以太坊的数据可用性,使其在Danksharding推出之后仍然可用。该提案的改动仅发生在共识层上,不需要执行层的客户端、用户和Rollup开发者进行额外的适配工作。Proto-Danksharding实际上并未执行分片,而是为将来的分片引入了一种称为「Blob-carryingTransactions」的交易格式。这种交易格式区别于普通交易在于其额外携带了称为blob的数据块,使区块实际上变大,从而提供比CALLDATA更加廉价的数据可用性。然而,「大区块」的普遍问题是对磁盘空间的要求不断累加,采用Proto-Danksharding将使以太坊每年额外增加2.5TB的存储量。因此,Proto-Danksharding设置了一段时间窗口,在此之后对blob做删除操作,用户或者协议可以在这段时间内对blob数据进行备份。即,以太坊的共识层仅仅作为一个高度安全的「实时公告板」,确保这些数据在足够长的时间里是可用的,并使其他用户或协议有足够的时间来备份数据,而非由以太坊永久保留所有的blob历史数据。这么做的原因是,对存储来说,每年新增的2.5TB不在话下,但对以太坊节点却带来不小的负担。至于可能导致的信任假设问题,实际上只需有一个数据存储方是诚实的来存储这部分历史数据。那么,有没有激励来推动第三方对这些数据进行存储呢?笔者暂时没有发现激励方案的推出,但Vitalik本人提出了几个可能的数据存储方:针对应用的协议。它们可以要求节点存储与应用相关的历史数据,如果历史数据丢失,会对这部分应用造成风险,因此它们有动力去做存储;BitTorrent;以太坊的PortalNetwork,这是一个提供对协议的轻量级访问的平台;区块链浏览器、API提供者或者其他数据服务商;个人爱好者或者从事数据分析的学者;TheGraph等第三方索引协议。Danksharding数据可用性采样
币安NFT市场将于7月8日拍卖AmazingDoge总统NFT:据官方消息,币安NFT市场将于北京时间7月8日上线AmazingDoge总统NFT,采用拍卖形式。
据悉,总统NFT是AmazingDoge元宇宙中最高等级的稀有NFT。
AmazingDoge是一个web3.0+社交的元宇宙项目,结合了NFT,GameFi,Defi,社交的生态场景,玩家通过抽取获得金融类NFT或游戏类NFT,通过质押,升级,合成等多种方式赚取收益,此前于今年6月完成300万美元的融资,BSCFA领投。[2022/7/4 1:49:50]
图片来源在Proto-Danksharding中我们提到新的交易格式使得区块实际上变大了,并且Rollup也累积了大量数据,节点需要下载这些数据来保证数据可用性。DAS的想法是:如果可以把数据分为N个块,每个节点随机地下载其中的K个块,就能验证所有数据是否可用,而无需下载所有数据,这样就能大大减少节点的负担。但如果某个数据块丢失了怎么办?仅仅通过随机下载K个块很难发现某个块丢失了。为了实现DAS,引入了纠删码技术。纠删码是一种编码容错技术,基本原理是把数据分段,加入一定的校验并使各个数据段之间产生关联,即使某些数据段丢失,仍然能通过算法将完整的数据计算出来。如果把纠删码的冗余比例设置为50%,那么意味着只需要有50%的区块数据可用,网络中的任何人就可以重建所有区块数据,并且进行广播。如果攻击者想要节点,则必须隐藏掉超过50%的区块,但只要进行多次随机采样,这种情况几乎不会发生。……既然节点不下载所有数据,而是依靠纠删码来重建数据,那么首先需要确保纠删码被正确编码,否则用错误编码的纠删码当然没法重建数据。这样,进一步引入了KZG多项式承诺,多项式承诺是一个「代表」多项式的简化形式,用于证明多项式在特定位置的值与指定的数值一致,而无需包含该多项式的所有数据。Danksharding中通过采用KZG承诺来实现对纠删码的验证。如果我们可以把所有数据都放在一个KZG承诺中当然很省事,但是构建这个KZG承诺,或者一旦有部分数据不可用,重建这个数据——两者的资源要求都是巨大的。而同样为了降低节点负担从而避免中心化,Danksharding中把KZG承诺进行了进一步的拆分,提出了二维KZG承诺框架。当我们依次解决上述问题之后,依靠DAS,节点或者轻客户端只需要随机下载K个数据块,就能够验证所有数据是可用的;这样一来,即便引入「大区块」之后,也不会过多地加重节点的负担。区块提议者与构建者分离
动态 | 跨ETH/EOS/TRON/IOST四大公链,DApp活跃度排行榜:据 DAppTotal 06月10日数据显示,过去一周,综合对比ETH、EOS、TRON、IOST四大公链的DApp生态情况发现:总用户量(个): EOS(152,963) > ETH(98,813) > TRON(79,467) > IOST(15,929);总交易次数(笔):EOS(29,280,520) > TRON(4,895,991) > IOST(2,449,554) > ETH(537,537);总交易额(美元):EOS(118,441,801) > TRON(74,270,061) > ETH(36,520,987) > IOST(2,990,696);跨四条公链按用户量TOP3 DApps为:Endless Game(EOS)、Hash Baby(EOS)、ERC20-USDT(ETH);按交易次数TOP3 DApps分别为:Hash Baby(EOS)、TRONbet(TRON)、Dice(EOS);按交易额TOP3 DApps分别为:EOSREX(EOS)、TRONbet(TRON)、EOSJacks(EOS)。[2019/6/10]
在当前情况下,PoW矿工和PoS验证者既是区块构建者,又是区块提议者——在PoS中,验证者可以用MEV的利润获取更多新的验证者席位,从而有更多机会去实现MEV;此外,大型验证池显然比普通验证人有更强大的MEV捕获能力,这样导致了严重的中心化问题。于是,PBS提出把Builder和Proposer进行分离。PBS的想法如下:Builder们构建一个排好序的交易列表,并且把出价提交给Proposer。Proposer只需要接受出价最高的交易列表,且任何人在拍卖的获胜者被选出之前,无法知道交易列表的具体内容。这种分离和拍卖的机制引入了博弈和Builder之间的「内卷」:毕竟每个Builder捕获MEV的能力不尽相同,Builder需要权衡潜在的MEV利润、以及拍卖出价之间的关系,这样实际上减少了MEV的净收入;而无论最终Builder提交的区块是否能够顺利产出,都需要向Proposer支付竞价的费用。这样一来,Proposer相当于分享了一部分MEV的收入,削弱了MEV的中心化程度。以上介绍了PBS在解决MEV方面的优势,而引入PBS还有另一个原因。在Danksharding中,对Builder的要求是:在1秒左右计算出32MB数据的KZG证明,这需要32-64核的CPU;并且在一定时间内以P2P的方式广播64MB的数据,这需要2.5Gbit/s的带宽。显然验证者无法满足这样的要求。于是PBS把两者分开,Proposer仍然作为一般验证者节点,负责选择交易列表,并广播区块头;而Builder作为一个专门的角色,负责上述工作和构建交易列表。
图片来源去年10月,Vitalik提出了双SlotPBS方案,但具体的PBS方案仍然在讨论中。抗审查列表
图片来源但PBS也带来一个问题,如果某个Builder总是出最高价来赢得拍卖,那么他实际上有了审查交易的能力,可以选择性地不把某些交易包含在区块中。为此,Danksharding进一步引入了抗审查列表crList,即Proposer有权利指定一个交易列表,这个交易列表必须被Builder所包含;在赢得拍卖后,Builder需要证明crList中的交易都已经被包含在内,否则该区块将被视为无效。小结
图片来源把上述的数据可用性采样、区块构建者和提议者分离以及抗审查列表组合起来,就得到了完整的Danksharding。我们发现,「分片」的概念其实已经被淡化了,尽管保留了Sharding的叫法,但实际上的重点已经放在对数据可用性的支持上。那么Danksharding对比原分片有哪些优势呢?在原分片中,每个单独的分片都有其提议者和委员会,分别对分片内的交易验证进行投票,并由信标链的提议者收集所有投票结果,这项工作很难在单个Slot内完成。而在Danksharding中只在信标链上存在委员会,由这个委员会来验证信标链区块和分片数据。这相当于把原来的64组提议者和委员会简化为1组,无论是理论还是工程实现的复杂度都大大降低了。Danksharding的另一个优点是,以太坊主链和zkRollup之间有可能实现同步调用。上文我们谈到,在原分片中信标链需要收集所有分片的投票结果,这会产生确认的延迟。而在Danksharding中,信标链的区块和分片数据由信标链的委员会进行统一认证,也即同个信标区块的交易可以即时访问分片的数据。这样激发了更多可组合性的想象空间:例如StarkWare提出的分布式AMM,能够跨L1/L2进行Swap或共享流动性,从而解决流动性碎片化的问题。在Danksharding得到实施之后,以太坊将变成Rollup的统一结算层和数据可用性层。ClosingThoughts
在上图中,我们对Danksharding进行一个总结。综上,我们大致可以看到,未来的2至3年内,以太坊路线图的指向性是非常明显的——围绕服务Rollup而展开。尽管在此过程中路线图改动与否仍然是未知数:Danksharding预计将在未来18-24个月内实现,而Proto-Danksharding将在6-9个月内实现。但至少我们明确了Rollup作为以太坊的扩容基础,占据着一定的主导地位。根据Vitalik提出的展望,在此我们也提出一些预测性思考和猜想:一是类似Cosmos的多链生态,未来以太坊上将出现多Rollup的竞争格局,由以太坊为它们提供安全性和数据可用性的保证。二是跨L1/Rollup基础设施将成为刚需。跨域MEV将带来更加复杂的套利组合,类似上述提到的dAMM带来更丰富的可组合性。三是多Rollup的生态应用将超越以太坊本身。由于以太坊的定位退居其次,作为Rollup的数据可用性层,我们猜测更多的应用会迁移到Rollup上面去做;或者至少在以太坊和Rollup上面同时做应用。参考材料:https://consensys.net/blog/blockchain-explained/the-roadmap-to-serenity-2/https://www.web3.university/article/ethereum-sharding-an-introduction-to-blockchain-shardinghttps://ethereum-magicians.org/t/a-rollup-centric-ethereum-roadmap/4698https://vitalik.ca/general/2021/12/06/endgame.htmlhttps://notes.ethereum.org/@vbuterin/proto_danksharding_faqhttps://twitter.com/pseudotheos/status/1504457560396468231https://ethos.dev/beacon-chain/https://notes.ethereum.org/@vbuterin/pbs_censorship_resistance#How-does-proposerbuilder-separation-PBS-workhttps://notes.ethereum.org/@fradamt/H1ZqdtrBFhttps://cloud.tencent.com/developer/article/1829995https://medium.com/coinmonks/builder-proposer-separation-for-ethereum-explained-884c8f45f8ddhttps://dankradfeist.de/ethereum/2021/10/13/kate-polynomial-commitments-mandarin.htmlhttps://members.delphidigital.io/reports/the-hitchhikers-guide-to-ethereumhttps://vitalik.ca/general/2019/09/22/plonk.html原地址
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。