区块链 模块化区块链:承载Web3.0应用的新模式 证券研究报告|行业专题研究 2024年02月24日 自比特币出现以来,区块链的扩展性就是行业发展最基础最核心的议题。从共识机制的探索到多链、跨链,再到脱链/链外计算,都是围绕如何提升区块链拓展性问题进行探索。从计算机程序部署角度来看,模块化是符合计算科学规律的一种探索。即将一个系统或产品分解成若干个独立的、互相连接 的部分,使每个部分都有自己的功能和特点。这些部分被称为模块,它们可以独立开发、测试、部署和维护。通过组合这些模块,可以构建出不同的系统或产品,以满足不同的需求。同时,模块化网络带来更高的灵活性和组合性。不同于单片区块链(Monolithic,如比特币、以太坊等),模块化区块链将系统规范分层,在区块链系统中,这样做极大地简化了系统开发、测试和维护,同时增强了灵活性和可扩展性;从功能上分为四层:执行 (execution)、结算(settlement)、共识(consensus)、数据可用性(dataavailability)。系统任务的执行由不同分层网络结合完成。 Celestia是一个模块化的数据可用性网络,专注于数据可用性(DA)层,为数据可用性问题提供可扩展的解决方案。可以根据用户数量安全地扩展,极大降低区块链启用门槛。Celestia通过将执行与共识解耦,并引入独特的 数据可用性采样来进行扩展。CelestiaDA层的两个关键功能是数据可用性采集(DAS)和命名空间Merkle树(NamespacedMerkleTrees,NMT)。这是区块链扩展解决方案的关键:DAS使轻节点在不下载整个区块链数据的前提下能够验证数据可用性;NMT使Celestia上的执行层和结算层能够仅下载相关的交易数据,提升性能。在模块化分层部署时,Celestia具有高度的灵活性和组合性。开发者可以根据应用程序的需求,灵活地在模块化的分层区块链网络中部署程序。例如,考虑到分叉的情况,开发者可以将执行层和结算层部署在自己的主链上(即主权汇总模式,Sovereignrollup);也可以考虑将结算层部署在自己的主链之外(比如其他桥链上),当然,更方便的方式是将结算层和共识层部署在以太坊上,自己的主链负责执行层,配合采用Celsetia这类数据可用性模块化网络,这样增强对以太坊的对接性能(当然,跨接以太坊网络的摩擦成本也更低)。 MantaPacific利用了Celestia提供的数据可用性层,利用PolygonSDK构建自己的ZKEVM,受益于其Layer2Rollup设计,保证了安全的L2状态转换和可靠性。这种模块化的部署,增强以太坊的可扩展性,特别是交易速度,另一方面降低gas费用并保持去中心化和安全性。利用Celestia的 数据可用性(DA),MantaPacific提供了一个极快的基础设施,以最小化信任的方式解决L2数据可用性问题,成本比其他L2网络低80%,显著降低用户在MantaPacific生态系统中与DApp交互的gas费用。根据官网数据,截止2024年1月29日,Manta网络TVL(总锁仓资产)17.9亿美元,链上交易超过1400万笔,生态项目196个,显示出较强的潜力。 风险提示:模块化区块链技术研发不及预期;监管政策的不确定性;Web3.0商业模式落地不及预期。 增持(维持)行业走势 通信沪深300 32% 16% 0% -16% -32% 2022-0 作者 分析师宋嘉吉 执业证书编号:S0680519010002邮箱:songjiaji@gszq.com 分析师任鹤义 执业证书编号:S0680519040002邮箱:renheyi@gszq.com 相关研究 1、《通信:央企带头推进国产算力,加速建设智算中心》2024-02-21 2、《通信:AI关键词“OpenAI入局算力、Sora与 RTX-AI”》2024-02-17 3、《通信:AI算力正当时——北美云厂商财报综述》 2024-02-04 请仔细阅读本报告末页声明 内容目录 1.核心观点3 2.模块化是区块链演化的重要趋势4 2.1模块化是区块链发展的现实需要4 2.2模块化区块链的架构与运行机制5 3.模块化网络代表项目:Celestia、Manta9 3.1Celestia:模块化的数据可用性网络9 3.2Manta:零知识(ZK)应用程序的多模块生态系统10 风险提示12 图表目录 图表1:公链通往Web3.0之演进历程4 图表2:脱链/链下计算的核心是与主链完成共识验证5 图表3:不同于单片区块链,模块化区块链将系统工作进行功能分层6 图表4:模块化区块链的三类典型工作模式7 图表5:模块化区块链各分层生态现状8 图表6:Celestia模块化架构示意图9 图表7:Celestia在模块化分层中不同的部署方式10 图表8:Manta利用多模块网络提供ZKEvm应用程序平台11 图表9:Manta在模块化网络中的技术构架11 1.核心观点 自比特币出现以来,区块链的扩展性就是行业发展最基础最核心的议题。从共识机制的探索到多链跨链,再到脱链/链外计算,都是围绕如何提升区块链拓展性问题进行探索。从计算机程序部署角度来看,模块化是符合计算科学规律的一种探索。即将一个系统或产品分解成若干个独立的、互相连接的部分,使每个部分都有自己的功能和特点。这些部分被称为模块,它们可以独立开发、测试、部署和维护。通过组合这些模块,可以构建出不同的系统或产品,以满足不同的需求。同时,模块化网络带来更高的灵活性和组合性。 本文从模块化区块链的发展趋势、代表项目等方面对模块化区块链进行了研究和探讨。 2.模块化是区块链演化的重要趋势 2.1模块化是区块链发展的现实需要 面对日益增长的数据和运算工作量,公链在扩展性方面的演化是行业一个绕不开的终极问题。围绕性能的升级,公链的演进大致经历了如下历程: 1)共识机制的探索。共识机制经历了从POW到POS机制,再到各类POS机制的改进版本,无非是想解决公链的扩展性问题。但无论怎样的共识机制,完成一致性的共识势必牺牲系统的工作性能,这是牢不可破的不可能三角; 2)跨链试图以多链来承载应用。跨链则是为了考虑一条公链不能适用于所有场景,需要多个公链来解决数据承载和计算运行。例如,波卡(Polkadot)作为一个可伸缩的异构多链系统,能够传递任何数据(不只限于代币)到所有区块链,实现各个链之间资产与数据的互相流通。这对于区块链网络的扩展性和应用多样性来说非常重要,单独一条区块链的性能毕竟有限,且在专用和通用之间难以平衡。同时,束缚行业的不可能三角(即扩展性、安全和去中心化不可能同时达到)也要进行相应的平衡。 图表1:公链通往Web3.0之演进历程 资料来源:国盛证券研究所整理 3)Off-chain(脱链计算、链外计算)来解放主链负担。从以太坊2.0的分片到L2网络,全部工作无非围绕如何解放主链负担来进行。即,繁重的数据计算交给主链之外进行——可能是分片这类划分任务群组的方式,或者L2、甚至是非区块链系统来承载数据计算,最终结果返回到主链存证。主链的一致性共识提供数据结果的验证,保证充分的去中心化和安全,而繁重的数据计算交给主链之外的平台进行。 4)区块链构架模块化。模块化是指将一个系统或产品分解成若干个独立的、互相连接的部分,使每个部分都有自己的功能和特点。这些部分被称为模块,它们可以独立开发、测试、部署和维护。通过组合这些模块,可以构建出不同的系统或产品,以满足不同的需求。模块化区块链就是应用了模块化设计思想的区块链系统。这一点类似类似互联网协议分层,模块化氛围分执行层(ExecutionLayer)、结算/共识层(SettlementLayer/ConsensusLayer)、数据可用性层(DataAvailabilityLayer,DA)。 对于目前最火热的分片、L2和链外计算,其思路就好比是货物运输管理严格的主干道(一致共识),不可能所有数据都跑在主干道上,支路的运输车辆,通过零知识证明等手段证明自己工作严谨、可信的前提下,可以将繁复的乡村毛细小路上的货物打包装箱后运行在主干道上。如何向主链证明其数据结果可信,则要借助零知识证明、TEE等灵活的技术手段,以适应不同的工作场景。 图表2:脱链/链下计算的核心是与主链完成共识验证 资料来源:国盛证券研究所整理 模块化继承了分片、L2和链外计算的思路,从设计思想和构架上采用另外一种规范化思路,试图打造一种标准的范式,能够使Web3.0世界得到更广泛的采用。 2.2模块化区块链的架构与运行机制 不同于单片区块链(Monolithic,如比特币、以太坊等),模块化区块链将系统规范分层,在区块链系统中,这样做极大地简化了系统开发、测试和维护,同时增强了灵活性和可扩展性;从功能上分为四层:执行(execution)、结算(settlement)、共识(consensus)、数据可用性(dataavailability): 1)执行层(ExecutionLayer):执行层负责接收和处理用户发起的交易请求。它包括智能合约的执行环境和虚拟机,负责验证和执行交易中的智能合约代码; 2)结算层(SettlementLayer):结算层负责记录和管理交易的资金流动。它跟踪和管理账户余额,确保交易的资金转移是正确且可信的; 3)共识层(ConsensusLayer):共识层负责解决区块链网络中的节点之间如何达成一致的问题。它确保在分布式环境下,所有节点对于交易和区块的顺序和内容达成一致,从而实现去中心化、不可篡改和安全可靠的交易和数据存储; 4)数据可用性层(DataAvailabilityLayer):数据可用性层负责存储和维护区块链上的数据,以确保数据的可用性和可信性。它负责将交易和相关数据存储在区块链中,并通过网络广播给所有节点。 图表3:不同于单片区块链,模块化区块链将系统工作进行功能分层 资料来源:celestia,国盛证券研究所 以一个基于区块链技术的金融交易系统为例,倘若Alice想要向Bob转账100个数字货币。 执行层: Alice在她的钱包应用程序中创建了一笔转账交易,并将其发送到执行层。 执行层接收到交易后,首先会验证该交易的有效性,包括检查Alice的余额是否足够支付以及交易是否符合规则。 验证通过后,执行层会执行交易中的智能合约逻辑,将100个数字货币从Alice 的账户转移到Bob的账户。 共识&数据可用性层: 执行层生成了一笔有效的转账交易后,共识层使用共识算法来选择一个节点作为区块的创建者。 当该节点解决了工作量证明或权益证明的问题并生成了新的区块后,它将区块广播给其他节点。 其他节点对其进行共识验证,一旦大多数节点都同意该区块是有效的,共识层将该区块添加到区块链上,完成交易确认和共识达成。 数据可用性层会将新的区块存储在本地副本中,并与其他节点进行数据同步。参与者可以通过查询数据可用性层来访问和获取区块链上的交易和相关数据。 结算层: 一旦交易被确认并添加到区块链中,结算层开始跟踪账户余额的变化。 结算层会更新Alice和Bob的账户余额,将100个数字货币从Alice的账户减去,并加到Bob的账户中。 通过分层,模块化区块链在灵活性和组合性方面也有着显著的特点,有三种典型的工作模式: 1)优先考虑系统的去中心化和安全性,通过Rollup作为执行层提升扩展性,其他功能依赖主链(Layer1层)实现。Rollup需要利用欺诈或有效性证明,综合零知识证明等技术实现与主链的数据协同,这种模式下,安全和去中心化主要依赖于主链; 2)第二种方法称为Validium,依旧利用Rollup作为执行层,其特点是交易及有效性证明并不在主链(Layer1层)处理,可能在其他区块链甚至是非链系统,进一步提升扩展性; 3)第三种方法称为“SovereignRollups”,这方式将结算和执行任务