Based Booster Rollup 的背景,实践和展望

2024年10月21日 11:42:20 加密货币 投稿:互联网

撰文:jolestar5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

看到几位朋友在聊 Based Rollup,大多是从安全角度来聊,我从 L1 与 L2 的关系,以及应用的构建角度,聊聊对 Based Booster Rollup 的看法。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

Based Rollup 的思路其实很简单,就是用户直接把 L2 的交易提交到 L1,由 L1 排序打包,但 L1 不校验交易的有效性,只保证交易的顺序以及可用性,而 L2 是个纯粹的执行器,执行打包在 L1 上的 L2 交易。看到这里大家是不是觉得很眼熟?这不就是铭文 (Inscription) 模式么。是的,铭文的 Indexer 就可以理解成这里的 L2。这个我观点我在《铭文是个 bug 还是 feature》 一文里说过。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

Booster Rollup 则从另外一个角度出发,如何在 L2 上通过合约直接读取到 L1 的状态?思路其实也不复杂,既然 Based Rollup 已经在执行 L1 上的 L2 交易了,那要不顺便把 L1 的交易也执行一下?这样 L1 和 L2 的状态就在一个大的状态树里,L2 的合约就可以直接读取 L1 的状态了。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

于是也有项目把 Based Rollup 和 Booster Rollup 合在一起,叫做 Based Booster Rollup(BBR),比如 taiko。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

BBR 的背景


5ME币学堂 - AI与大数据驱动的区块链科普平台

BBR 从提出,到现在受到市场关注,主要的大背景是当前 Ethereum 主流的 L2 方案带来的割裂问题,L1 与 L2 的割裂,以及 L2 之间的割裂。现在的 L2 方案,提供的功能,无论从开发者角度,还是用户角度,和一个 Alt-L1 并没有太大的差异,读取 L1 数据还依赖 Oracle,资产还是要桥,钱包也得切换网络。而这种割裂也带来了另外一个问题,L1 和 L2 的绑定并没有那么紧密,L2 随时可以增加一套共识机制变成一条 Alt-L1,「自立为王」,并且可以让开发者和用户基本无感。当前主要的绑定关系来自于 EF 对正统性的约束: L2 必须将 L1 作为 DA,但明显这个约束并不牢靠。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

那如果把现在的 L2 方案都换成 Based Rollup 方案问题是不是就解决了呢?估计 Optimism 和 Arbitrum 要跳出来说了,换 Based Rollup 不很容易么?现在主要的 L2 方案都有 Force Inclusion 机制,L2 直接把 Sequencer 给去掉, 让用户都通过 Force Inclusion 向 L1 发交易不就实现了 Based Rollup?5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

但这样能解决割裂问题吗?不能。虽然 Arb 和 Op 都实时把交易提交到 L1,由 L1 打包排序了,但它们还是割裂的,因为各自只认自己的交易。到这里大家应该明白 Based Rollup 要想解决割裂问题的关键是要有可以在 L2 之间共享的交易或者数据,而这种数据格式要求:5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

  1. 它必须是和平台和实现无关的,在 L1 上定义的格式。不同的 L2 的账户,虚拟机有差异,各自的交易肯定没法直接共享。
  2. 它需要在 L2 之间达成共识,多个 L2 都支持。


5ME币学堂 - AI与大数据驱动的区块链科普平台

所以它必须是协议先行,先设计公开的协议和数据格式,链上只保存协议必须的数据,执行和校验在链下,不同的 L2 各自实现支持方案。但要做到这两点其实挺难,首先 Ethereum 生态的开发者一般通过智能合约设计协议,并没有直接基于数据格式设计协议的习惯。这个方向主要的尝试还是上次铭文热的时候的 Ethscriptions。而第二点就更难了,需要实践和时间来验证。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

从 BBR 到 BBSR,Stackable L2


5ME币学堂 - AI与大数据驱动的区块链科普平台

说完了数据共享的问题,再说说用户体验的问题。明显如果所有交易都由用户直接发给 L1,体验就和使用 L1 差不多,无论是 Gas 还是确认时间。于是开始有人设计 Based Rollup 的预确认协议了,但如果预确认协议能真正工作,需要所有的交易都先通过预确认协议,那不就是 Sequencer 了么?这部白折腾聊一圈么?5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

