Synthetix:科普 | Rollup 中的定序器_The Fire Token

我看到OptimismPBC上部署的Uniswap的快速确认功能引起了很多人的兴趣。但这是如何做到的?用户可以放心使用吗?只靠一个定序器提供确认难道不会威胁到去中心化吗?让我来一一为你解答。

首先,最重要的是,定序器在许多rollup系统中都属于享有特权的参与者。它们接收来自用户的交易,对其进行排序并批量提交到Layer1上。

定序器之所以存在,主要是因为单一协调者简单高效。现阶段,每个rollup系统通常都会有一个定序器,由系统创建者运行。

定序器负责为交易排序。因此,在收到用户的交易后,定序器可以立即将其挖出,并向用户返回确认。这极大地改善了用户体验。

如果你担心定序器会攫取MEV,那你是对的,不过我会单独讨论这个问题。

如果定序器忠于职守,则一切都好。但是,如果定序器作恶,用户并试图破坏网络,我们该怎么办?让我们来深入探讨这个问题。

最重要的问题是:定序器可以偷用户的资金吗?不能。状态转换的有效性由rollup架构保障。

定序器能审查用户的交易吗?没错,它确实可以。定序器通常是JSONRPC节点。与Infura类似,定序器甚至可以谎报网络状态或审查用户交易。

幸运的是,审查不是什么大问题,因为所有rollup系统都可以通过不可审查的Layer1来发布Layer2交易。协议会强迫定序器在几分钟内将用户交易打包到rollup内。

如果定序器谎报状态,用户需要自己运行节点,根据发布到Layer1的批量交易重新创建rollup状态。这听起来可能很糟糕,但是与Layer1上的情况相同。

最后,定序器可以谎称交易已得到即时确认吗?可以。正如上文所述,定序器可以谎报当前网络状态以及用户交易是否被打包。

例如,定序器可以对用户谎称交易已成功,但是实际上被撤销了。用户只有基于Layer1重新创建rollup状态之后才会发现自己被了。

只有被发布在Layer1上,rollup交易才算是被敲定了。这就是为什么Rollup的Web3.0库一般可以让开发者轻松构建用户界面,以告知用户Rollup交易的处理进度。

未来有可能采取的一种解决方案是,让定序器在收到用户交易时签名确认,如果交易没有被打包到rollup,用户可以惩罚定序器。这可以通过瞭望塔之类的服务自动化执行。

这是真正让我感到兴奋的地方——定序器技术还处于发展初期。未来,我们将看到更多复杂的设计来解决我提到的很多问题。

我们也可以运行一个由定序器组成的免许可型PoS网络来代替单个许可型定序器。每一批交易都由网络中随机选取的定序器打包到Layer1上。这会大幅增强抗逆性和抗审查性。

当然了,每个定序器都需要提供保证金,一旦作恶就会遭到罚没。

其它项目如Arbitrum在试验一种公平的协议来发现正确的交易排序。https://eprint.iacr.org/2020/269.pdf

当然,也可以不打击MEV,而是拥抱MEV:参与方通过竞标的方式来获得在一段时间内运行定序器的权利。

如果你想更多了解rollup的设计空间,可以阅读Vitalik的这篇文章中的“谁可以提交批量交易”一节。

总之,IMO定序器在去中心化和速度之间取得了良好的平衡。我们目前看到的还只是定序器的最小可行产品,还有很多聪明人正在努力改进它。未来将一片光明!

原文链接:

https://twitter.com/krzKaczor/status/1415326134552641536

作者:KrisKaczor

翻译&校对:?闵敏&阿剑

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

区块博客

[0:0ms0-6:964ms