有段时间没见了,朋友们别来无恙,甚是想念;新朋友可以关注下之前的文章,希望能让你们有所收获;
Mr.bug | !loves,公众号:Sharding LabWeb3 世界的底层逻辑③ - DAO 万物,万物道
我们能够创造一个通用区块链吗,以摆脱比特币区块链只能交易的窘境;
2013 年,Joseph Lubin 回多伦多看望家人,无意间联系了 Anthony Di Iorio,Anthony 提到了一个叫Vitalik Buterin的人,这 3 人日后成为了以太坊的联合创始人(补充:联合创始人还有其他);
0x01
web3 新基建是以太坊,或新的王炸
3 的世界景象是应用市场还未完全拉开序幕,公链市场一度繁荣,看似坦途一片,但往往静水深流,特别是公链市场,基础建设在流动性,资本,网络效应的战场上已是杀声震天。本质上,在 3 里,依然会是一个赢家通吃的世界,特别是公链,最后的胜出者将会拥有一切,捕获所有的流动性 + 资本 + 网络效应;
古老的以太坊以惊人的毅力依旧散发着耐人寻味的魔力,着实让我感叹Vitalik 的天才意识,由于以太坊基金会的非营利性,多位联合创始人先后退出以太坊,而Vitalik 不为财富,只为了心中的梦,带领以太坊一路披荆斩棘,别人只能看见现在,而他能看到未来;
从可见的时间来看,以太坊成为 3 里基础建设的工业标准的事实似乎似乎难以推翻,先看一组生态数据来佐证这个说法;

以太坊主链的TVL占全网 L1/L2 链 TVL 的58%;

以太坊收入从 2022 年 1 月的3900 万增加到目前的28 亿,增幅71 倍,其中为抗通胀依据EIP-1559销毁了24 亿;

基于以太坊deFi协议的 TVL 达到了惊人的673.2 亿;

基于以太坊的现货和永续合约 DEXs 交易量达到了450 亿;

每日以太坊地址活跃度达到了51 万;

以太坊生态波及广泛,很多以太坊的有力竞争者为了扩展生态都离不开与以太坊兼容,本意是想让以太坊 DApp 无缝迁移,殊不知,从另外的角度又助长了以太坊的声威。
以太坊以自身的先发优势,结合不断迭代的技术改进赢得了这些恐怖的数据,真是让其他 L1/L2 口水直流,以太坊公链的价值已经超过在其生长的所有应用的价值总和,说明此时此刻 3 的世界本质还是公链世界,也是投资的首要方向,这个时代仍然处于基建时代;
但是,以太坊真的能横扫公链市场吗,这个超级市场会产生真正的垄断者吗,从目前的态势来看(3 的早期),似乎还是为时尚早,但是留给这个领域玩家的时间已然已经不多了,在今后 2-3 年,如果以太坊能够抓住解决区块链三难问题(“去中心化”、“安全”、“可扩展性”是所有公链都必须面对的挑战)的时间窗口,那么以太坊最有可能统治 L1 市场,至少占有相当地位,到时,其他公链市值会面临大幅度缩水,新老 DApp 会更倾向选择以太坊。