之所以产生这种矛盾是因为大家混淆了几种交易类型:5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

  1. 用户直接提交到 L1 并由 L1 执行和验证的交易,也就是 L1 交易。
  2. 用户直接提交到 L1,但 L1 并不直接验证和执行,L2 之间共享协议的数据交易,可以叫 L1.5 交易。
  3. 用户直接提交给 L2 Sequencer,由 Sequencer 预确认并执行的交易,某个 L2 的专用交易。


5ME币学堂 - AI与大数据驱动的区块链科普平台

而 Based Rollup 只和 1,2 有关系,3 是现在的 Sequencer Rollup 的工作方式,二者完全可以结合起来。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

假如有这样一个 Rollup 方案:5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

  1. Sequencer 自动同步所有的 L1(包括 L1.5) 交易,并按照 L1 的给定的顺序执行。
  2. Sequencer 同时接收 L2 交易,和 L1 交易混在一起排序并执行。


5ME币学堂 - AI与大数据驱动的区块链科普平台

通过 1, 它实现了 Based 和 Booster,通过 2 它实现了 L2 交易的快速确认,也不损失用户体验。如果按照前面的命名方案,这种应该叫做 BBSR(Based Booster Sequencer Rollup),但有点长,不容易理解,所以我把它叫做 Stackable L2,堆叠式 L2,顾名思义就是在 L1 上堆叠了 L2,L2 包含了 L1 的所有交易和状态。这就是 5ME币学堂 - AI与大数据驱动的区块链科普平台

@RoochNetwork5ME币学堂 - AI与大数据驱动的区块链科普平台

 的解决方案。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

如何保证 L2 的交易的 DA? Rollup or Rollout?


5ME币学堂 - AI与大数据驱动的区块链科普平台

如果采用上面的方案,L2 再次把自己的交易打包提交到 L1 就会有点奇怪,因为 L2 会再次把打包自己交易的 L1 交易也读取下来重新执行,有点像自己的输出同时也成了自己的输入。所以 Rooch 的方案是 Rollout 而不是 Rollup。因为长远来看 L1 的区块空间非常珍贵,多个 L2 的交易抢占 L1 的空间是一种「内卷」模式,L1 的空间应该留给 L1 和 L1.5 交易,L2 应用级别的交易应该寻求更低廉的区块空间,通过「外卷」拓展新的区块空间,这样也有利于整个行业生态的发展。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

Bitcoin 生态的 BBSR/Stackable L2 实践


5ME币学堂 - AI与大数据驱动的区块链科普平台

前面的描述都是从 Ethereum 角度来描述,而 Rooch 作为 Bitcoin 的首个 BBSR 或者 Stackable L2 实践,这里聊聊 Bitcoin 生态上的差异。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

Bitcoin L2 上没有图灵完备的智能合约,Based Rollup 模式下反倒成为一种优势。因为 Based Rollup 本来就不需要 L1 执行和验证交易,只要保证 Permission Less 以及 DA。这同时也逼迫 Bitcoin 生态的项目从很早以前就开始设计基于数据结构的协议,无论是染色币,还是后来的 RGB,Taproot Assets,Ordinals Inscription,Atomicals,Runs 等,都是这个范畴下的尝试,可以包含在广义的 CSV(Client-side Validation)协议概念下,它们的交易都是典型的 L1.5 交易。如果 Ethereum 生态的项目想实践 Based L2,设计出多个 L2 之间共享的协议,大体上会和上面的协议差不多。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

下面以 Rooch 为例,说明一下 Bitcoin 上的 BBSR 的工作模式:5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

  1. 用户会直接提交 L1 以及 L1.5 交易给 Bitcoin,因为协议是公开的,所以入口可以是任何应用。
  2. Rooch 会同步所有的 L1 交易,处理其中的 UTXO,同时会发现是否携带了额外的协议信息,然后用对应的 Move 模块去处理。比如被识别为 Inscription 的交易会由 ord 模块处理,而 Babylon Staking 的交易会由 bbn 模块处理。
  3. 用户直接将 L2 交易提交给 Rooch 的 Sequencer 节点处理。上面三种交易的执行结果会生成一个完整的状态树,应用合约可以充分利用到 L1 以及 L1.5 交易生成的状态。


