IMI:Jump Crypto:详解各类区块链扩容解决方案_ORA

作者:RahulMaganti,JumpCrypto合伙人

原标题:《AFrameworkforAnalyzingL1s》

编译:胡韬,链捕手

介绍

在上一篇文章中,我们建立了一个分析L1的框架,特别是考虑到最近已经建立了无数的新链。我们还简要指出,许多这些新颖的L1背后的动机主要集中在寻找区块链可扩展性的解决方案。让我们仔细看看其中的一些解决方案。在这篇文章中,我们的目标是:

提供各种第1层和第2层扩展解决方案的概述。沿着一些核心维度分析和比较这些不同的解决方案。给出我们对哪些扩展架构最有前途的看法。可扩展性三难困境

在2017年初的一篇博客文章中,VitalikButerin提出了可扩展性三难困境,指的是定义区块链系统可行性的三个主要属性:去中心化;(2)安全;(3)可扩展性。??

在这三个方面,我们认为在不过度损害其他两个支柱的情况下,可扩展性仍然是最难解决的问题。安全性和去中心化对于这些系统的性能仍然至关重要,但正如我们稍后将看到的,解决扩展分布式系统的挑战也为去中心化和安全性提供了关键突破,这是出于非常根本的原因。因此,我们强调有效扩展区块链的能力将是更普遍地决定加密行业未来成功的关键因素。

从广义上讲,扩容有两种主要类别:第1层和第2层。两者对于增加区块链的吞吐量都是相关的和关键的,但侧重于Web3堆栈的不同方面甚至层。在过去的几年里,扩容无疑得到了很多关注,并且经常被吹捧为大规模采用区块链技术的关键途径,尤其是在零售用途不断攀升和交易量增加的情况下。

第1层(L1s)

第1层很少有主要的扩展架构脱颖而出:

状态分片并行执行共识模型的改进有效性证明状态分片

分片有很多种,但核心原则始终保持不变:

分片分配验证和计算的成本,因此每个节点都不需要验证每笔交易。分片中的节点,就像在更大的链中一样,必须:中继交易;(2)验证交易;(3)存储分片的状态。分片链应通过以下方式保留非分片链的安全原语:有效的共识机制;(2)安全证明或签名聚合。?分片允许将一条链拆分为K个不同的独立子网或分片。如果网络中总共有N个节点,则有N/K个节点操作K个子网中的每一个子网。当给定分片中的一组节点验证一个区块时,它会给出一个证明或一组签名,声称该子网是有效的。然后所有其他节点,S-{K_1}需要做的就是验证签名或证明。。

Sei基金会:跨链空投的合格钱包数将从50万个增加到150万个:8月17日消息,Sei基金会宣布因需求旺盛,将跨链空投的合格钱包数量从50万个增加到150万个,包含来自以太坊、Polygon、Arbitrum、BNB Chain、Solana、Optimism、Osmosis链的用户。[2023/8/17 18:05:48]

要理解分片的扩展优势,关键是要理解这种体系结构在增加链的总计算能力方面提供的价值。现在,假设一个节点的平均容量为C:O。假设链需要处理B块。非分片链的计算能力是微不足道的O;然而,由于分片链可以并行处理块,因此分片链的容量为:O。一般来说,运行时节省的成本是倍增的!这里可以找到Vitalik更深入的技术解释。切分是以太坊2.0和近几年发展路线图中最显著的基础组件。

并行执行

分片和并行执行在许多方面是相似的。虽然分片尝试在不同子链上并行验证区块,但并行执行侧重于将处理各个节点交易的工作分开。这种架构的效果是,节点现在可以并行处理数千个合约!

我们不会详细介绍其工作原理,但这里有一篇很棒的文章,更深入地介绍了Solana中并行执行如何通过Sealevel工作。

共识模型

共识是第1层区块链协议的核心——对于要在链上最终确定的交易/数据,网络中的参与者需要一种就链状态相互达成一致的方式。??因此,随着新交易的添加和链的进展,共识是确保共享状态一致性的一种手段。然而,不同的共识机制也可能导致我们衡量区块链性能的关键指标出现根本差异:安全性、容错性、去中心化、可扩展性等等。然而,单独的共识模型并不能决定区块链系统的性能。不同的共识模型适用于不同的扩展机制,最终可以确定特定网络的功效。

第2层(L2s)