区块链“三难”
溢价能力
以太坊在远古时期推出并不能成为日后称霸的筹码,那为什么在创立 7-8 年之后仍然有其地位。我认为每个公链都是自带代币属性的,通过为生产安全而发行的代币控制着整个网络,甚至生态;
由此,代币的可持续性,稳定性与溢价能力就成为了每个公链梦寐以求的能力,这是加密货币中最稀缺的能力,目前比特币占大头,以太坊次之,其它的公链忽略不计。BTC,因为它创立之初就不是为应用建设而生,大概率只能是公认的价值储备加密货币,但不排除在生态上的发展,本次先不展开聊。
以太坊的PoW 设计提供了其安全性机制,大量的矿机与持币者建立起了算力生态与资本生态;试想,如果一条链的资产价值增加了 1 倍,那么安全预算也会相应增加 1 倍。1 倍后的价格意味着网络可以在相同的发行量下获得高1 倍的安全能力。
区块 728 万至今:2 ETH(2018 年,通过 EIP-1234 调整);
2021 年,EIP-1559 开始通过烧毁回收多余的 ETH 进一步减少市场供应,升级为 PoS 后,发行量将进一步减少 90%+,这将直接催生二级市场代币溢价,以太坊希望发行最少数量的 ETH 以达到所需的安全性,这是一个正反馈循环。
可组合性和网络外部性
可组合性是处理组件之间相互关系的系统设计原则,一个高度可组合的系统提供了可选并能够以各种方式组合的组件,以满足特定的用户要求
网络外部性是每个用户从使用某产品中得到的效用与用户的总数量正相关。用户人数越多,每个用户得到的效用就越高。在以太坊上的网络外部性尤为明显,扎实的用户基础使得以太坊在长时间内作为应用开发的首选平台。
时间效应
如果可以制造安全感,你就可以拥有一切,用户和资金,BTC 和 ETH 本质就是提供了安全感;如果安全对某链来说是昂贵的,那么某链的选择就是有限的。为了向大型资本提供者证明自己足够安全,新的链也将不得不面对时间的考验,加速研发其与以太坊差异化竞争的安全技术。
0x02
绕不开的扩容,必须击碎的痛
以太坊的迅猛发展离不开以太坊虚拟机,这玩意不仅能够执行交易,还可以运行应用程序,随着越来越多的应用构建,越来越多的用户参与到以太坊,生态油然而成,以至对以太坊的性能要求大大超出以太坊本身能力范围,导致gas 费用大幅增加,交易也变缓慢,体感有些崩溃,使得日常投资者几乎无法承担使用该网络的成本。
其实,早在 2020 年的 DeFi Summer 就冲击了以太坊的规模极限。从那时起,EVM 的网络效应已经分化成许多不同的方向,新的 L1,甚至许多 L2 都打破了 EVM 的标准,以突破性能瓶颈。
以太坊逐步被戴上效率低下的系统帽子,也迫使一些用户回到传统金融或其他生态系统。当前,ETH 每秒可以进行大约15 笔交易,这与 VISA 5 万 + 水平相去甚远。

0x03
可能的突围方向
分片 (sharding) 是一种链上水平扩容方案,是当前众多 L1 扩容方案中被公认为最有前景的,可以增加区块链高效处理的活动量。
分片本质上是一种并行计算或者是计算负载均衡,原本网络中的验证者都干着同质化的工作,如果能让他们分工完成不同的任务,那单位时间内处理的任务数自然就增多了,根据具体分工对象的不同,分片可被进一步划分为网络分片、交易分片、状态分片等,分片和“PoW 转 PoS”共同构成了以太坊 2.0(以太坊合并)核心中的核心;
以太坊区块链后续会被分割成更小的链,即所谓的分片链 (shards),这些分片链将并行运行,并最终通过信标链 (Beacon Chain) 连接在一起。每条分片链将通过一个节点子集来运行,这些节点将检查数据可用性。
这种系统确保了任何人都可以使用标准的消费级硬件来运行网络节点,同时提高网络的可扩展性。此方案将能够显著增加 TPS,并通过创建新的分片或链条来减少整体网络拥堵。每个分片将能够与其他分片无缝通信进行交易。

数据同步
处理新分片链,就需要拥有新分片链的状态和对应的交易数据,这需要进行一次大范围的网络节点数据同步,这是相当复杂的,也是风险极高的,我前面提到过现实网络的糟糕,所以很难保证验证者们能够在规定时间完成数据同步,而且随之而来的用户体验似乎也是一个难题。
数据有效性

考虑一种情况,即由于恶意验证器无效地生成块 B,并凭空铸造 1000 个代币;然后,恶意验证者根据 B 块的结果生成一个新的块 C,有效地隐藏了错误块 B;接着,恶意验证者可以执行将这 1000 个代币到另一个分片的交叉分片交易。因此,从第二个分片的角度来看,看似“恶意创建”的代币现在完全有效。

