Matter Labs 共识负责人向 Jon Charbonneau 发表公开信,谈论关于 Rollup 的一些想法。

Matter Labs 共识负责人向 Jon Charbonneau 发表公开信,讨论 Rollup 想法。

1、什么是Rollup、什么不是Rollup?

首先,我们需要明确的是”Rollup”这个词在这里指的是两个不同的概念,暂时被称为”rollup桥”和”rollup区块链”。这两个概念可以分开,互相之间可以”分叉”。此外,“L1”和”L2”是相对术语,在具体的资产发行地/原产地有所不同。

我们可以通过一个思想实验来开始讨论。假设我们有两个独立的现有区块链,比如以太坊和Near链。那么,在不修改协议的情况下,我们能否在它们之间建立一个无需信任的双向桥梁呢?事实上是可以的!我们可以为Near的虚拟机(VM)和共识机制开发零知识(zk)有效性证明(下文中我们将主要讨论zk rollup)。这个过程并不需要对Near的协议进行任何更改,我们只需要找到一种方法来证明给定的区块是有效状态转换的SNARK/STARK内的。然后,我们在以太坊上创建一个智能合约来验证这些证明,就完成了两个区块链的连接。

现在,任何人都可以向以太坊提交Near的区块(或状态增量)以及有效性证明,而智能合约将会知道Near区块链的状态,而无需进行任何信任假设。然后,我们可以很轻松地向以太坊发送来自Near的消息,只需要向以太坊智能合约提交Near状态的Merkle证明即可,这样就可以证明Near状态的任何部分。需要注意的是,这里没有将Token或数据从一个区块链转移到另一个区块链,也没有进行真正的移动,这些仍然是独立的数据库。我们只是在另一个区块链中通过证明的方式来证明一个区块链的状态。所以,跨区块链转移Token只是一个方便的抽象。

但是,到目前为止我们只能在以太坊上证明Near的状态,我们如何做到相反的过程呢?答案很简单,我们可以为以太坊开发有效性证明,在Near上创建验证者智能合约,并将以太坊区块和有效性证明发送到Near。这样,我们就能够证明以太坊在Near中的状态。通过这两个单向、无需信任的桥梁,我们实现了双向桥梁的连接。

然而,这引出了一个问题,为什么我们需要两座桥梁呢?当然,像zkSync、Arbitrum等Rollup项目并没有两个桥梁,这是因为它们采用了一种不同类型的桥梁。在这些项目中,zkSync的全节点也是以太坊的全节点,Arbitrum的全节点也是如此。事实上,所有汇总都实际上有两个单向桥梁,只是在zkSync到以太坊方向上我们使用有效性证明+状态增量,在以太坊到zkSync方向上我们只使用全节点桥。显然,连接以太坊和Near的一个潜在解决方案是要求每个以太坊全节点也是Near的全节点,反之亦然。这实际上可以达到相同的目的,但不太可行,因为它不能很好地扩展。

现在,我们在以太坊和Near之间有了两个具有有效性证明的桥梁。我们可以在另一个区块链上通过证明的方式来验证一个区块链的状态,并用这个证明来”移动资产”和”发送消息”。需要注意的是,我们没有改变任何协议,也不需要以太坊或Near的全节点提供任何额外的功能,每个区块链甚至可能对这些桥梁一无所知。事实上,完全由第三方(如Matter Labs或Coinbase)维护这些桥梁也是完全可行的,尽管最终将不再可行。

那么,以太坊和Near是否正在上Rollup?因为它们的区块发布在以太坊上,Near就更安全了吗?如果桥梁停止工作,区块链的安全性是否会降低?答案是否定的,没有任何一个区块链发生了改变。桥梁的停止并不会影响任何区块链的安全性,因为这些桥梁实际上是独立的。如果一座桥停止工作,另一座桥完全不受影响。

现在我们可以讨论不同类型的桥梁了。LianGuaitrick McCorry在他的文章中提到了几种类型的桥梁。第一种类型是”全节点桥”,即一个区块链的全节点同时也是另一个区块链的全节点。这是桥梁的最高安全级别,也是真正不信任的桥梁。然而,这种桥梁在大规模应用时是不可行的。在以太坊和Near的思想实验中,如果我们要求所有全节点都是这两个区块链的全节点,那么拥有两个不同的区块链就没有意义了。然而,如果一个区块链的节点要求比另一个区块链的节点要求少,那么在一个方向上就是有意义的。这正是zkSync、Arbitrum、Optimism等Rollup项目中采用的方式。

第二种类型是”有效性桥梁”,即使用zk证明来证明给定状态转换(也就是zk rollups)的有效性的桥梁。这种类型的桥梁需要额外的信任假设,与用于有效性证明的证明系统相关。

第三种类型是”OP桥梁”,OP Rollups中使用的一种桥梁类型。这种类型的桥梁与博弈论和至少一个诚实完整节点的存在有关的额外信任假设有关。

有效性桥梁和OP桥梁的目标是接近全节点桥梁的安全性,但不需要相同级别的资源。实际上,有效性桥和OP桥几乎就像另一个区块链的全节点,只不过它们只是智能合约。

