原子交换
桌面应用使用**哈希时间锁合约(HTLC)**在闪电网络上原子性地执行交换。双方同时锁定各自的资产 —— 要么整笔交换完成,要么双方都拿回自己的资金。不存在对手方风险。这与闪电主网上首笔 RGB 资产交换背后的机制相同。工作原理
- 接单方通过 WebSocket 向做市方请求实时报价(每个
quote_response都带有一个rfq_id)。 - 接单方调用
POST /api/v1/swaps/init—— 做市方锁定汇率,并返回swapstring、payment_hash和access_token。access_token只返回一次 —— 请与 payment hash 一起保存,后续轮询交换状态时需要用到它。 - 接单方的 RGB Lightning Node 将该
swapstring加入白名单(授权其通过该节点路由)。 - 接单方调用
POST /api/v1/swaps/execute—— 做市方发起 HTLC。 - 闪电网络路由该 HTLC:做市方揭示 preimage 以领取 BTC,同时将 RGB 资产释放给接单方。
- 如果任一方未能在 HTLC 超时前完成,双方资金都会自动退回。
- 接单方用第 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 示例
原子交换流程的端到端代码示例
错误处理
处理交换失败与边界情况