在上海升级后,PoS 共识转型的收尾工作完成,以太坊的 2.0 升级之路也从 The Merge 阶段来到了 The Surge 阶段。目前,以太坊网络亟需解决的就是扩容问题——现在为了维护共识,每个节点都需要存储并验证网络上发生的所有交易,造成的现状就是性能低、费用高、网络拥堵严重。
故事也就讲到了即将到来的坎昆升级。
在 The Merge 之后,以太坊网络分出共识层(Consensus Layer,负责 POS 共识)和执行层(Execution Layer,执行合约代码)。接下来,以太坊将迎来 Cancun-Deneb 升级(也称 Dencun 升级)。其中,Deneb 用来表示共识层的更新,而 Cancun 是指执行层的更新。我们一般以 Cancun 升级(即坎昆升级)来代指这次升级。
这次升级,将通过增加数据存储以及降低交易成本,来提高以太坊网络的可扩展性、安全性和数据可用性,为日后完整的分片网络做准备。
根据以太坊官方资料,坎昆升级将包括五个 EIP,其中以 EIP-4844 为核心内容。
我们将在下一小节中进一步了解 EIP-4844,目前在升级名单中的其它四个 EIP 及相关升级内容分别是:
- EIP-1153:降低链上数据存储的成本,以增强区块空间;
- EIP-4788:改进跨链桥和权益池的设计;
- EIP-5656:一些与以太坊虚拟机(EVM)相关的次要代码更改;
- EIP-6780:消除可能终止智能合约的代码。
坎昆升级预计将于 2023 年下半年进行,目前尚未确定具体日期。而根据以太坊基金会研究员 Alex Stokes 在今年五月份的说法,2023 年 10 月是坎昆升级的预计激活日期。
EIP-4844,又称 Proto-Danksharding,也可以看作 Danksharding 扩容解决方案的先行版本,是以太坊 2.0 更新完成之前的临时解决方案。它旨在通过以太坊节点实现链下数据的临时存储和访问,以满足区块链应用的数据需求。
分片(Sharding)是一种 Layer 1 扩容方案。它将区块链网络分成多个小的区域,即“分片”。每个分片仅包含特定类型地址的状态和交易历史记录,并且这些交易记录与其他分片分离。当分片被激活时,区块链网络的每个节点只存储和处理自己分片内的交易,而不是处理记录整个网络的交易。但是,基于“区块链不可能三角”理论,随着分片带来的可扩展性提高,网络的去中心化和安全性也会相对降低。
Danksharding 则是由以太坊研究员 Dankrad Feist 于 2021 年底提出的一种全新分片设计,这个设计也将取代核心团队最初提出的引入 64 条分片链的想法。
Danksharding 并没有纠结于改进初代分片方案的不足(譬如扩大主链的交易容量),而是专注于提高 Rollups 的数据可用性(Data Availability)。它提出了一个新思路:放弃将所有的数据放到不同的分片链上,转而将所有的数据都放在一起,产生一个超大的区块(区块中的数据会被分散到 256 组)。这样,以太坊 Layer 1 就变成一个统一的结算 & 数据可用性层,专注于解决数据问题,而不同的 Layer 2 团队则可以专注解决各自的 Rollups 开发问题,从而大大地提升扩容的效率。
简单来说,Danksharding 将助力实现“中心化出块、去中心化验证、抗审查性”的美好愿景,也因如此,它被视为目前最有可能突破区块链不可能三角的解决路径。但由于技术层面实现难度较大,因此,坎昆升级中将采用一种短期的、折中的方案,率先上线“先行版 Danksharding”,也就是 Proto-Danksharding。
它由 OP Labs 的 Protolambda 及其团队提出,名称也是由此得来。作为 Danksharding 的先行版本,Proto-Danksharding 将实现许多 Danksharding 中提到的更改,但它并未实际实现分片,所有验证者和用户仍然必须直接验证完整数据的可用性。
在 Proto-Sharding 将要落实的众多更新中,最重要的就是“BLOB”概念的引入,以及它为网络带来的新交易类型(Blob 携带交易)和新收费机制(多维收费市场)。
从名字上就能看出来,Blob 携带交易(Blob-carrying Transaction)就是携带了“Blob”的交易。实际上,它与常规交易也十分类似,只是携带了一个额外的数据块,即 Blob。
什么是“Blob”?它的全称是 Binary Large Object,是一种数据形式,代表从 Layer 2 回传过来的数据,用以和 Layer 1 上的 Calldata 分开。简单来说,Blob 是一个外部临时存储,并没有真正的把 Layer 2 交易数据存储到 Layer 1 中,极大的减免了存储成本——好处就是对于 Layer2,以后的存储成本会更低,速度会更高,利好 Layer 2,可以实现初步的以太坊扩容方案。
目前,Layer 2 上传到 Layer 1 的数据都是 Calldata 的形式,这种数据形式的储存/交易成本很高,且占用 Layer 1 储存空间。相比之下,Blob 数据有着两个鲜明的特点:
官方用一个很形象的比喻来形容 Blob 和以太坊 Layer 1 的关系,即“Sidecar(挎斗摩托车)”。对于一辆挎斗摩托车来说,两边部分虽为一体,统一随发动机启动或停止,但两边也都有自己独立的辅助部分。这表示,Blob 的运转虽然依赖于主链,但某种程度上也平行于主链、具备相当的独立性。
前文提到,Blob 数据将存在共识层节点之中,并且具备生命周期。Blob 数据与 Calldata 数据的耗能与成本不同,自然应当带来一个拥有与 Layer 1 网络不同的 Gas 费机制的新费用市场,这也是 Vitalik 所倡导的 Multi-Dimensional Fee Market。
多维收费市场的目的是建立一个更灵活、更能够动态调整的收费系统,可以根据不同类型的数据和交易需求进行收费的调整,确保定价系统更高效、更公平。
目前,这个多维费用机制的具体细节还并未完整公开。
就升级内容本身来说,Blob 概念的引入为日后以太坊网络的 Danksharding 打下了坚实的基础,同时也推动着以太坊网络进一步迈向 Vitalik Buterin 所倡导的“Multi-Dimensional Fee Market”,用户在 Layer 2 乃至于日后在 Layer 1 中都可以切实感受到交易费用的显著降低。
展望未来,我们将迎来以太坊网络交易费用的大幅减低,网络性能的增强,这都将为 ETH 网络中 Layer 2 生态发展包括应用层的爆发提供重要基础。
而从更现实的角度来说,坎昆升级将利好以太坊 Layer 2,以及仍旧处于热门叙事榜单上的 LSDFi;而关于升级将于十月份上线的消息,则可能会给用户在当下带来一些 DCA their ETH bags 的好机会。