Déployer et tester le code chaîne Stablecoin
Vous pouvez déployer le code chaîne directement à partir de la console Oracle Blockchain Platform ou à l'aide de Blockchain App Builder.
Déploiement du code chaîne
Avant de déployer le code chaîne, créez des ID d'inscription pour chaque utilisateur de jeton, puis mappez les utilisateurs de jeton avec leurs ID d'inscription respectifs. Indiquez un seul utilisateur pour chaque inscription. Pour plus d'informations sur l'ajout d'inscriptions, reportez-vous à Ajout d'inscriptions à un proxy REST dans Utilisation d'Oracle Blockchain Platform.
Lorsque vous déployez le code chaîne de jeton, vous devez appeler la méthode init et transmettre l'ID d'organisation et l'ID utilisateur de l'utilisateur Token Admin.
Pour plus d'informations sur le déploiement à partir de la console Oracle Blockchain Platform, reportez-vous à Utilisation du déploiement avancé dans Utilisation d'Oracle Blockchain Platform.
- Extrayez le fichier d'archive
Stablecoin.zip. - Importez le code chaîne
Stablecoinvers l'extension Blockchain App Builder dans Visual Studio Code. - Modifiez le fichier
.ochain.jsonpour mettre à jour la valeur de la cléconfigFileLocationvers le chemin du fichier de spécificationStablecoin.yml. - Ouvrez une fenêtre de terminal et accédez au dossier de codes chaîne, puis exécutez la commande suivante.
npm install
Exemple de flux de processus pour le code chaîne Stablecoin
Un flux de processus typique utilisant les méthodes stablecoin suit ces étapes de base.- Les administrateurs de jetons utilisent la méthode
initializeStablecoinTokenpour initialiser le stablecoin, en spécifiant des valeurs pourcurrencyNamefixe (tel que USD) etconversionRate. - Les administrateurs de jetons utilisent les méthodes
createAccountetassociateTokenToAccountpour créer des comptes de jetons et affecter des rôles à tous les utilisateurs, y compris les approbateurs pour les approbations multiniveau, les mineurs, les notaires, les expéditeurs et les récepteurs. - Les administrateurs de jetons ou les administrateurs d'organisation utilisent la méthode
createAccountPolicyCheckpour créer des stratégies de compte pour tous les expéditeurs et récepteurs, et vérifier les indicateurs KYC, AML et de restriction. - Les administrateurs de jetons utilisent la méthode
createApprovalPolicyCheckpour définir des stratégies d'approbation en spécifiant des seuils de transaction, des exigences d'approbation telles que le nombre requis d'approbations et des détails d'approbateur avec des séquences d'approbation pour les approbations à plusieurs niveaux. - Les administrateurs de jetons utilisent la méthode
addRolepour affecter des rôles tels que mineur, brûleur et notaire aux comptes.
- Le minter utilise la méthode
requestMintpour demander l'approbation de la monnaie stable. - L'approbateur mint utilise la méthode
approveMintpour approuver la demande du minter. - Les stablecoins sont émis sur le compte du mineur.
- Un utilisateur lance un transfert à l'aide de la méthode
holdTokens. - Le système vérifie la conformité de la stratégie
AccountPolicyCheck. Si les valeurskycComplianceouamlCompliancesont définies surfalsepour l'expéditeur ou le destinataire, le transfert n'a pas lieu. Si la valeurrestrictionFlagest définie surtruepour l'expéditeur ou le destinataire, seul le montant situé dans la plage la plus basse de la stratégie d'approbation peut être transféré. Le montant du transfert est rapproché des seuilsApprovalPolicyChecket les approbateurs appropriés avec les séquences définies sont appliqués à la transaction. - Les approbateurs utilisent la méthode
approveTransactionpour vérifier et autoriser le transfert. Les approbations sont effectuées en fonction de la séquence de l'approbateur telle que définie dans la stratégie d'approbation. - Après toutes les approbations, le notaire système (défini lors du processus de blocage) utilise la méthode
executeHoldTokenspour approuver la transaction. Le montant approuvé est transféré sur le compte du bénéficiaire.
kycCompliance, amlCompliance et restrictionFlag pour l'expéditeur et le destinataire sont validées lors de toutes les approbations qui utilisent les méthodes approveTransaction ou executeHoldTokens.
- Le brûleur utilise la méthode
requestBurnpour demander l'approbation de brûler (détruire) des stablecoins. - L'approbateur de gravure utilise la méthode
approveBurnpour approuver la demande du brûleur. - Les stablecoins sont brûlés sur le compte du brûleur.
- Les administrateurs et les auditeurs peuvent suivre chaque opération de menthe, de blocage, de transfert, d'approbation à plusieurs niveaux et de gravure à l'aide des méthodes
getAccountTransactionHistoryetgetAccountTransactionHistoryWithFilters.