细节

过程

  1. 用户向合约发送代币。该交易存储在合约中。embark(), embarkWithRecipient(), 或 embarkWithSignature()。

  2. 船长(Captain)查询要发送的交易的源链。

  3. 船长(Captain)发送批次(开始、结束、哈希)以开始转移 depart()

  4. 至少等待24小时。

  5. 船员(Crewmembers) 检查事务,如果是无效的,也可以进行质疑 disputeBatch()do nothing.

  6. 无争议的批次可以由大副通过提供作为calldata的交易执行。用户在另一条链上接收他们的代币。disembark()

  7. 交易的哈希值必须等于批处理中的哈希值。

  8. 如果存在欺诈交易(例如黑客),所有者可以取消单笔交易,这样它就不会被执行。jettison(), jettisonGroup(), removeBatches()。

  9. 所有者可以手动管理合约中的代币,并必须确保有足够的资金。

最后更新于