以太坊:以太坊分片设计简史:从Block到Blob

来源:?@protolambda推文

作者:Protolambda

从“Block”到“Blob”,这其中涵义深刻。

带有“crosslink”的可执行的“分片链”被淘汰了:在信标链中实现EVM;使用“数据可用性采样”的以rollup为中心的以太坊路线图,扩容以太坊基础层而无需增加应用环境的复杂性。但是,你如何在没有区块元数据的情况下调用分片内容呢?

好吧,这就是“blob”派上用场的地方。“Blobspace”真是一个不错的叫法!

让我来分享一些以太坊分片设计的历史吧:

分片(或“阶段1”)按之前的计划应该是在“阶段2”(即信标链执行环境)推出。但在“阶段0”(信标链启动)之前,主网EVM具有优先权这一情况变得清晰,而“阶段2”执行层(ewasm?)的推出遥遥无期。

以太坊 NFT 徽章应用程序 POAP 完成 1000 万美元融资:1月19日消息,以太坊 NFT 徽章应用程序 POAP 宣布完成 1000 万美元融资,由 Archetype 和 Sapphire Sport LLC 领投,Collab Currency、1KX、Libertus Capital、Red Beard Ventures、6th Man Ventures、Delphi Digital、A Capital、Sound Ventures、Advancit Capital 和 The Chernin Group等机构参投。

据悉,POAP(代表“出席证明协议”)是一款基于以太坊的应用程序,活动组织者可以使用它以 NFT 的形式发放出席证明。据该公司称,这些徽章是使用 ERC-721令牌标准铸造的,迄今为止已铸造了超过 200 万个 POAP。[2022/1/19 8:58:05]

“阶段1”的规范在信标链之前已经重写了多次:

美国纽约一酒吧老板出售两家餐厅仅接受比特币和以太坊支付:1月11日消息,美国纽约一家酒吧老板Patrick Hughes正在出售其Hellcat Annie和Scruffy Duffy两家餐厅,以换取比特币和以太坊。Hughes表示,愿意以大约25个比特币或800个以太坊出售。(CoinDesk)[2021/1/11 15:49:07]

更少的分片(1024->64)

借助理想的跨分片通信(crosslinksbqfa)实现自由骑行

新的托管证明设计(去掉托管部分,转而采用罕见的故意证明丢失)

更别说更早期的分片研究工作了,实话说,那些研究都非常抽象以及雄心勃勃:跨域消息传递、带有ewasm的执行环境、动态访问的无状态性、分片委员会等等都让L1变得更加复杂。而L1已经开始僵化了。

但是,如果L1只专注于解决数据问题,那么上述提到的大多数问题都转化为L2的开发问题。而采样(sampling)正好解决了L1数据问题。如果我们可以在网络层支持额外的功能...会如何呢?

以太坊上DeFi协议总锁仓量突破180亿美元:据欧科云链OKLink数据显示,截至今日11时,以太坊上DeFi协议总锁仓量约合180.1亿美元。其中锁仓量排名前三的协议分别是Maker 25.9亿美元(+0.39%),WBTC 22.4亿美元(+0.9%)以及Compound 17.2亿美元(+0.79%)。[2020/12/15 15:14:23]

因此在2020年10月14日,开发者就”阶段1的网络连接问题(networking)“进行了一次电话会议。讨论下来可以得出:gossipsub热度很高+DHTs似乎很慢。但在当时,这些为时还早——每一个网络开发者都还在忙着为信标链的发布做准备(12月1日!),而且由于当时的最新情况,网络层存在很明显的偏向。

当时的偏向:

Gossipsub=炙手可热,主网准备就绪(除了一些DoS问题之外,没有多大问题了。并且这些问题也在主网启动之前发现/披露了)

数据:以太坊非零地址数量再创新高 达4188.77万个:GlassNode数据显示,余额大于零的以太坊地址总数再创新高,达4188.77万个。前高点 41,88.4,8万出现在2020年6月20日。[2020/6/21]

Discv5=不完整,需要在主网启动前从5.0->5.1进行实时网络迁移