从根本上说,第2层扩展基于第1层上的资源变得异常昂贵的前提。为了降低用户、服务和其他社区参与者的成本,应将繁重的计算负载移至链外,同时仍试图保留第1层上的加密和博弈论原语提供的底层安全保证

这方面的早期尝试主要涉及在链下两方之间建立“可信通道”,然后在第1层完成状态更新。状态通道通过“将区块链状态的某些部分锁定到由一组定义的参与者控制的多重签名合约中”来做到这一点。Plasma链由Vitalik首先在本文中提出:允许创建无限数量的侧链,然后使用欺诈证明来完成第1层上的交易。

dYdX将于7月6日推出dYdX Chain公共测试网:6月29日消息,去中心化交易所dYdX宣布将于北京时间7月6日凌晨1点推出dYdX Chain公共测试网。届时将测试的功能包括连接钱包、查看订单簿、下单和查看账户信息等。在启动时,公共测试网将只支持比特币和以太坊市场,但dYdX计划未来通过网络升级支持超过30个市场。dYdX Chain是基于Cosmos建立的区块链,共有5个里程碑,目前已经完成了4个。其目标是在9月推出主网,完成第5个里程碑。[2023/6/29 22:06:45]

Rollup

Rollup也是一种将计算移至链下,同时仍记录消息或交易在链上的方式。原本会在第1层记录、挖掘和验证的交易在第2层记录、汇总和验证,然后发布到原始第1层。该模型实现了两个目标:释放基础层的计算资源;(2)仍然保留第1层的底层密码学安全保证。

交易被“汇总”,然后传递给由Sequencer排序的的收集箱合约交易存储在L2上的合约执行链外合约调用然后,合约将新状态的Merkle根作为calldata发回L1链OptimisticRollup

验证者将在先验假设它们有效的情况下将交易发布到链上。如果他们这样选择,其他验证者可以质疑交易,但肯定不是必须的。。然而,一旦发起挑战,两方就被迫参与争议解决协议。

在高层次上,争议解决算法的工作原理如下:

Alice声称她的断言是正确的。Bob不同意。然后Alice将断言分成相等的部分然后Bob必须选择他认为断言的哪一部分是错误的递归运行步骤1-3。Alice和Bob玩这个游戏,直到子断言的大小只是一个指令。现在,协议只需执行此指令。如果Alice是正确的,那么Bob就会失去他的股份,反之亦然。可以在此处找到对Arbitrum争议解决协议的更深入解释。

在Optimistic的情况下,成本很小/恒定O。在有争议的情况下,该算法在O中运行,其中n是原始断言的大小。

这种Optimistic验证和争议解决架构的一个关键结果是,OptimisticRollup有一个诚实方保证,这意味着要使链安全,协议只需要一个诚实方来发现和报告欺诈行为。

Zero-KnowledgeRollups

在当今的许多区块链系统和第1层中,共识是通过有效地“重新运行”交易计算来验证链的状态更新来实现的。换句话说,要在网络上完成交易,网络中的节点需要执行相同的计算。这似乎是一种验证链条历史的幼稚方法—确实如此!那么问题就变成了,有没有一种方法可以确保我们可以快速验证交易的正确性,而不必在大量节点上复制计算。嗯,是的!这就是ZKrollups派上用场的地方——实际上,它们确保验证的成本大大低于执行计算的成本。

现在,让我们深入了解ZK-Rollups如何在保持高度安全性的同时实现这一目标。在高级ZK-rollup协议中包含以下组件:

ZK验证者?-验证链上的证明。ZKProver?-从应用程序或服务中获取数据并输出证明。链上合约-?跟踪链上数据并验证系统状态。已经出现了大量的零知识证明系统,尤其是在去年。有两种主要的证据类别:SNARK;(2)STARK,尽管他们之间的界限每天都变得越来越模糊。

我们不会讨论ZK证明系统现在如何工作的技术细节,但这里有一个很好的图表,它说明了我们如何从智能合约获得类似于可以有效验证的证明的东西。

Rollup比较的关键维度

速度

正如我们之前提到的,扩展的目标是提供一种方法来提高网络处理交易的速度,同时降低计算成本。因为OptimisticRollups没有为每笔交易生成证明,它们通常比ZKRollups快得多。

隐私