5ME币学堂 - AI与大数据驱动的区块链科普平台

这种模式下的应用可以设计两种交易,一种是公共协议交易(Based 部分,在 L1 上),一种是应用交易,(由 Sequencer 排序),二者可以通过 Booster 模式互相配合,保证 Permission Less 的同时,也能保证用户体验。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

正如前面提到的,公共协议的设计需要时间和实践来验证以及达成共识,而 Rooch 能提供的是这样一个方便的试验环境:如果想设计一个新的 Bitcoin 上的应用或者资产协议,只需要定义好协议格式,然后部署一个对应的 Move 合约模块去处理,就可以通过构造应用场景去试验。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

当然,Bitcoin 生态在这个路线也上存在一些挑战:5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

  1. Bitcoin 设计之初并没有给这种 DA 场景留下足够的扩展空间,所以通过什么形式将数据写到 Bitcoin 上,是前面各种协议尝试探索的方向之一,比如 OP_RETURN 嵌入数据,通过 Witness,甚至通过签名,当前还缺少标准化的解决方案。
  2. Bitcoin 生态对链上嵌入数据的价值并没有达成广泛的共识,这也是从上次铭文热一来,我一直持续呼吁的方向,Bitcoin 生态应该重视 Bitcoin 作为一个全球的公共数据总线(Data Bus)的价值。


5ME币学堂 - AI与大数据驱动的区块链科普平台

L1 作为全球公共数据总线的价值


5ME币学堂 - AI与大数据驱动的区块链科普平台

从 DeFi summer 之后,整个 Crypto 领域一直在探索 DeFi 之外的新型应用。无论是 Bitcoin 的铭文热潮,还是最近的 Based Rollup 热议,都可以理解为对 L1 作为数据总线价值的重新发现。从分布式系统的角度来看,通过数据总线可以实现系统之间的解耦,而系统之间的解耦是实现 Permission less 的关键前提之一。例如,Crypto 生态中的去中心化交易所,就充分利用了区块链这个 Data Bus 实现了「去中心化」的对接,这在传统金融系统中是很难直接实现的。如果要支持更复杂的应用,只需要将简单的转账交易升级为应用协议交易,就可以实现应用层面的 Permission less,而这种方式对现有应用的侵入性最小。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

本文主要从生态和应用角度探讨 BBR,关于 BBR 模式的安全,以及 BBR 模式下的 L1,L1.5,L2 状态的互操作性的问题,留在后面的文章中再详细探讨。后面附加上一些相关链接,有我的历史文章,也有推友从不同角度对 Based Rollup 的阐述。5ME币学堂 - AI与大数据驱动的区块链科普平台


5ME币学堂 - AI与大数据驱动的区块链科普平台

相关链接:

1. Stackable L2 — 一种新的区块链扩容方案 https://rooch.network/zh-CN/blog/stackable-l2
2. Bitcoin 的 Layer2 应该怎么做?https://x.com/jolestar/status/1717358817992995120 我从 L2 如何利用 Bitcoin L1 上的状态和数据设计的最初方案,评论中有朋友提到了 Booster 的方案,最后实践中采用了 Booster 的方案。
3. 铭文是个 Bug 还是 Feature? https://x.com/jolestar/status/1732711942563959185 从 L2 的构建方式角度阐述铭文的价值,包括 L1 和 L2 的激励相容难题。
4. 减法理论出发探讨 Based Rollup 
@kernel1983
 https://web3caff.com/zh/archives/108241
5. @jason_chen998 关于 Based Rollup 的文章 https://x.com/jason_chen998/status/1799692331635048697
6. Based Rollup 赛道研究报告 https://research.web3caff.com/zh/archives/22719
声明:币学堂所有作品(图文、音视频)均来源互联网,观点仅代表作者本人,绝不代表本站赞同其观点或证实其描述。
提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。