Paquet de code chaîne CBDC de gros confidentiel

Oracle Blockchain Platform Digital Assets Edition inclut un exemple de code chaîne pour la version confidentielle du scénario de devise numérique de la banque centrale de gros (CBDC).

Le package de codes chaîne confidentiels CBDC de gros met en œuvre des méthodes pour le même scénario que le package de codes chaîne CBDC de gros d'origine, avec l'ajout de la fonctionnalité de paiements confidentiels. Le code chaîne utilise la norme étendue Token Taxonomy Framework, améliorée pour fonctionner avec les paiements confidentiels et personnalisée pour le scénario CBDC de gros. Les jetons qui représentent 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. Vous pouvez utiliser Blockchain App Builder pour générer ce code chaîne à partir du fichier de spécification WholesaleCBDC-Confidential.yml dans TypeScript.

Le package de codes chaîne CBDC de gros peut être téléchargé à partir de la console Oracle Blockchain Platform et comprend les composants suivants.
  • WholesaleCBDC-Confidential.zip, fichier d'archive contenant le code chaîne packagé pour le déploiement.
  • WholesaleCBDC-Confidential.yml, un fichier de spécification que vous pouvez utiliser avec Blockchain App Builder pour échafauder le code chaîne WholesaleCBDC Confidential.
  • WholesaleCBDC-Confidential_postman_collection.json, une collection Postman qui vous permet de tester les API dans le code chaîne.
  • README.md, guide détaillé sur l'utilisation du code chaîne.

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

Fichier de spécification

Le fichier de spécification CBDC de gros confidentiel (WholesaleCBDC-Confidential.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é. Elle inclut également un attribut confidential, défini sur true, qui génère le code chaîne en mode confidentiel. Le fichier de spécification suivant présente les attributs confidential et model, ainsi que les comportements requis.

Remarques :

Le code chaîne en mode confidentiel utilise des engagements Pedersen, qui ne peuvent valider que des valeurs entières. En interne, les valeurs d'entrée sont multipliées par un exposant de 10, en fonction de la valeur décimale dans le fichier de spécification, et le résultat est stocké sous forme d'entier. Pour éviter les calculs incohérents lors de l'utilisation du package de code chaîne, ne modifiez pas la ligne decimal dans le fichier de spécification, puis synchronisez le code chaîne.
#
# Copyright (c) 2025, Oracle and/or its affiliates. All rights reserved.
#
confidential: true # Privacy-preserving feature to enable transaction-level confidentiality
assets:
 
# Token asset to manage the complete life cycle 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
 
      properties: # Custom asset attributes for wholesale CBDC token
 
          - name: Currency_Name # The digital form of the national currency issued by a central bank for wholesale transactions between financial institutions
            type: string
            mandatory: true
 
customMethods: