了解Rollup的分类

不管是 Validity Rollup 还是 Optimistic Rollup,它们都会将资料上传到 L1(例如 Ethereum),让所有人都可以透过存取 L1 来存取到该 Rollup 的资料,并藉此推导出 Rollup 最新的状态,例如 Alice 有 10 USDT、Bob 有 5 USDT。

先备知识:

理解 Rollup 的运作方式以及 Rollup 的资料可得性(Data Availability)问题

Recap on Rollup

不管是 Validity Rollup 还是 Optimistic Rollup,它们都会将资料上传到 L1(例如 Ethereum),让所有人都可以透过存取 L1 来存取到该 Rollup 的资料,并藉此推导出 Rollup 最新的状态,例如 Alice 有 10 USDT、Bob 有 5 USDT。

没有把资料上传到 L1 的就不属于 Rollup(例如 Validium、zkPorter 或 Arbitrum AnyTrust),它们不是这篇文章要讨论的对象。另外本篇文章也不会讨论 Rollup 如何验证状态的有效性,也就是 Validity Rollup 和 Optimistic Rollup 的区别。

本篇第一部分将介绍 Sovereign Rollup。Sovereign Rollup 如其名,是属于拥有自主权的 Rollup,进行 Rollup 版本升级或硬分叉都发生在 Sovereign Rollup 上,不像大家现在所熟悉的 Rollup 们(以下简称 Classic Rollup),Classic Rollup 进行升级、硬分叉的地点不在 Classic Rollup 上,而是在 L1 的 Rollup 合约上:在 L1 的 Rollup 合约藉由多签钱包或治理投票执行版本升级。也就是由一个 L1 上的合约来决定一个 Rollup 目前该用哪个版本。而且如果 L1 发生针对该 Rollup 的攻击,例如攻击治理机制或攻击 Rollup 合约本身,该 Rollup 都是会受影响的。相反地,因为 Sovereign Rollup 只单纯把 L1 当成放资料的地方,所以所有 Sovereign Rollup 成员都可以自己在链下决定目前该用哪个版本,而且不管 L1 发生什么事,只要 L1 本身没有被攻击(例如发生 Re-org 或是链停摆),Sovereign Rollup 就不会受影响。

第二部分将介绍 Based Rollup。Based Rollup 移除 Sequencer 这样的角色,将交易排序的权力交给 L1 的矿工、Validator、MEV Searcher 等等。不只让排序交易变得更去中心化,同时也能简化设计、移除系统许多元件。

Sovereign Rollup

Data Availability Layer and Settlement Layer

Classic Rollup 例如 Arbitrum、Optimism、StarkNet 等等,除了把 Ethereum(L1)当作放资料的地方(也就是 Data Availability Layer),还同时将 Ethereum 当作 Settlement Layer:在 Ethereum 上进行结算,把 L2 的状态(也就是 L2 各个地址的馀额)写到 L1 上。

为什么会需要把 L2 状态写到 L1 上?因为这样 L2 和 L1 就能互通讯息、互通资产:L1/L2 的 dApp 能同步讯息并合作、L1 的 ETH 能安全地在 L1/L2 之间流转、L2 的 ARB/OP 也能安全地在 L1/L2 之间流转。

了解Rollup的分类
L1 能读得到 L2 状态,就能安全地进行讯息传递,L1/L2 之间就能互通有无

而 Sovereign Rollup 便是拿掉 Settlement Layer(或是说将自己变成 Settlement Layer),单纯将 L1 作为 Data Availability Layer 使用。

了解Rollup的分类
L1 只读取得到 Sovereign Rollup 放到 L1 的区块或交易资料,但不知道 L2 最新状态,也就没办法互通

为什么要拿掉 Settlement Layer?有不同理由或原因:

  1. 如同开头所述,如果 Rollup 的 Settlement Layer 在 L1,则它将会受 L1 所影响,不管是要升级还是被攻击
  2. 可能 L1 本身不支援複杂的运算来做到纪录 Rollup 状态并利用这个状态进行讯息资产的互通等功能,例如像是在 Celestia 上你只能单纯放资料上去,或像是在 Bitcoin 上你只能进行能力有限的运算,这样的 L1 也就没办法成为 Settlement Layer
  3. 或许该 Rollup 本身就不需要另外一条链来作为 Settlement Layer,它有自己的原生代币、生态,不需和 L1 互通资产

Sovereign Rollup 运作方式

Sovereign Rollup 单纯将 L1 作为 Data Availability Layer,把资料上传到 L1,仰赖 L1 确保资料可得且资料排序不会改变。Sovereign Rollup 的节点则靠著读取 L1 上的资料并进行解读,来算出该 Sovereign Rollup 当前的最新状态。「解读、算出」代表的其实就是 Sovereign Rollup 的共识规则、State Transition Function:怎么从 L1 资料中筛选出符合该 Sovereign Rollup 格式、规则的区块和交易、筛选后怎么验证这些区块和交易、验证后怎么执行这些交易来算出最新的状态。

