2021年,加密牛市来临。以太坊变的人满为患,Gas费甚至达到了几百美元。
那当时解决方法有哪些?这就是今天的区块链技术的原型。部署新链更快!它们是为了吸引用户而进行的大规模挖矿活动。像Solana、Binance Smart Chain和Avalanche这样的「以太坊杀手」都在那时出现。它们均进行流动性挖矿,并全部从以太坊抽钱。
人们抛弃以太坊,虽然以前是拥护以太坊的。
Alt-L1链暂解市场可扩展性要求。它允许一个链上连接多个节点,从而使得在不影响效率的前提下可以提供更大的吞吐量和更高的数据吞吐率。但是,有那么多标准不一的链条的存在,带来对跨链桥接要求。在这个过程中,链间必须要有一个安全机制保证它们之间不互相攻击。这样做自然会造成困扰,不只是不方便,而且非常危险。跨链桥黑客问题已经成为一个严重而又复杂的问题。如Rekt列举,跨链桥的黑客事件非常频繁。
以太坊试图通过rollups以不同的方式回答扩展性问题。这种解决方案是在传统网络中加入了一种新技术——交易链技术。在独立(rollup)链中处理交易,并且传承了主网去中心化,安全强等特点。
这一实践始终起着作用。到10月份,L2s的交易执行已超越以太坊主网。
但还存在着这样或那样的问题。如果要把这些链上所有节点连接起来的话,必须使用一种新方法——通过修改某个特定的参数来实现这种功能。每个新的链条或者rollup自身都是单条链条,具有其独立的语言与设计结构。如果我们能够找到一种新的方式来连接它们的话,那么这种系统就会更加稳定、高效并且更容易维护。在很长一段时间内以此展开,其结果会形成异步Web3生态系统。正因为如此,我们才需要Hop这样一个协议来实现rollup链间的桥。
若Web3将成为主流,我们需要告别这不断网络切换。在这个时代,每个人每天面对着数以百计的不同类型的业务。人们并不想处理分散和异步链。因为它们可能会影响到整个系统的效率。就好像每一次想要银行间转账的时候,需要兑换货币。
如果跨链桥为一次性创可贴式方案的话,模块化rollup正为更加全面地解决这一问题铺路。
那怎么办?Optimism的幕后开发者们拥有一剂治本的药方——OP Stack。
目前存在障碍
如今,多数链正在奉行其模块化战略。这种趋势使我们可以更有效地使用现有网络基础设施来实现业务目标并提高生产率,从而为未来的发展提供了可能。Optimism、Arbitrum和Starknet在执行层上有所不同,但它们都通过将结算、共识与数据可用性层被外包给以太坊主网,分享同样的这几层数据。
Metis和Celestia选择自己的数据可用性层,同时还是以以太坊为自己的结算与共识层。基于StarkEx的validium链,如Immutable X或rhino.fi,通过运行您相对中心化的数据可用性委员会--预选节点组托管交易数据,执行相似操作。
每条链条都在各自独立地运转、战略单一,正在实施中、结算与数据可用性层设计不同。因此,每个链中所使用的软件组件也各不相同。若这些链条共用标准化开源代码库,而非现在孤岛式链/rollup系统将如何?
OP Stack –
这就是Optimism的OP Stack的作用:一组模块化基础乐高积木,用来在以太坊中建立更有表现力、更精准的rollup链,这种情况在现在单体L2中无法实现。
OP Stack作为标准化开源模块集合,您可以将其组装为定制链--Optimism称为OP链--来为任何具体区块链用例提供服务。
我们来拆解这一定义吧:
模块就是任何开发人员都能插入到OP Stack数据位中,以创建一个L2、L3或L4。这种方式使得开发人员能够使用相同的代码来构造不同类型的系统。"标准化"是指就某一模块的标准达成共识,并且它可以被所有人实现。开源就是将自己的想法变成代码,并通过各种方式在不同的组织中发布,然后由其他人来验证其正确性。开源的含义是,它能够自由地为任何一个人迭代并要求。
使用OP Stack,您将不受一个特定证明系统或者技巧的约束。因为我们可以选择不同的方法来开发这些程序,而不是去创建一个新的代码块。开发人员具有一个链不同实施,达成共识的能力、结算与数据可用性层的切换模块等,就像切换API 一样。
dYdX选择离开以太坊,改用Cosmos应用链,因为他们希望自己链上的共识层具有更大的模块化程度。OP Stack很好地解决了这一难题。
OP Stack设计使得代码分叉可以比当前工作更加简单,由于开发人员能够轻松对区块链各部分进行抽象,并且通过插入不同模块对其进行了改造。
如果某个Optimistic rollup想把自己改造成ZK rollup。那就必须在这个系统中增加一个欺诈证明模块。没有问题!只需将其欺诈证明模块替换为结算层有效性证明模块。
如果某个链希望将Celestia应用到它的数据可用性层。那么它的核心就应该是以太网,而不是目前流行的以太坊。没问题!用Celestia代替以太坊就可以了。
要不要将执行层EVM替换为FuelVM等其他虚拟机?如果你希望在执行层面实现虚拟化,那么就必须找到一种能将虚拟机与底层物理硬件连接并进行通信的方法。在运行中的链条中,这种情况非常困难,不过,这也正是OP Stack在技术方面的可能。
也许你想把Minecraft作为一个L2 rollup来运行,但是链上游戏对于主网来说,计算量过大?这不是一个问题,但如果不对它进行改进的话,那就会影响整个系统性能。其实有的人做得很好,即OPCraft,它后面的小组Lattice在L2 rollup执行槽里导入了它的执行模块,接着对共识层的一种等离子体进行改造,提高可扩展性。
因此,OPCraft作为它自己的L2 rollup(OP链!)存在于以太坊上,比赛的每个行动被当作链上交易进行,并且在以太坊的主网上向下翻滚。当你需要修改或删除数据时,只需将数据写入到新的交易里即可。它是一个Minecraft和EVM相容区块链并可扩展!因为它不需要任何额外的硬件来支持其功能和性能,所以很容易被开发出来。和其他区块链类似,开发者可通过该节点进行访问,并在上面部署智能合约(关于这一点,请看Metatarsal的这篇文章。)
Lattice通过利用Optimism的Bedrock rollup架构做到了这一点。在该架构下可以将所有服务都封装成一个简单而高效的组件,从而提高整个系统的性能。Bedrock是OP Stack的第一个实现,它是Optimism中所用模块的集合。它将所有需要运行在虚拟化环境下的应用整合到一个统一框架内进行管理和调度,从而提高应用程序开发效率。Bedrock将以太坊虚拟机用作执行层,使得它等价于EVM,以及结算层采用Cannon为其交互式故障证明系统。
更多的疯狂分叉即将来临。0xPARC通过将Bedrock的执行引擎换成Game Boy模拟器,建立了一个Game Boy rollup。
所有这一切,都发生在链条中。
OP Stack开阔花园
如今模块化区块链存在的最大问题就是碎片化程度越来越高,由于开发者在设计选择与取舍。现在,一个重要的趋势就是把所有的模块集成起来。这一碎片化问题与Web2中围墙花园相似,只不过,这里有其偶然性。
OP Stack透过以开放花园为概念开始,搭建于Web3上,这一逐步碎片化问题已经得到解决。本文提出一种基于“原子式”和“跨链组合”相结合的方法来实现共享花园的设计与开发,该技术是利用共享花园所提供的一个共同规则来建立整个社区范围内的互操作体系。OP链只需自愿选择访问同一共享定序器集(在每一个OP链中,生成块是唯一的一个实体),所有OP链均可享有原子式跨链结合。
如果OP链不一定愿意运行其定序器,然后他们可以支付一定的费用来使用他们信任的Optimism的共享定序器。这样就可以使它们在不影响正常工作的情况下,为其他用户提供服务。在Optimism上又开拓出一条盈利模式,而且不只是当前Optimism链中dapp。
最后,以太坊中的任意用户均可将生态系统中任意一端的交易发送到彼此。你只需在一个平台上加了个好友,就能轻松地与任何人进行交易,这将会使你节省大量的时间和精力。无需额外进行网络切换和桥接!
这一愿景催生了Optimism的「超级链」(Superchain)的新兴结构,几百/成千上万的OP链都会在Optimism中实现完全互操作,并且通过同一技术结构进行联接。
启动rollup将不会比启动ERC20 Token更难,Web3的试验与创新将进一步提速。
当然它并不只涉及互操作性问题。
有了OP Stack共享模块,使得配置灵活性提高,开发人员在反复地收回先前开发人员用过的可以反复使用的编码,由此使得代码的功能更加强大,更能抵抗黑客与bug的入侵。
比如Lattice小组创建OPCraft的时候,他们为每一个区块设计的gas限制远远高于Optimism本身的链。在此不同配置下,他们找到了一些原来并不显著的bug。
万花齐放,百花争艳
简单地说,OP Stack歌颂了以太坊以模块化方式延伸的基本理想。
Optimism正构建一个全面开源rollup链生态系统,而OP Stack正是确立这一远景的根本。它允许开发人员通过简单且易于操作的方式创建链以支持整个系统。但不只是rollup这样,OP Stack也可用于治理与身份模块的设置,使开发者具备了从起点很容易设计出自己链条的能力。
OP链不是Cosmos应用链。在网络中,如果使用同一个标准和协议。它们又不是单链的。是同一技术标准融合而成的超级链。
这一切做完之后,rollup生态系统就会在以太坊上面百花争艳。