当然,还有轻客户端桥(如Near的Rainbow桥)、多重签名桥等。现在我们可以使用这个模型来对不同的Rollup项目进行分类。例如,zkSync Era是一个集中式(即单个验证者)的区块链,它具有从以太坊到全节点桥和从全节点到以太坊的桥。

这就是大多数Rollup项目的情况:具有从基础链到基础链的全节点桥和到同一基础链的有效性或乐观桥的区块链。需要注意的是,这种结构在链之间创建了一种层次结构,以太坊完整节点没有成为汇总节点决定哪些区块链桥接到它,但汇总完整节点几乎被迫成为以太坊完整节点。

最后需要注意的是,Rollup区块链的技术安全性并不会继承母链的技术安全性。换句话说,将某些区块链的数据(和证明)发布到以太坊不会增加该区块链的安全性。使用以太坊的数据可用性只是为了Rollup桥的利益,并不影响Rollup区块链的安全性。换句话说,Rollup桥包括智能合约和以太坊上的数据可用性,而Rollup区块链只是一个独立的区块链。

当然,当前我所描述的模型并不能涵盖所有情况,比如验证和主权Rollup。Validiums是桥还是区块链?它与有效性桥梁有何不同?主权汇总呢?它们甚至没有桥!从主权Rollup的角度分析会更容易一些。

通常,主权Rollup被描述为没有桥接的Rollup。它们的本质是使用另一个区块链的数据可用性和共识作为自己的数据可用性和共识,因此继承了该区块链的安全性。主权Rollup通过将所有数据发布到基础链来实现这一点,而主权Rollup的完整节点只是基础链的完整节点,它们具有解释该数据的额外规则。

那么,这是属于Rollup的吗?答案是否定的,尽管听起来有些像,但Rollup的定义适用于许多其他情况。当然,我们不会将其归类为Rollup,例如在比特币网络中的扩展性。比特币网络上的Ordinals节点完整存储了Ordinals区块链的所有数据,要成为Ordinals区块链的完整节点,只需要一个比特币完整节点并了解Ordinals的规则。而Ordinals区块链具有与比特币完全相同的安全性。同样的情况也适用于许多其他在比特币上运行的协议,如Omni、Counterparty、Mastercoin等。所有这些协议都不能被归类为主权Rollup。

我们可能可以找到更多的例子,但要点是在区块链中搭载另一个区块链的共识和/或数据可用性并不是什么新鲜事。目前还没有通用的术语来描述这些结构,所以我们尝试使用”依赖区块链”这个术语。而Rollup的创新是为两个区块链之间创建一种以信任最小化且高效的通信方式。而主权Rollup则缺乏这种能力,因此不能被称为Rollup,只能作为附加在区块链上的一部分。

2、关于验证

最后,我们来讨论验证。和Rollup一样,它们是一种具有从基础链到基础链的全节点桥和连接到基础链的一些桥的区块链。这些新型桥基本上是一种有效性桥,我们不会将区块链数据(输入或状态增量)发布到基础链上,而是只发布zk证明。在缺乏更好术语的情况下,我们将其称为部分有效性桥。那么,这和普通的Rollup有什么不同呢?为了找到答案,我们需要了解当区块链失败和桥分叉时会发生什么。

让我们回到我们关于桥接以太坊和Near的思想实验。在这种情况下,如果Near区块链停止运行会发生什么?显然,Near到以太坊的桥梁将停止更新。如果那座桥上有硬币,它们就会被卡住,直到Near链被恢复。显然,这座桥上的资产似乎并不具有与以太坊区块链相同的安全性。那么,这里发生了什么呢?请记住,有效性桥和OP桥的作用与全节点相似,并且全节点可以分叉区块链。

大多数Rollup计划了一些”逃生舱口”机制,实际上就是一种自动分叉机制。在我们的示例中,如果Near区块链失败,任何人都可以通过附带有效性证明更新桥的状态。如果Near随后重新上线,它将具有与桥不同的状态,从而加强了桥确实是从Near分叉出来的思想。这座桥实际上具有与以太坊相同的安全性,但至关重要的是,桥中计划有一些分叉机制。

想象一下另一种情况,即以太坊和Near区块链都在工作,但只有Coinbase被允许更新桥的状态(这是桥的设计方式)。如果Coinbase由于某种原因发生故障,并且桥中没有分叉机制,那么桥将停止工作,所有资产将被卡住,即使Near区块链仍然存在。

现在,我们可以很容易地看出有效性桥和部分有效性桥(即validiums)之间的区别了。有效性桥始终保证拥有状态数据(这当然是创建分叉所必需的),因为它们将所有状态更新发布到基础链。而部分有效性桥可能没有该状态数据,而是需要validium区块链中诚实的少数验证者来保证该数据的可用性。

综上所述,这篇非常长的文章介绍了区块链和桥梁。在L2空间中,有许多不同类型的桥梁。我们还将区块链分为两种不同的类型:依赖型和独立型,具体取决于它们是否使用另一个区块链的共识和数据可用性作为自己的共识和数据可用性。然而,这些是不同的概念,我们可以将任何类型的区块链与几乎任何数量和类型的桥进行配对。