Skip to main content
KaleidoSwap 通过客户端的 RGB Lightning Node 原子性地执行交换:

原子交换

桌面应用使用**哈希时间锁合约(HTLC)**在闪电网络上原子性地执行交换。双方同时锁定各自的资产 —— 要么整笔交换完成,要么双方都拿回自己的资金。不存在对手方风险。这与闪电主网上首笔 RGB 资产交换背后的机制相同。

工作原理

  1. 接单方通过 WebSocket 向做市方请求实时报价(每个 quote_response 都带有一个 rfq_id)。
  2. 接单方调用 POST /api/v1/swaps/init —— 做市方锁定汇率,并返回 swapstringpayment_hashaccess_tokenaccess_token 只返回一次 —— 请与 payment hash 一起保存,后续轮询交换状态时需要用到它。
  3. 接单方的 RGB Lightning Node 将该 swapstring 加入白名单(授权其通过该节点路由)。
  4. 接单方调用 POST /api/v1/swaps/execute —— 做市方发起 HTLC。
  5. 闪电网络路由该 HTLC:做市方揭示 preimage 以领取 BTC,同时将 RGB 资产释放给接单方。
  6. 如果任一方未能在 HTLC 超时前完成,双方资金都会自动退回。
  7. 接单方用第 2 步得到的 payment_hash access_token 轮询 POST /api/v1/swaps/atomic/status。token 缺失或无效时统一返回 404 Swap not found

时序图

使用到的接口端点

WebSocket 环境

请将 {client_id} 替换为你本次会话的唯一标识符。

SDK 集成

SDK 会替你处理 WebSocket、init 和 execute 这几个步骤:

交换 API

原子交换 init 与 execute 的接口端点

市场 API

报价与市场数据的接口端点

SDK 示例

原子交换流程的端到端代码示例

错误处理

处理交换失败与边界情况