存款權杖應用程式工作流程

存款權杖是代表銀行存款的有效權杖。

存款權杖案例支援以最少的治理負荷發行和分配權杖。權杖由建立者加以提示,然後由發行者核發給使用者。建立者使用保留式移轉來傳送權杖給「發行者」,這需要核准者簽核。發照者可以直接將權杖分配給不需要進一步核准的使用者。使用者不需要核准即可燒錄自己的權杖。

  • 需有次要與公證人角色。
  • 燃燒器角色並非必要。使用者可以使用 burnTokens API 燒錄自己的記號。
  • 發行者使用 transferTokens 方法直接將權杖傳輸給使用者。
  • 唯一的保留式移轉是介於建立者與核發者之間。
下表摘要此案例中的動作者。
動作項目 角色 描述
Administrator 權杖管理 初始化系統,指定迷你倉和公證人角色。
建立者 Minter 要求對核發者進行微調並起始以保留為基礎的移轉。
核准者 公證人 核准 Mint 要求並完成保留調動。
發出者 接收建立者的記號,並直接將它們分送給使用者。
User 直接從發照者接收權杖。使用者無須核准即可燒錄其權杖。
管理員完成下列步驟以初始化系統。
  1. 使用 initializeDepositToken API 初始化存款權杖系統。
  2. 使用 registerOrg API 註冊組織。
  3. 使用 createAccount API 建立帳戶。
  4. 使用 associateTokenToAccount API 將權杖與帳戶建立關聯。
  5. 使用 addRole API 將次要角色指派給建立者,並將公證角色指派給核准者。
系統初始化之後,典型的處理流程會遵循這些基本步驟。
  1. 薄荷訂金權杖。
    1. 權杖建立者使用 requestMint API 來提交要求以提示存款權杖。
    2. 核准者使用 approveMint API 來複查與核准提示存款權杖的要求。保證金變數替代字會記入建立者的帳戶。或者,核准者可以使用 rejectMint API 來拒絕要求。
  2. 將保證金變數替代字移轉給核發者。
    1. 建立者使用 holdTokens API 來要求將權杖傳輸給發行者。
    2. 核准者使用 executeHoldTokens API 來驗證和核准傳輸要求。保證金權杖會轉移至發行者的帳戶。或者,核准者可以使用 releaseHold API 來拒絕傳輸。
  3. 核發權杖給使用者。
    • 發照者使用 transferTokens API 給使用者。保證金變數替代字會記入使用者的帳戶。
  4. 燒錄權杖。
    • 使用者可以使用 burnTokens API 來兌換其保證金權杖。
  5. 驗證權杖餘額。
    • 使用者可以使用 getAccountBalance API 來取得持有的保證金權杖總數。