本文比较了欺诈证明和有效性证明这两种用于rollup的交易有效性检查机制,介绍了它们的工作原理、特点及优缺点。欺诈证明用于乐观rollup,假定所有交易都是有效的,而有效性证明用于ZK rollup,通过计算每批交易的有效性证明以确保交易的正确性。
完全比较:欺诈证明和有效性证明是什么?
欺诈证明和有效性证明都是由 rollups 用来检查交易的有效性。深入了解它们的差异、功能以及优缺点。
欺诈证明和有效性证明都是由 rollups 使用的机制,用于检查交易的有效性。但是它们是如何工作的,它们之间有什么区别?
本文深入探讨了欺诈证明和有效性证明之间的主要差异、它们如何运作及各自的优缺点。
先决条件
欺诈证明和有效性证明是什么
欺诈证明和有效性证明是用于确保 第二层 区块链 rollups 中交易的正确性和安全性的机制,这些是 第一层 的扩展方案。这些证明使得 rollups 能够通过离线处理交易,同时利用以太坊的安全性,来实现更高的吞吐量和更低的 gas 成本。
欺诈证明:乐观 Rollups 的工作原理
欺诈证明在乐观 Rollups 中使用,顾名思义,乐观地假设所有交易都是默认有效的。这种方法通过不要求每个交易立即被验证,从而允许高吞吐量和低延迟。相反,交易被发布到以太坊,并且有一个机制在规定的时间框架内通过使用 欺诈证明 对这些交易进行挑战:
- 默认有效性假设:乐观 Rollups 假设所有离线交易都是 默认有效的。这意味着它们不需要对每笔交易的计算验证。
- 提议状态:运营者可以通过将当前认为的 roll-up 链的有效状态发布到 L1 中,来提议其状态。这些提议状态是基于处理过的离线交易批次。
- 挑战期:有一个特定的时间窗口称为“挑战期”,在此期间,任何运营者都可以挑战批中交易的有效性。
- 提交挑战:如果运营者识别到潜在的欺诈交易,他们可以提交一个 欺诈证明。该证明实质上是对提议状态的挑战。
- 欺诈证明机制:欺诈证明机制是一种博弈论机制,涉及一个过程,其中挑战的运营者和提议状态的运营者进行“呼叫-响应游戏”以缩小争议至单个计算步骤。然后在以太坊上执行这个步骤。如果这个步骤的结果与提议状态所暗示的结果不同,欺诈证明就成功了。
- 欺诈证明的结果:
- 如果欺诈证明成功,roll-up 将重新执行有争议的交易批次,并恢复到先前的有效状态。
- 包含错误交易的运营者会受到惩罚,通常是没收已冻结的押金。
- 最终确认:如果在挑战期内没有引发挑战,提议状态将被接受为在 L1 上有效,并且交易得到最终确认。
有效性证明:ZK Rollups 的工作原理是什么?
零知识 (ZK) Rollups 采用有效性证明。与其假设交易是有效的然后在挑战时证明其无效,ZK Rollups 在提交到以太坊之前会为每个交易批计算一个 有效性证明:
- ZK 证明(有效性证明):ZK Rollups 使用 ZK 证明,也称为有效性证明,来验证交易的正确性。有效性证明提供了交易批正确性的加密保证。
- 证明和验证:证明者为每个提交到 L1 的交易批计算有效性证明。然后,这个证明由一个 L1 智能合约验证,称为验证者。
有效性证明与欺诈证明之间的主要优缺点
欺诈证明的优点(乐观 Rollups)
- 较低的计算开销:欺诈证明在前期需要较少的计算工作,因为交易假设为有效,直到证明为无效。
- 简单性和灵活性:乐观的方法更容易实施,并且不需要复杂的加密证明系统。
- 较低的 gas 费用:乐观 Rollups 通常具有较低的 gas 费用,因为欺诈证明比有效性证明在交易验证上需要更少的计算能力。
欺诈证明的缺点(乐观 Rollups)
- 较长的 finality 时间:交易一旦被 L2 排序者处理后会被确认,但需要等待挑战期(通常大约持续七天)结束,导致在 L1 上的结算延迟,因此 finality 时间更长。
- 潜在的恶意行为:默认有效性的假设可能被利用,如果没有足够的激励或机制来检测欺诈。
- 经济安全模型:这个模型依赖经济激励(押金和惩罚)来确保诚实,这可能比加密保证更弱。欺诈证明依赖于运营者的诚实。
有效性证明的优点(ZK Rollups)
- 更快的 finality:因为每个交易批在发布到 L1 时即被确认,并且有效性证明也同时被验证。相比使用欺诈证明,最终确认更快,因为没有挑战期。
- 强大的安全保证:ZK 证明的加密特性确保只有有效交易被处理,几乎不可能包括欺诈交易,前提是加密是可靠的。它依赖加密机制来保证安全,而不是运营者的诚实。
- 可扩展性和效率:ZK Rollups 由于允许大量交易压缩成单个证明,能够提供更大的可扩展性。
有效性证明的缺点(ZK Rollups)
- 高计算成本:生成有效性证明需要 大量计算资源,这可能增加费用,特别是当交易复杂时。
- 复杂的实现:ZK Rollups 所需的加密算法和证明系统更复杂,难以实现和维护。
- 可信的设置: 证明系统,如 SNARK,需要可信的设置,如果处理不当,可能会危害 Rollup 的安全性。
总结
欺诈证明 和 有效性证明 是用于以太坊 rollups 的交易验证机制。乐观 Rollups 利用欺诈证明,其设计相对简单,但 tradeoff 是更长的 finality 时间和潜在的安全风险。ZK Rollups 利用有效性证明,提供更快的 finality 和更高的安全性,但涉及更高的计算成本和复杂性。对于注重安全性的协议,ZK Rollups 更受青睐,因为它们提供外部可验证的证明。