ZK证明本质上是保护隐私的,因为它们不需要访问计算的基础参数来验证它。想想下面这个具体的例子:假设我想向你证明我知道锁和盒子的组合。一种天真的方法是与你分享组合并要求您尝试打开盒子。如果盒子打开,那么很明显我知道这个组合。但是假设我必须证明我知道这个组合而不透露任何关于组合的信息。让我们设计一个简单的ZK-proof协议来演示它是如何工作的:

我请你在一张纸上写下一句话我把盒子递给你,让你从盒子上的一个小缝里撕开那张纸我背对着你,把组合打进盒子里我打开纸条,把纸条还给你。你确认纸条是你的!就是这样!一个简单的零知识证明。一旦你确认该纸币实际上与你放入盒子中的纸币相同,我已向你证明我能够打开盒子,因此先验地知道盒子的组合。

通过这种方式,零知识证明特别擅长允许一方向对方证明声明的真实性,而无需透露对方不会拥有的任何信息。

EVM兼容性

以太坊虚拟机(EVM)定义了一组指令或操作码,用于实现基本的计算机和特定于区块链的操作。以太坊上的智能合约编译成这个字节码。然后字节码作为EVM操作码执行。EVM兼容性意味着你正在运行的虚拟机指令集和EVM指令集之间存在1:1映射。

当今市场上最大的第2层解决方案是建立在以太坊之上的。当以太坊原生项目想要迁移到第2层时,EVM兼容性提供了一种无缝的、最少代码的扩展路径。项目只需要在L2上重新部署他们的合约并从L1桥接他们的代币。

最大的OptimisticRollups项目Arbitrum和Optimism/Boba都与EVM兼容。zkSync是为数不多的考虑到EVM兼容性而构建的ZKRollup之一,但仍然缺乏对一些EVM操作码的支持,包括ADDMOD、SMOD、MULMOD、EXP与CREATE2。虽然无法提供支持CREATE2确实会给与合约的反事实交互、限制升级性和用户入门带来问题,但我们认为对这些操作码的支持将很快实现,从长远来看不会成为使用ZKrollup的重大障碍。

桥接

因为L2是独立的链,它们不会自动继承原生L1代币。以太坊上的原生L1代币必须桥接到相应的L2才能与部署在那里的dApp和服务进行交互。无缝连接代币的能力仍然是一个关键挑战,不同的项目探索各种架构。通常,一旦用户调用depositL1,就需要在L2端铸造一个等价的代币。为这个过程设计一个高度通用的架构可能特别困难,因为有广泛的代币和代币标准驱动协议。

最终性

最终性是指确认链上交易有效性的能力。在第1层,当用户提交交易时,它几乎是瞬间完成的。。在第2层上,情况不一定如此。提交到运行OptimisticRollups协议的第2层链的状态更新将首先假定更新是有效的。但是,如果提交此更新的验证者是恶意的,则需要有足够的时间让诚实的一方来质疑该声明。通常,此挑战期设置为约7天。平均而言,想要从L2提取资金的用户可能需要等待大约2周!

另一方面,ZKRollups不需要这么大的挑战期,因为每个状态更新都使用证明系统进行验证。因此,ZKRollups协议上的交易与底层第一层上的交易一样是最终的。毫不奇怪,ZKRollups提供的即时确定性已成为争夺L2扩展优势的关键优势。

一些人认为,虽然OptimisticRollups不一定能保证L1的快速最终性,但快速提款通过让用户在挑战期结束之前获得资金,提供了一种清晰、易于使用的解决方法。虽然这确实为用户提供了一种访问其流动性的方法,但这种方法存在几个问题:

用于维护L2到L1提款的流动性池的额外开销。快速提款不是通用的——仅支持代币提款。不能支持任意L2到L1调用。在挑战期结束之前,流动性提供者无法保证交易的有效性。流动性提供者必须:信任他们提供流动性的人,限制去中心化的好处;(2)构建自己的欺诈/有效性证明,有效地违背了利用L2链中内置的欺诈证明/共识协议的目的。测序

排序器与任何其他完整节点一样,但可以任意控制收件箱队列中的排序交易。如果没有这种排序,网络中的其他节点/参与者无法确定特定批次交易的结果。从这个意义上说,这为用户在执行交易时提供了一定程度的确定性。

反对为此目的使用定序器的主要论点是,它们会造成故障的中心点——如果定序器出现故障,则可用性可能会受到影响。等一下……这是什么意思?这不是破坏去中心化的愿景吗?嗯……有点。排序器通常由开发L2的项目运行,通常被视为半信任实体,通常为项目利益相关者采取行动。对于一想到这一点就咬紧牙关的去中心化强硬派,你可能会因为知道这里和这里正在对去中心化公平排序进行大量工作/研究而感到安慰。

