部署和测试 Stablecoin Chaincode

您可以直接从 Oracle Blockchain Platform 控制台或使用 Blockchain App Builder 部署链代码。

部署链代码

在部署链代码之前,请为每个令牌用户创建注册 ID,然后将令牌用户映射到其各自的注册 ID。为每个注册仅指定一个用户。有关添加登记的详细信息,请参阅使用 Oracle Blockchain Platform 中的将登记添加至 REST 代理

部署令牌链代码时,必须调用 init 方法并传递 Token Admin 用户的组织 ID 和用户 ID。

有关从 Oracle Blockchain Platform 控制台进行部署的信息,请参阅 Using Oracle Blockchain Platform 中的 Use Advanced Deployment

要使用区块链应用构建器进行部署,请完成以下步骤。
  1. 提取 Stablecoin.zip 归档文件。
  2. Stablecoin 链代码导入 Visual Studio Code 中的 Blockchain App Builder 扩展。
  3. 编辑 .ochain.json 文件以将 configFileLocation 密钥的值更新为 Stablecoin.yml 规范文件的路径。
  4. 打开终端窗口并导航到 chaincode 文件夹,然后运行以下命令。
    npm install
有关使用区块链应用程序构建器部署的更多信息,请参阅 Using Oracle Blockchain Platform 中的 Deploy Your Chaincode Using Visual Studio Code

Stablecoin Chaincode 的示例流程

使用稳定币方法的典型过程流程遵循这些基本步骤。
设置:
  1. 令牌管理员使用 initializeStablecoinToken 方法初始化稳定币,指定固定 currencyName(例如 USD)和 conversionRate 的值。
  2. 令牌管理员使用 createAccountassociateTokenToAccount 方法创建令牌账户并为所有用户分配角色,包括多级审批、矿工、公证人、发件人以及接收者的审批者。
  3. 令牌管理员或组织管理员使用 createAccountPolicyCheck 方法为所有发送者和接收者创建账户策略,并验证 KYC、AML 和限制标志。
  4. 令牌管理员使用 createApprovalPolicyCheck 方法定义审批策略,方法是指定事务处理阈值、审批要求(如所需的审批数)以及审批人详细信息(具有多级别审批的审批顺序)。
  5. 令牌管理员使用 addRole 方法将 minter、Burner 和 Notary 等角色分配给帐户。
铸造:
  1. minter 使用 requestMint 方法请求批准 mint 稳定币。
  2. mint 审批者使用 approveMint 方法来批准 minter 的请求。
  3. 稳定币发给矿工的账户。
持有和转让:
  1. 用户使用 holdTokens 方法启动传输。
  2. 系统将检查 AccountPolicyCheck 策略是否符合性。如果将发送方或接收方的 kycComplianceamlCompliance 值设置为 false,则不会进行转移。如果为发送方或接收方将 restrictionFlag 值设置为 true,则只能传送审批策略中最低范围内的金额。转移金额与 ApprovalPolicyCheck 阈值匹配,具有已定义序号的相应审批人将应用于事务处理。
  3. 审批者使用 approveTransaction 方法检查和授权调动。审批将根据审批策略中定义的审批人顺序进行。
  4. 在所有审批之后,系统公证人(在暂挂处理期间定义)使用 executeHoldTokens 方法审批事务处理。批准金额将转移至接收人的账户。
在使用 approveTransactionexecuteHoldTokens 方法的所有审批期间,将验证发送者和接收者的 kycComplianceamlCompliancerestrictionFlag 值。
燃烧:
  1. 刻录器使用 requestBurn 方法请求批准刻录(销毁)稳定币。
  2. 刻录审批人使用 approveBurn 方法来批准刻录机的请求。
  3. 稳定币从燃烧器的帐户中燃烧。
审计:
  • 管理员和审计员可以使用 getAccountTransactionHistorygetAccountTransactionHistoryWithFilters 方法跟踪每一次铸币、持有、转移、多级审批和刻录操作。
有关使用 Postman 集合的更多详细信息,请参阅 Blockchain App Builder for Oracle Blockchain Platform 中的以下主题。