这种情况的可能有效解决方案是将分片排列在一个无向图中,其中每个分片都有邻居分片。每个分片只允许与邻居分片进行交易。如果分片需要与非邻居分片进行交易,则事务在多个分片之间路由,其中每个分片中的节点必须验证分片中的所有块以及邻居的块。当然,这又引出了另外一项计算密集型任务,也不能完全解决恶意验证者损坏多个分片的问题。
这类问题的终极解决是采用防欺诈证明或 zk,先抛出一块砖。
数据可用性
典型的 L1 区块链中的节点一般分为两种角色:全节点和轻节点。
全节点是下载整个块并验证每个事务的节点;
轻节点是仅下载块的元数据(也称为块头)以及事务的状态,并使用 Merkle 证明从事务中调用数据的节点。
数据可用性指的是区块生产者(矿工 / 验证者)必须公布并提供他们生产区块的交易数据,以便全节点可以检查他们的工作。如果区块生产者不提供这些数据的话,全节点就无法确保生产者是否在遵守区块链规则。
随着区块链的扩容,下载数据并做验证对节点的性能要求也会越来越高,这会导致去中心化程度的降低。去中心化程度一旦降低,全节点的作恶概率会增加,如果一些全节点决定生成无效的块,他们只需要将虚假块的哈希发送到轻节点,就可以愚弄轻节点;
回到分片方案,分片中的验证者是全节点,而包括信标链在内的其他参与者将是轻节点。
链上扩容的可见终极武器,不要被 DankSharding 里面带了 sharding 骗了,这个方案并不是分片扩容方案,而是上述三类挑战的解决方案,以保障分片扩容方案得以执行。
DankSharding 方案的核心可分解为中心化的出块 + 去中心化的验证 + 抗审查性。
通过数据可用性采样(DAS),大大降低参与网络验证的成本,保持了网络验证的去中心化
通过出块者 - 打包者分离(PBS),原先维护以太坊所有历史状态数据的全节点,被进一步划分成两个角色:出块者(Proposer)和打包者(Builder)。这不仅为大量数据包的传输提供了可能,也解决了 MEV 问题。
通过抗审查清单(Crlist),避免了交易被审查的可能性。
数据可用性抽样(DAS)
一种减轻节点验证数据可用性的方案。其设计思想是通过一定的数学设计,让验证节点只需要检查部分数据分片,就可以从概率上证明一个大数据块的可用性,而不需要验证节点去检查全量的数据。这样,对验证节点的性能要求就大大降低了。

Danksharding 使用RS 编码和 KZG 承诺来实现数据可用性抽样,为了降低重构数据的难度 ,又设计了2D RS 编码,关于编码涉及数学知识较多,本文不多赘述,基本思想就是在网络传输中增加了数据冗余性,在网络丢包情况下,也能从部分数据中恢复全量数据;

数据的冗余性增加后,又引出一个恼人的挑战,即如何使得编码器在不向验证器披露原始数据的情况下,证明它确实按照预先设定的多项式规则编码?

一般情况下,我们可以通过Merkle 根来承诺大量的数据,这对于证明在一个集合内包含一些数据是非常高效的,但如果让所有的原始数据和扩展数据都位于同一个低阶多项式上,Merkle 根就不能证明这一点。
所以,如果使用 Merkle 根方案,就还需要欺诈证明或 ZK(Celestia 走的是欺诈证明路线),以防出现错误的验证。
事实上,这个问题确实是 ZK 典型的应用场景,但是考虑到ZK 的复杂性与 EVM 兼容性等问题,链上方案在急需扩容的压力下是不可能选择 ZK 的。
所以,KZG 方案横空出世,KZG 根是一个多项式承诺(Merkle 根是一个向量承诺),优点是省略了防欺诈证明的安全性对诚实少数和同步假设的需要。

出块 / 打包者分离(Proposer-builder Separation)
现在的以太坊中的全节点,同时承担了“打包者”和“出块者”两个角色,即他们既要构建区块的内容,也要负责对出块进行验证 + 投票,而在 PBS 中,这两个角色是分开的;
原先的全节点若仍想参与区块打包,配置要求将进一步提高,转变为“打包者”;它们通过竞价的方式,来争取下一个区块的打包记账权。
从众多低配置要求的验证者中,轮换随机选出一个“出块者”;根据 MEVA(Maximal/Minter Extractable Value Auction)来选哪一个“打包者”获得真正的记账权,并即刻获得“打包者”的竞价作为收益。
打包者完成打包以后的区块,依然需要全体验证节点来进行验证,以决定其是否合法、有效;但无论验证结果怎样,“出块者”的收益都是已经实现、不需要退回。
通过这种角色分离,就解决了当前的 MEV 价值分配问题:打包者依然可以通过交易排序,提取 MEV。
但在一个有效市场中,区块打包者们会开始“内卷”,出价到它们能从区块中提取的全部价值(减去它们的摊销成本,如硬件开支等)。而所有的这些价值,都分配给了去中心化的验证者们、而不是那些中心化的打包者们,这符合以太坊发展的理念。

抗审查清单(crList)
如果区块打包者可以故意忽略某些合法的交易怎么办?抗审查清单(crList,Censorship Resistance List)就是用来解决这个问题的,它要求出块者指定一个在存储池中看到的所有符合条件的交易列表;区块打包者在出价的时候需要证明自己看到了这个列表,打包的时候需要强制包含列表中的交易;

0x04
未完待续
没脸没皮的啰嗦 er
如果觉得文章不错,请这样 |
|
关于我们关注&标星 | 不迷路
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。
