在2022年5月20日的以太坊上海Web 3.0开发者峰会上,以太坊创始人Vitalik表示,在以太坊成功合并后,第一项重大事件可能是实施EIP-4844,即Proto-danksharding,而Proto-danksharding则是另一个系列升级——Danksharding的第一步。而在9月15日合并顺利完成后,包含EIP-4844等的后续升级也终于开始提上议程。
上海升级是以太坊合并后的第一个最重要的升级,将会包括解锁质押的ETH等关键项目,预期可能在2023年内正式进行。2022年11月24日,以太坊开发者在社群会议中表示,将包括EIP-4844在内的8项EIP纳入到上海升级的考虑范围内。同时,Vitalik也再度发推,重申EIP-4844的落实将会成为以太坊大规模降低Layer 2费用的关键开始,使得用户能够负担得起直接使用链上应用的费用,而不再需要依赖于其他CeFi中介。
那么到底什么是EIP-4844,它对于整个以太坊生态又有哪些重要的意义呢?本文将带您详细解读这些问题。
以分片和Rollup为核心的扩容方案
今年9月份完成的合并实际上只是通过迁移到PoS机制解决了以太坊的能耗问题,而没有真正解决以太坊网络处理能力不足的问题,真正能够为以太坊提供更高处理性能的实际上是后续才会部署到网络上的分片(sharding)。目前,在合并(The Merge)阶段顺利完成后,以太坊已进入The Surge(腾飞)阶段,即利用分片技术大幅提高可拓展性。
图源: Vitalik的推特
为了最终解决区块链不可能三角带来的矛盾,以太坊已经规划了以分片和Rollup技术为中心的扩容方案,扩容完成后,以太坊的交易处理能力将会大大提升,目前手续费高居不下的问题也将得到解决。分片技术与信标链同步上线,共同构成以太坊2.0的基本架构。分片技术属于Layer 1扩容方案,信标链则将起到沟通各大分片链的作用。以太坊分片链是同构的,在整个“信标链+分片链”结构之外,再连接到各种异构的Layer 2。
在这一未来的系统中,信标链位于核心地位,除了给整个以太坊提供权益证明(PoS),形成共识层外,还起到与其他分片链交联(Crosslink)进行同步的作用。信标链如同心脏一般,通过持续12秒的时隙(Slot)和由32个时隙组成的时段(Epoch)协调整个网络。此外,信标链还通过产生随机数给分片链分配验证者,为各大分片链提供了统一的安全保障。每一个时隙,信标链都会从验证者中随机选择一个节点,使之成为区块提议者(Block Proposers)。对于分片链来说,每个时隙也会产生一个区块提议者。每一个时段,信标链还会将验证者均匀分配到各个时隙中,再从各时隙验证者中随机选出每组至少128个节点,成为验证委员会(Committees)来见证区块,判断信标链区块和分片区块的有效性。
分片技术是什么
分片技术来源于数据库分片技术,目前所说的分片技术也主要是数据分片(data sharding)。
以太坊信标链计划首先连接64条分片链,其处理能力保守估计是以太坊1.0的64倍,而在最初规划中,分片链的数量可达1024条。
其中,各大分片链相对独立,以太坊地址将根据其开头的几个字母分为多类,每一分片处理来自同一类地址的交易。因此,每个节点只需要储存以太坊网络上所有交易的一部分,并且只验证自己负责的这部分。
图:以太坊分片示意图
而节点如果需要用到存放在其他节点上的数据,则可以通过信标链进行沟通协调,主要是获取其他分片的哈希根,但为了避免对信标链产生较大负担,这种通信6分钟进行一次。同时,信标链还通过产生随机数,起到给分片链分配验证者的工作,这样信标链也为各大分片链提供了统一的安全保障。
分片技术可以在牺牲较少安全性的情况下,获得极大的性能提升。
分片为Rollup提供数据容量
目前以太坊所使用的分片技术是数据分片,每条分片链只起到提供数据容量的作用,而不负责交易的处理,也不承担运行智能合约。实际上,后面两种将由Layer 2,尤其是各大Rollup项目承担。
Rollup指将一批交易信息汇总到一个交易的调用数据内,然后周期性地打包到区块提交至各大分片链(Layer 1)完成记录。在目前的规划中,每个分片约能够为Rollup提供250kB的专用数据容量,64个分片即可达到16MB的容量。将来运用的分片数量越多,Rollup可以使用的数据容量也越大,运行成本也将越低。
什么是Danksharding
自2016年以太坊的分片扩容方案诞生以来,相关分片技术方案也在不断迭代,其中最主要的一个变化就是从完全执行分片转化为较为简单的数据分片。Danksharding则是此前以太坊开发组所推崇的扩容解决方案,以开发组成员Dankrad Feist的名字命名,旨在兼顾去中心化与安全性的条件下完成扩容。
Vitalik等人认为未来如果没有某个单一Rollup技术能够占据全部市场,出现各种Rollup并存的局面,那么由于跨域MEV(cross-domain miner extractable value opportunity)的存在,多个Rollup存在复杂的交易与套利机会,最终也会形成少部分人为谋取MEV控制整个区块链系统产块的状况。
由于中心化的区块产出是难以避免的,破局思路只能是将区块构建者与提议者的角色分离开,即提议者-构建者分离(PBS)。区块构建者为了获得最大利润,在交易池中按gas fee由高到低排序并构建区块内容,继而向提议者(即验证者)出价,提议者则只能选择出价最高的人创建区块。但在此前的分片设计中,各大分片和信标链都是独立进行验证的,这成为落实PBS的阻碍。
Danksharding正是围绕跨域MEV阻力的问题进行重新设计,以对抗MEV导致的中心化趋势。在Danksharding分片中,信标链将会包含所有区块,数据将由委员会统一认证。在这种新的设计下,分片系统得到大大简化,Layer1和Rollup之间可以直接同步,分片提供给Rollup处理用的数据容量将会更大,延迟确认问题也得到了避免。
“权宜之计”:Proto-danksharding
尽管数据分片(Danksharding)有望成为以太坊实现扩容的“最优解”,但其真正实现却面临着诸多技术和商业上的难关。而因此,一个能够提前上线暂时缓解性能问题的权益之计就显得至关重要。
2022年3月19日,以太坊创始人Vitalik Buterin在推特上分享了他本人关于EIP-4844(即Proto-danksharding)的常见问题回答。在提案中,Vitalik等人提出使用新的Proto-danksharding作为以太坊分片的早期设计,为Rollup项目创造更多数据空间,同时为未来的数据分片开辟前路。该提案有望降低以太坊网络对于储存和内存的性能要求,并可能将所有Rollup手续费降低到当下水平的百分之一。
图:Twitter@Vitalik.eth
从本质上来说,包括Proto-danksharding在内的EIP-4844实际上是一个过渡方案。在完全的数据分片到来,将以太坊信标链每区块的数据可用性空间拓展到16MB之前,EIP-4844能够将每区块可用空间拓展到最大2MB。“Proto-”这个前缀表示“最初的”、“原始的”,而Proto-danksharding则是指在Danksharding正式上线之前的“初始版本”。由于Danksharding在技术上的实现难度较大,正式部署可能还需要几年时间,而能够尽快上线的Proto-danksharding则可以在分片正式部署之前解决以太坊网络拓展性不足的燃眉之急。而在Danksharding实施后,以太坊的可拓展性有望再达到一个新的高度。
全新的Blob携带交易
EVM是一种基于栈的虚拟机,其作用是为以太坊提供一个供智能合约代码运行的沙盒环境,并且通过Gas Fee消耗调配网络中宝贵的运算资源。在EVM中,Call date(调用数据)就是一种重要的储存资源,而在Layer 2交易产生的费用中,使用Call Data的费用占到了很大比重。在EIP-4844之后,Layer 2数据不再需要储存在昂贵的Call Date之中,而是以独特的Blob数据形式进行储存,这种新的交易形式被称作“Blob携带交易“(blob-carrying transaction)。
Blob-carrying交易是Vitalik此前提出的一种新的交易形式,能够大幅减少调用数据(Call data)的消耗,降低Rollup的消耗。Blob-carrying交易将会附带一个Blob额外数据块,这一数据块大小可达125kB,将会储存在信标链上。Blob-carrying交易无法被EVM执行层访问,而只能被检视,但用户和验证者能够下载Blob数据。因此,EIP-4844也被称作Shard Blob Transactions。Rollup将利用这些Blob中的空间,将压缩的交易数据储存在其中。
不过需要指出的是,Proto-danksharding只是为未来的数据分片(即danksharding)补全了网络逻辑和规范,即便在Proto-danksharding更新后,以太坊网络也不会连接任何实际运行的分片。在Proto-danksharding中,所有验证者和用户仍然必须直接验证完整数据的可用性。因此,以太坊将会为Blob数据设置储存时限(可能是30天~90天之间),以减少对于共识节点的负担,这些历史数据在未来可能会有Rollup项目各自储存在BitTorrent或IPFS上。
结语
图源:eip4844.com
据网站eip4844.com,EIP-4844将有如下六大优点:利于Rollup、更低的Gas Fee、向前兼容、存在于信标节点中、减少硬盘使用、缩短Blob数据存储时间。预期于2023年,EIP-4844将在上海硬分叉升级后正式部署到以太坊系统中。升级完成后,Arbitrum、Optimism等Layer2项目有望受益。
届时EIP-4844将可能成为以太坊发展历史上的又一大重要节点,同时为未来的完全分片开辟道路。