免责声明:本文旨在传递更多市场信息,不构成任何投资建议。文章仅代表作者观点,不代表MarsBit官方立场。
小编:记得关注哦
来源:celestia
原文标题:Learn Modular
本文是基于Celestia 官方教程做的笔记整理和注释。
单片区块链在单个层上同时完成上述的所有事情。
单链和模块化区块链的对比
指将「执行层、结算层、共识层、数据可用性层」四个组件中至少一个组件完全外包给外部链的区块链。
由于在单片链上为数百万或数十亿用户提供服务过于复杂且解决能力有限,人们提出了分片和Layer2 解决方案,后来逐渐演变成模块化区块链。模块化的实现最初方案是rollups,后来这个概念进一步扩大成模块化区块链。
模块化区块链能够最大限度地降低运行节点的成本。
如果区块链可以增加它处理的交易数量,而不会增加节点验证交易的成本,那么它就是可扩展的。模块化区块链堆栈中使用的欺诈证明、有效性证明和数据可用性采样等技术使节点能够比完整节点更有效地验证交易,同时保持同等的安全性。
可扩展性公式定义
主权(Sovereignty):在代币、协议的功能和升级、网络和协议的治理、生态系统的建设和基础设施具有更高的主动权
像Optimint 这样的Rollups “SDK”与Cosmos SDK 相结合将有助于促进新区块链的创建,而无需引导安全验证器集
Celestia 与之前的区块链设计不同,后者将执行作为核心功能,但Celestia 设计者认为执行是新链的工作(指基于Celestia 创建的新链来负责处理执行),而Celestia 专注于基础层(共识和数据可用性),这样可以从基础层缓解单片链的最大瓶颈:吞吐量和状态膨胀。
Rollups 和Celestia 的区别在于Rollups 专注于执行(无结算、共识和数据可用性层),Celestia 专注于共识和数据可用性(无执行和结算)。
数据可用性层对吞吐量的重要性:吞吐量分为数据吞吐量和交易吞吐量,数据吞吐量与数据可用性层密切相关,因为它们的主要工作是为数据提供高容量。
状态膨胀:指支付一次GAS费会让你的数据在以太坊区块链上永久保存,从而导致一个无限的、不断增长的状态,其中甚至有很多无用数据。
最初构建朴素的模块化堆栈是为了向Layer1 提供可扩展性。在这个堆栈中, Layer1 提供所有关键功能,包括执行,而Layer2 只专注于执行。Layer1 允许Layer2 发布区块,同时充当连接Layer2 的枢纽。
在大多数情况下, Layer2 的容量也取决于Layer1 的容量。因此, Layer1 和Layer2 堆栈的这种实现对于可扩展性来说不是最理想的。
优化模块化区块链堆栈可以提供的更多好处,通过模块化区块链将各个功能解耦:
信任最小化桥梁:两个区块链之间的桥梁不需要中间人、委员会或诚实的多数假设来确保资金不会被盗。例子是以太坊和建立在其之上的Rollups 之间的桥梁。
在前两个模块化堆栈中,执行层只专注于执行,并将剩余的功能卸载到其他层。然而,由于模块化区块链的用途很灵活,因此执行层不仅限于将其块发布到结算层。例如,可以创建一个不涉及结算层的模块化堆栈,只涉及共识和数据可用性层之上的执行层。
由于不涉及结算层,因此只有数据可用性层负责为交易排序和数据可用性提供安全性。这使执行层能够获得将共识与执行分离的全部可扩展性优势,因为没有中间层将交易数据转发到基础层(共识和数据可用性层)。
由于模块化区块链仅处理一部分功能,因此可以进行更多的解耦,比如解耦出结算层,可以通过模块化区块链进行结算层的优化和专业化。
模块化堆栈中的结算层可以专注于结算,同时将其余组件(如共识和数据可用性)外包给其他模块化区块链。通过引入欺诈或有效性证明,结算层可以增强轻客户端的安全性,允许他们验证有效或无效块。
站在可扩展性的角度,可以进行执行层、数据可用性层、结算层的模块化划分。
Rollups 本身就是一种区块链,将其块发布到基础层以确保有效性和数据可用性。随着时间的推移,出现了两种主要的Rollup 设计,optimistic 和zk-rollups。
(1) Optimistic Rollups
Optimistic Rollups 将其区块发布到基础层,基础层接收区块并乐观地假设交易是正确的。为了允许在怀疑区块无效的情况下挑战Rollups 块,提供了一个争议窗口(dispute window),如果一个块受到挑战,则使用欺诈证明(fraud proof)来验证它是否无效。一旦争议窗口关闭,就不能对区块提出挑战。
Optimistic Rollups 提供的可扩展性:
(2) ZK-Rollups
对于发布到Layer1 的每个Rollups 区块都会附带一个有效性证明(validity proof),以证明该区块的正确性。一旦验证了有效性证明,交易就被认为是最终的,不需要争议窗口来判断Rollups 区块的有效性。
ZK-Rollups 提供的可扩展性:
通过分离共识和执行,数据可用性层也可以进行可扩展性优化,而不受提供结算层功能的限制。关键技术是数据可用性采样,通过多轮抽样小随机块,它允许节点无需下载整个块来验证可用,从而减少轻节点的带宽。
现在的结算层仍然承受着应用程序及其相应的基于用户的交易活动的负担,这导致结算层挤满了来自个人用户和执行层的交易。结算层可以使用与执行层和数据可用性层相同的技术进行扩展,但目前结算层的扩展效果还不理想。
随着Cosmos SDK 及其相应的共识引擎Tendermint 等SDK 的兴起,与之前的区块链相比,现在已经可以更轻松地创建新的区块链,而区块链创建的下一次演变将由模块化架构实现。例如,一个新的区块链将能够使用SDK 创建,并且能够立即使用现有的模块化区块链。新的区块链可以使用在数据可用性层之上启动的结算层,由于执行层不需要共识机制,因此它们不需要大量的验证集或进行代币分配。新的区块链将能够毫不费力地启动,而无需花费大量时间或金钱成本。
在数据可用性层上启动结算层的区块链像独立的区块链一样具有主权,而结算层之上的Rollups 不具有主权,它们依赖结算层来验证他们的交易。
原始的Rollups 类型的执行层在部署到结算层时,需要对以太坊虚拟机进行兼容。而现在解耦了数据可用性层,可以不处理来自执行层的任何交易或状态更新,仅发布原始交易数据,使得新的Rollups 可以很快地部署到没有兼容限制的数据可用性层。
主权区块链(Sovereign blockchain):通过社会共识对自身及其应用进行独立控制的区块链。主权链有能力应对黑客攻击并推动升级。
现有模块化区块链的产品
责任编辑:Kate