(https://github.com/protolambda/discv5-catdog)

但方向似乎很明确:减少L1复杂性,信标链已经够复杂了。只通过数据提高可扩展性,长期来看使用“数据可用性采样”方案,并拥抱L2扩容解决方案。因此Vitalik将其描述为《以rollup为中心的以太坊路线图》(中文版)。

然而,当实现者忙于信标链的发布时,研究人员已经忙于发布后的工作了:Vitalik/Dankrad当时致力于一些早期的数据可用性设计草案,试图让实现者更加容易理解这些原理。

动态 | 以太坊区块链上Dapps的日常活跃用户已被Kin超越:据Sludgefeed报道,以太坊区块链上所有Dapps的日常活跃用户已被Kin超越。根据在Kin区块链中监控用户活动和交易的Kin Explorer中发现的数据,过去24小时内,Kin区块链上有8364个活跃用户,而以太坊DApps上有7700个活跃用户。Kin的活跃用户主要来自两个主要应用程序:Kik messenger beta和Kinit。[2018/8/20]

同时,我们启动了Zinken、Toledo和Pyrmont测试网+检查更多的启动事项(检查漏洞等)。并且我们尝试跟上研究的进度,并开始针对网络层上的东西添加设计文档。就当时来说,关注这些问题还太早了,但DAS(数据可用性采样)实在太好了,没办法忽视。

基于gossipsub的一些东西,我确实写了一些想法,把它用于DAS。事后看来,我现在倒认为DHTs比Gossipsub更加适合DAS,也许除了初始分配。

当时我期望一些DAS的规范能够被实现和模拟。我想这是“blob”首次被提到?我们确实在“分片数据blob”这样的上下文中使用过它,而且那时分片的规范中还没出现过这个词。

信标链发布之后,又有了更多的时间,然后我写了一个草案,在Vitalik和Dankrad写的采样规范草案中加入了更多typing和网络层的内容。将blob命名引入分片的规范:)

2021年一些事情发生了改变:为其设计的理想的p2p结构太复杂了,所以我转而尝试为它贡献工具(go-kzg)和参与早期的合并工作(rayonism)。然后在夏天再次尝试加入分片的研究工作,而不是参与Altair/London升级的开发工作。

Blob又出现了,这次它的结构更加PBS化——聚合了blob-构建者和blob-提议者的BLS签名。但还是太复杂了:因此,分片设计的演进方向变得主要“以信标提议者为中心”,这样设计使得其“仅”成为一个网络层的问题。

这在某种程度上就像是对分片的第五次设计?极简主义要舍弃掉很多东西,但结果确是美丽且强大的:更多的模块化设计、封装以及可选的复杂性。Rollup引起了我的注意,尤其是Optimism。

2022年底,EIP4488(注意不要搞混了,不是4844!)和4490出现了:人们开始变得不耐烦,calldata的成本必须快速降低以保持竞争力!伦敦升级之后的AllCoredevs上对这些话题的讨论也变得很热烈。但在我看来这是不可持续的,因为calldata带有L2不需要的传统开销。

同时,Vitalik和Dankrad继续研究一些新的分片设计:更加以信标链为中心、只通过数据进行扩容、专注于采样方案。我觉得“danksharding”在21年底/22年初真正公开出来?不是很确定第一个版本是哪个了,Dankrad一直都在研究分片。

22年初,Vitalik提出了两种方法,我们可以在不使用采样的情况下,向完整的danksharding发展:简单版本和复杂版本。虽然在我看来,这其实就是“重EL(执行层)”以及“EL和CL分离,更容易和未来兼容”之间的区别。

我喜欢第二个方案,然后在EthDenver2022期间,我们实现了EIP-4844:我和@lightclients致力于Geth;@asn_d6帮助研发KZG;@adietrichs致力于费用市场的研究;并且都和Vitalik/Dankrad一起起草一份EIP。Prysm团队构建了首个CL原型。

现在4844被命名为"proto-danksharding":实现完整分片的前提条件。但是“blobspace”才是真正的模因:经过许多次分片的设计迭代之后,这是比任何其他分片设计都更接近达到以太坊愿景的一个版本。

对我来说,Serenity这个阶段就是完成所有PoS和分片设计以及迭代更新的工作。我们已经在信标链以及类似于协议外PBS这些开发上获得一些进展,让我们在PoS方面有了一个不错的开始。我想现在是时候对分片进行首次升级了:4844!

还有一些对未来danksharding的热点:

L1数据包含延迟对L2的影响被高估了。

为了获得更多数据可用性的带宽,值得权衡的设计空间。

Gossip和TCPDHTs不好,UDPDHT类的覆盖很好:这都是关于轻节点的计数(什么时候进行discv5扩展?)

更多danksharding的热点:

采样很大程度上依赖于良好的对等节点,希望看到更多评分优先但健壮的设计。

宁愿选择轻量级的通信和更多的女巫,而不是缺乏p2p上的验证者隐私。

ZK可以成为未来p2p抗女巫的技术,但现在来说似乎还远着。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-1:12ms