为了实现这一点,rollup 交易在单独的链上执行,该链甚至可以运行特定于 rollup 的 EVM 版本。 执行 rollup 交易后的下一步是将它们批处理在一起,并将它们发布到以太坊主链上。 整个过程本质上是执行交易、获取数据、压缩数据,并将其以单个批次的形式汇总到主链上,因此得名「rollup」。 尽管这看起来是一个潜在的好解决方案,但接下来自然会出现一个问题: 「以太坊如何知道发布的数据是有效的,并且不是由试图使自己受益的不良行为者提交的?」 确切的答案取决于特定的 rollup 实现,但一般来说,每个 rollup 在第 1 层部署一组智能合约,负责处理存款和取款以及验证证明。 证明也是不同类型的 rollup 之间的主要区别所在。 Optimistic rollups 使用欺诈证明。相比之下,ZK rollups 则使用有效性证明。 让我们进一步探讨这两种类型的 rollups。 Optimistic 与 ZK Rollups 比较Optimistic rollups 将数据发布到第 1 层,并假设它是正确的,因此被称为「乐观的」(optimistic)。如果发布的数据是有效的,我们就在快乐的道路上,不需要做其他事情。Optimistic rollups 得益于在乐观的情况下不需要做任何额外的工作。 在发生无效交易的情况下,系统必须能够识别它,恢复正确的状态并惩罚提交此类交易的一方。为了实现这一点,Optimistic rollups 实现了一个争议解决系统,该系统能够验证欺诈证明,检测欺诈交易,并抑制不良行为人提交其他无效交易或错误的欺诈证明。 在大多数 Optimistic rollups 实现中,能够向第 1 层提交成批交易的一方必须提供保证金,通常以 ETH 的形式。任何其他网络参与者如果发现错误的交易,都可以提交欺诈证明。 提交欺诈证明后,系统进入争议解决模式。在这种模式下,这次可疑交易在以太坊主链上再次执行。如果执行证明交易确实是欺诈性的,则提交此交易的一方将受到惩罚,通常是通过削减其抵押的 ETH。 为了防止不良行为者使用不正确的欺诈证明向网络发送垃圾邮件,希望提交欺诈证明的各方通常还必须提供可能会受到削减的保证金。 为了能够在第 1 层执行 rollup 交易,Optimistic rollups 必须实现一个系统,能够以交易最初在 rollup 上执行时的确切状态重放交易。这是 Optimistic rollups 的复杂部分之一,通常通过创建一个单独的管理器合约,用 rollup 的状态替换某些函数调用来实现的。 (责任编辑:admin) |