了解Rollup的分类
Sovereign Rollup 节点从 L1 资料中筛选出自己的区块,并解读、算出最新状态

如果两个 Sovereign Rollup 的节点是不同版本,就可能会解读出不同资料、或是算出不同的最新状态,也因此这两个节点就不会在同一条链上,它们各自所看到的其实就是两条分岔的链的其中一条。

了解Rollup的分类
不同版本的节点可能会得到不同的状态,也就分岔到不同的链上

这其实就和你跑不同版本的 Ethereum 节点一样,两个版本有可能不会是同一条链。例如硬分叉后,忘记更新节点版本、不愿意更新节点版本的人就会自然地留在原本的链上(例如 ETC、ETHPoW),而更新节点版本的人就会在新的链上(ETH)。

看到这边读者应该也知道为什么它会被称作 Sovereign Rollup 了,因为在 Sovereign Rollup 中大家可以各自按照自己群体的(社会)共识,去选择节点版本、去解读资料。如果今天该 Sovereign Rollup 社群出现像是 ETHPoW v.s. ETH 的分歧,那就是大家各走各的,选择不同的节点版本去解读资料,但资料还是原本那一份,没有改变过。

注:当然分叉后,各自版本的节点就会上传符合自己规则的资料到 L1,届时两边都会直接过滤掉对方上传的资料。

了解Rollup的分类
在中间的时间点下面的节点分岔到了 v1.1.2 版,之后彼此的区块就各自独立

有哪些 Sovereign Rollup?

目前没有什么 Sovereign Rollup 的例子,不过随著区块链的模组化设计风潮越来越热,肯定会有许多 Sovereign Rollup 出现。例如 Celestia 正在设计的模组化框架 Rollkit 可以透过 Cosmos SDK 打造一个 Sovereign Rollup。不像原本使用 Cosmos SDK 打造的链(一个 L1)会需要执行 Tendermint 共识来决定交易排序,该 Sovereign Rollup 可以像目前常见的 Rollup 一样使用单一 Sequencer 来排序交易,省去需要多个共识节点并仰赖其安全性的困扰以及执行共识演算法所消耗的资源。且该 Sovereign Rollup 是将交易资料上传到 Celestia,但同时因为是 Sovereign Rollup 所以不会受 L1 影响(例如升级或被攻击)。

注 1:Rollkit 后来也支援了将 Bitcoin 当作 Data Availability Layer,这样的 Rollup 能继承 Bitcoin 安全性但 throughput 就会受限于 Bitcoin。

注 2:基本上基于 Celestia 的链都可以称作 Sovereign Rollup。

或是假设 Arbitrum 不再使用 Ethereum 当作 Settlement Layer、不再需要和 Ethereum 互通讯息或资产,单纯把 Ethereum 当成放资料的地方,则这样的 Arbitrum 也会成为一个 Sovereign Rollup。

Settlement Rollup

另外也有像是 Settlement Rollup 这样的定义出现,不过它基本上就是 Sovereign Rollup,然后这个 Sovereign Rollup 还会是其他链的 Settlement Layer。也就是说,如果一个 Sovereign Rollup 上面还会有其他链、其他 Rollup 将它当作 Settlement Layer 的话,这个 Sovereign Rollup 就可以称作 Settlement Rollup。

注:要能成为其他链的 Settlement Layer 必须要有基本的智能合约功能,让两边能互通讯息、资产。

如果 Ethereum 今天改成把链的资料都上传到 Celestia,那这样的 Ethereum 就会是 Celestia 上的 Sovereign Rollup,且同时也是 Settlement Rollup,因为 Ethereum 上面还有许多链、许多 Rollup 把它当作 Settlement Layer。

了解Rollup的分类
Ethereum 是 Celestia 上的 Sovereign Rollup,也是 Settlement Rollup

注:或许未来大家逐渐熟悉模组化、熟悉不同 Layer 的功能,不再从 Rollup 角度出发,Sovereign Rollup 或 Settlement Rollup 这样的名词就会渐渐消失。反正重要的是你这条链(不管是 L1 还是 L2 还是 L3 etc.)怎么设计、怎么做出取捨,为不同 Layer 选择适合的建造工具。

Based Rollup

另一个最近出现的 Rollup 分类是 Based Rollup,又或著称 L1-sequenced Rollup。Based Rollup 的 Based 指的是在排序交易这件事上,Rollup 不是交给一个 Sequencer(或多个 Sequencer)来排序交易,而是完全交给 L1 的矿工、Validator 或 MEV Searcher 等等来排序交易。Classic Rollup 将资料上传到 L1 时,L1 Rollup 合约会检查是不是符合资格的 Sequencer 所上传的,而 Based Rollup 则是没有限制,任何人都可以上传。

了解Rollup的分类
任何人都可以上传 Based Rollup 的区块