最近大型L2生态系统上的测序仪中断,继续证明了对容错、去中心化测序的需求。

资本效率

OptimisticRollups与ZKRollups之间比较的另一个关键点是它们的资本效率。如前所述,Optimistic?L2依赖欺诈证明来保护链,而ZKRollups则利用有效性证明。

欺诈证明提供的安全性基于一个简单的博弈论原则:攻击者试图分叉链的成本应该超过他们能够从网络中提取的价值。在OptimisticRollups的情况下,验证者将一定数量的代币押在他们认为随着链进展而有效的Rollup区块上。恶意行为者将被罚款。

因此,资本效率和安全性之间存在根本性的权衡。提高资本效率可能需要缩短延迟/质询期,同时增加欺诈性断言未被网络中其他验证者检测或质询的可能性。

移动延迟期相当于沿着资本效率与延迟期曲线移动。然而,随着延迟期的变化,用户需要考虑其对安全性和最终性之间权衡的影响——否则他们会对这些变化无动于衷。

目前Arbitrum和Optimism等项目的7个延迟期是由社区考虑到这些方面决定的。这是OffchainLabs的EdFelten对他们如何确定延迟期的最佳长度的深入解释。

通过构造,有效性证明不易受到相同的资本效率/安全性权衡的影响。

特定应用链/扩展

当我们谈论多链未来时,我们到底指的是什么?是否会有大量具有不同架构的高性能第1层、更多的第2层扩展解决方案,或者只有少数具有针对自定义用例的定制优化的第3层链?

我们的信念是,对基于区块链的服务的需求将从根本上由用户对特定类型应用程序的需求驱动,无论是NFT铸造还是用于借贷、质押等的DeFi协议……从长远来看与任何技术一样,我们希望用户希望从底层原语中抽象出来。

特定于应用程序的链提供了一种通过利用狭窄优化来部署高性能服务的机制。因此,我们预计这些类型的链将成为旨在推动大规模采用的Web3基础设施的关键组成部分。

这些链的出现主要有两种方式:

具有自己的原语的独立生态系统专注于非常特定的应用程序。在现有L1和L2链之上构建的附加层,但经过微调以优化特定用例的性能。在中短期内,这些独立的链可能会出现显着增长,但我们认为这是它们短期新颖性的功能,而不是可持续兴趣和使用的信号。即使是现在,像Celo这样更成熟的特定于应用程序的链似乎也相对稀少。虽然这些独立的特定于应用程序的链生态系统为特定用例提供了卓越的性能,但它们通常缺乏使其他通用生态系统如此强大的特性:

灵活性和易用性高度可组合性流动性聚合和对本地资产的访问下一代扩展基础设施必须在这两种方法之间取得平衡。

分形扩容方法

分形扩容方法与这种区块链扩容的“分层模型”高度相关。它提供了一种独特的方式来将原本孤立的、不同的应用程序特定链生态系统与更广泛的社区统一起来,这样做有助于保持可组合性,实现对通用逻辑的访问,并从底层L1和L2获得安全保证。

它是如何工作的?

交易根据它们打算服务的场景在本地事例之间拆分。利用底层L1/L2层的安全性、扩展性和隐私属性,同时针对独特的定制需求进行优化利用基于证明证明和递归证明的新型架构任何消息都附有证明该消息和导致该消息的历史有效的想法结束的想法

区块链扩展在过去几年中变得更加突出,这是有充分理由的——在像以太坊这样的高度去中心化的链上进行验证的计算成本已经变得不可行。随着区块链的普及,链上交易的计算复杂度也在快速增长,进一步增加了保护链的成本。对现有第1层和动态分片等架构的优化可能非常有价值,但需求的急剧增长需要采用更细致的方法来开发安全、可扩展和可持续的去中心化系统。

我们相信这种基于构建针对特定行为优化的链层的方法,包括针对特定应用程序的通用计算和支持隐私的逻辑。因此,我们将Rollup和其他第2层技术视为通过启用链下计算/存储和快速验证来扩展吞吐量的核心。

如有任何问题、意见或想法,请联系@RahulMaganti!

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

大币网

[0:15ms0-6:645ms