Skip to main content
原子交换是一种无需信任的点对点兑换方式,用于用户与被选中执行其意图的 solver 之间的结算。这类兑换之所以具有“原子性”,是因为它们的设计决定了兑换要么完整完成,要么完全不发生,不存在中间状态。因此,在整个兑换过程中,用户和 solver 都不会在任何时刻失去对自己资产的控制。而传统跨链桥则要求你在跨链过程中将资产的控制权交给托管方(WBTC)、中间网络(Threshold、Thorchain)或多签(Avalanche bridge)。 Garden 使用哈希时间锁定合约(HTLC)来实现原子交换。顾名思义,它们用于在双方之间转移资产时强制执行有时间限制的条件。它们要求交易的接收方在一定时间内生成加密证明,以确认已收到付款。该证明是对合约中所嵌入的加密挑战的响应,通常涉及哈希函数。如果接收方未能在规定时间内提供正确的证明,交易将自动撤销,资产会退还给发送方。下面通过一个示例和流程图来更好地说明这一点。

原子交换如何运作?

以我们的场景为例:用户提交一个兑换意图,拍卖机制为此选出一个 solver。执行意图后,solver 和用户需要结算(兑换)各自的资产。
原子交换流程
  1. 用户将资产 A 存入链 A 上的一个透明金库。
  2. Solver 核对存入的金额,如果与预期金额一致,就将资产 B 存入链 B 上一个相同的透明金库。
  3. 用户(客户端 UI)核实 solver 存入的金额,如果无误,就打开金库,在链 B 上领取资产 B。
  4. 此时 solver 可以从链 A 上的用户金库中领取资产 A,兑换完成。
这就是我们所说的理想流程,即一切按预期进行。下一节将介绍该系统中的失败场景,以及 Garden 针对这些场景的保障措施。

场景与保障措施

1. 资产 A 和资产 B 均已锁定,但未领取资产 B

失败场景 1
  • 惩罚:质押者被罚没意图价值的 1%。
  • Solver 的处理方式:24 小时后退还资产 B,并获得被罚没的 SEED 作为补偿。
  • 用户的处理方式:48 小时后退还资产 A。

2. 资产 B 未锁定

失败场景 2
  • 惩罚:solver 和质押者被罚没意图价值的 0.5%。
  • 用户的处理方式:48 小时后退还资产 A,并获得被罚没的 SEED 作为补偿。