Based Rollup 最大的优点就是没有 Sequencer,也就没有单点故障的问题或甚至需要担心 Sequencer 有完全交易排序权力的问题,也就是不需要担心 Sequencer 当机导致链停摆或故意不收特定使用者的交易,或是担心 Sequencer 会恶意套取使用者的 MEV。Based Rollup 完全继承 L1 在出块上的去中心化程度。

Based Rollup 有以下优点:

使用者离开 Rollup 的成本很低

一般 Rollup 为了避免 Sequencer 故意不收入特定使用者交易或是 Sequencer 停摆导致使用者无法离开 Rollup,会设计一套 Force Inclusion 机制或是 Escape Hatch 机制来让使用者可以不透过 Sequencer 而直接到 L1 安插自己的交易到 L2 区块中。但这样的设计第一个代价是成本高,使用者必须要自己付出 L1 矿工费去安插交易,第二个代价是从 L1 安插的交易可能会影响 Sequencer 打包 L2 区块的过程:有可能 L1 安插的交易会导致 Sequencer 准备收入到 L2 区块裡交易无效,例如 Alice 在 L1 安插的交易把钱都转给 Bob,导致 Alice 在 L2 区块裡转钱给 Carol 的交易失败。

了解Rollup的分类
Sequencer 收到 Alice 的交易后,确认交易结果并放进下一个区块中
了解Rollup的分类
但 Alice 直接透过 Force Inclusion 将另一笔交易直接送到 L1,导致 Sequencer 收到的 Alice 交易失败

Arbitrum 为了避免 L1 安插的交易影响 Sequencer 打包 L2 区块的过程,所以 L1 安插的交易不会马上生效,需要等待 Sequencer 主动申请将该交易收入最新一个区块才会生效,或如果 Sequencer 都没反应,过一段时间后就会强制生效。Optimism 则是允许交易立即生效,如果 L1 安插的交易影响到 L2 区块裡的交易,Sequencer 必须要自己想办法处理。可以看这篇介绍了解更多 Arbitrum 及 Optimism 在处理 L1 安插交易的比较。

设计简单许多

Based Rollup 比一般 Rollup 少了 Sequencer 的角色,也就少了硬体的负担(不必担心 Sequencer 机器负载问题)以及任何为了让排序交易更公平的机制(例如去中心化 Sequencer 的机制)。然后也不需要 Force Inclusion/Escape Hatch 机制,包含 L1 的相关合约及相关链下工具来方便使用者能自己在 L1 安插交易。

但 Based Rollup 也有一些缺点:

没有交易提前确认的服务

有 Sequencer 的话,Sequencer 可以很快告诉使用者他的交易执行结果。只要使用者相信 Sequencer,就能立刻确认交易结果,不需等待交易上传到 L1。

了解Rollup的分类
Based Rollup 中,Alice 等到交易上传到 L1 才相信自己的交易被收入,要等至少一个 L1 区块的时间
了解Rollup的分类

一般 Rollup 中,如果 Alice 相信 Sequencer 会收她的交易的话,马上就能确认交易是否会被收入

协议失去 MEV 收益来源

MEV 不再交由 Sequencer 来把关、提取,而是交给 L1,因此 L2 本身没办法获得 MEV 收益。可以透过设计出块权利的竞标机制来捕捉 MEV 收益,但相对地会拉高 L1 参与者参与出块的门槛,也就降低去中心化程度,且引入竞标机制也带来一定複杂度。

(声明:请读者严格遵守所在地法律法规,本文不代表任何投资建议)

(0)
上一篇 2023年5月30日 下午2:02
下一篇 2023年5月30日 下午2:11

相关推荐

  • Web3.0世界日报(2023-2.10)

    美SEC委员:SEC对Kraken的处罚是“懒惰”的监管方式,应出台质押指南引导注册。Optimism开始第二轮空投,1170万枚OP将分发至超30万个地址。Sui开发团队Mysten Labs与腾讯云在GameFi、支付等领域达成合作。

    2023年2月10日
    1.0K
  • ZK Bridge能否成就「跨链大战终局」?

    在北欧神话中,海姆达尔(Heimdallr)是一个神秘且重要的神祇,负责守卫连接神域(Asgard)与人间世界(Midgard)的彩虹桥—— 比弗洛斯特(Bifröst)。如果我们把连接不同神域和人间世界的彩虹桥比作跨链桥,那么,零知识证明技术能否肩负起守卫跨链安全的重任,成就彩虹桥上万夫莫开的「海姆达尔」神话?

    2023年4月19日
    567
  • 如何理解Web3社交和链上数据发展所带来的社会影响?

    许多社交体验都是通过去信任化和问责制才成为可能或者变得更容易的——这正是区块链所提供的。然而,改变个人、社群和整个世界根深蒂固的行为习惯存在一定困难。尽管 Web3 社交提供了透明度,但由于对新用户来说很难理解并且存在丑闻,它在今天还大多被误解。

    2023年3月22日
    432

发表回复

登录后才能评论
微信

联系我们
邮箱:whylweb3@163.com
微信:gaoshuang613