随着以太坊 (ETH) 继续面临可扩展性挑战,乐观汇总 已经成为解决网络拥堵和高交易费用的有前途的解决方案。本综合指南探讨了乐观汇总如何工作以及提供详细说明的内容,以帮助实现更快的交易。
乐观汇总如何运作?
乐观汇总的功能类似于基于支票的银行系统。就像银行接受支票并仅在争议时拒绝一样,乐观汇总将所有交易视为有效,除非通过欺诈证明进行挑战。这个系统作为二层扩展解决方案运行,保持安全性通过以太坊的基础层,同时在链下处理交易。
主要组成部分
乐观汇总的架构依赖于几个关键组件:
- 乐观虚拟机 (OVM) 作为运行环境,确保在层 1 和层 2 之间的智能合约执行的确定性。这个沙盒环境保证跨层的一致状态转换。
- 乐观 Geth 作为二层客户端,拥有唯一的排序者,负责将交易批次排序并附加到主链合约。这个排序者在维护交易顺序和状态管理中起着关键作用。
- 链合约构成乐观汇总系统的骨干,运行在以太坊主网上。两个重要的合约是:
- OVM_CanonicalTransactionChain (CTC) 维护应用于 OVM 状态的交易的追加日志。排序者将 L2 交易批次添加到此链中,同时允许用户排队 L2 交易。
- OVM_StateCommitmentChain (SCC) 储存与 CTC 交易对应的提议状态根,与规范链中的交易保持一对一的关系。
使用乐观汇总加速区块链交易
存款流程
为了启动更快的交易,用户必须首先了解存款过程。从层 1 转移资产到层 2 时,发生以下步骤:
用户将代币发送到层 1 的代币桥合约。这座桥将这些代币存入托管,并通过信使合约触发消息,目标是对应的层 2 桥,要求完成存款。这笔交易通过排队函数插入到 CTC 中。
排序者必须执行此排队的交易,调用 L2 信使合约中的 relayMessage 函数。最后,信使合约指示桥通过在层 2 上铸造等量代币来完成存款,然后将这些代币释放到用户的 L2 地址。
提款流程
提款过程模仿存款序列,但由于安全考虑,它引入了额外的复杂性。在提款时,系统遵循以下步骤:
用户通过 L2 代币桥启动提款,该桥销毁代币并与信使合约通信。这信息记录在 L2 状态树中,并最终在排序者用新交易批次更新时出现在 CTC 中。
排序者将状态发布到 SCC,启动强制等待期,在此期间可以对状态更改提出挑战。这段时间通常为一周,允许在必要时提交欺诈证明。
在挑战期结束后,可以将消息转发到 L1 信使合约,该合约验证已过期的欺诈证明窗口,然后指示代币桥将代币释放给用户。
解决提款延迟问题
为期一周的争议期对寻求快速访问资金的用户构成了重大挑战。然而,有几种策略可以缓解这种延迟:
流动性提供者协助的快速提款
这一创新解决方案引入了流动性提供者 (LP) 来促进更快的提款。LP 运行完整的 L2 节点以验证 CTC 交易,并可以向用户提供即时流动性,收取费用。
验证过程允许 LP 在排序者发布状态根之前评估交易有效性。当 LP 接受提款请求时,他们会向用户提供即时流动性,同时为自己声明延迟的桥发布,从而创造互惠的安排。
该系统提供了若干优势:
- 用户无需等待争议期结束即可立即获取资金。
- LP 通过提供流动性赚取费用,同时通过交易验证维持安全性。
- 由于无论排序者的状态根发布如何,LP 都可以通过 CTC 验证交易,整个过程保持安全性。
然而,这种方法确实存放了一些限制:
- 低流动性的代币可能面临高昂的流动性提供成本。
- 主要提款事件可能触发流动性短缺。
- LP 必须保持准确的验证流程以避免财务损失。
平衡速度与安全性
乐观汇总代表了一种平衡安全性与交易速度的复杂扩展解决方案。虽然固有的提款延迟带来了挑战,但流动性提供者协助的提款为需要立即访问资金的用户提供了切实可行的解决方案。随着生态系统的不断发展,我们可以预期这些机制的进一步改进,可能引入新的解决方案来在保持强大安全保证的同时提高交易速度,这使得乐观汇总成为以太坊一种极具吸引力的扩展解决方案。