Paquet de code chaîne CBDC en gros

Oracle Blockchain Platform Digital Assets Edition inclut un exemple de code chaîne pour le scénario de monnaie numérique de banque centrale de gros (CBDC).

Le package de code chaîne CBDC de gros est basé sur la norme étendue Token Taxonomy Framework prise en charge par Blockchain App Builder. Le paquet met en œuvre des méthodes pour un système où les jetons représentant la monnaie fiduciaire sont détenus dans des institutions financières et sont émis et gérés par des institutions financières réglementées. L'exemple de fichier de spécification génère des méthodes d'initialisation de jetons, de gestion de comptes, d'affectation de rôles et d'exécution d'opérations telles que l'extraction, le transfert et la gravure de jetons. Il fournit également des comptes de notaire pour l'approbation des opérations de frappe et des transferts, applique le respect des limites quotidiennes au niveau du compte et active les procédures d'audit. Le code chaîne peut être généré par Blockchain App Builder à partir du fichier de spécification WholesaleCBDC.yml dans TypeScript ou Go.

Le package de code chaîne CBDC de gros est téléchargeable à partir de la console Oracle Blockchain Platform et inclut les composants suivants.
  • WholesaleCBDC.zip, fichier d'archive qui contient le code chaîne packagé pour le déploiement.
  • WholesaleCBDC.yaml, un fichier de spécification que vous pouvez utiliser avec Blockchain App Builder pour échafauder le code chaîne WholesaleCBDC.
  • WholesaleCBDC_postman_collection.json, une collection Postman qui vous permet de tester les API dans le code chaîne.
  • README.md, guide détaillé pour l'utilisation du code chaîne.

Pour obtenir le package de code chaîne CBDC de gros, dans la console des ressources numériques Oracle Blockchain Platform, cliquez sur l'onglet Ressources numériques, puis sélectionnez Application CBDC de gros.

Vous pouvez essayer le code chaîne CBDC en gros de la même manière que les autres échantillons. Vous devez être administrateur pour installer et déployer des exemples de codes chaîne.

  1. Sur la page Devise numérique de banque centrale de gros, cliquez sur Installer.
  2. Dans la fenêtre Installer le code de chaîne, indiquez les pairs sur lesquels installer le code de chaîne, puis cliquez sur Installer.
  3. Cliquez sur Déployer.
  4. Dans la fenêtre Déployer le code chaîne, indiquez le canal vers lequel déployer le code chaîne. Les paramètres initiaux du code chaîne seront utilisés pour indiquer l'administrateur de jeton. Ces valeurs ne sont pas modifiables. Par défaut, ils correspondent à l'ID d'organisation et à l'ID d'utilisateur de l'utilisateur connecté à la console. Cliquez sur Déployer.
  5. Cliquez sur Appeler.
  6. Dans la fenêtre Appeler un code chaîne, indiquez le canal sur lequel exécuter la transaction. Dans la liste Action, indiquez une action à effectuer. Cliquez sur Exécuter.

Fichier de spécifications

Le fichier de spécification CBDC de gros (Wholesale_CBDC.yml) est basé sur le fichier de spécification étendu Token Taxonomy Framework. Il inclut un attribut model, qui génère le code chaîne propre à l'application. Dans ce cas, model: wcbdc crée des méthodes supplémentaires pour l'application CBDC de gros lorsque le code chaîne est généré. Le fragment de code suivant du fichier de spécification affiche l'attribut model.
#
# Copyright (c) 2025, Oracle and/or its affiliates. All rights reserved.
#

assets:

# Token asset to manage the complete lifecycle of Wholesale CBDC token.

    - name: CBDC # Asset name
      type: token # Asset type
      standard: ttf+   # Token standard
      events: true # Supports event code generation for non-GET methods
      model: wcbdc # Supports creation of additional methods for Wholesale CBDC application

      anatomy:
          type: fungible # Token type 
          unit: fractional # Token unit

      behavior: # Token behaviors
          - divisible:
                decimal: 2 
          - mintable: 
                mint_approval_required: true 
          - transferable 
          - burnable:
                burn_approval_required: true 
          - holdable
          - roles:
                minter_role_name: minter
                burner_role_name: burner
                notary_role_name: notary
                mint_approver_role_name: notary
                burn_approver_role_name: notary