Confidential Wholesale CBDC Chaincode-Paket

Die Oracle Blockchain Platform Digital Assets Edition enthält Beispiel-Chaincode für die vertrauliche Version des CBDC-Szenarios (Digital Currency) der Großhandelszentralbank.

Das CBDC Confidential Chaincode-Großhandelspaket implementiert Methoden für dasselbe Szenario wie das ursprüngliche CBDC-Chaincode-Großhandelspaket, wobei die Funktion "Vertrauliche Zahlungen" hinzugefügt wird. Der Chaincode verwendet den erweiterten Token Taxonomy Framework-Standard, der für die Arbeit mit vertraulichen Zahlungen verbessert und für das CBDC-Großhandelsszenario angepasst wurde. Token, die Fiat-Währung darstellen, werden bei Finanzinstituten gehalten und von regulierten Finanzinstituten ausgegeben und verwaltet. Mit Blockchain App Builder können Sie diesen Chaincode aus der Spezifikationsdatei WholesaleCBDC-Confidential.yml in TypeScript generieren.

Das CBDC-Chaincode-Großhandelspackage kann von der Oracle Blockchain Platform-Konsole heruntergeladen werden und umfasst die folgenden Komponenten.
  • WholesaleCBDC-Confidential.zip, eine Archivdatei, die den in einem Package integrierten Chaincode für das Deployment enthält.
  • WholesaleCBDC-Confidential.yml, eine Spezifikationsdatei, die Sie mit Blockchain App Builder verwenden können, um den WholesaleCBDC Confidential-Chaincode zu erstellen.
  • WholesaleCBDC-Confidential_postman_collection.json, eine Postman-Collection, mit der Sie die APIs im Chaincode testen können.
  • README.md, eine Schritt-für-Schritt-Anweisung zum Arbeiten mit Chaincode.

Um das CBDC-Großhandelskettencodepackage abzurufen, klicken Sie in der Oracle Blockchain Platform Digital Assets-Konsole auf die Registerkarte Digitale Assets, und wählen Sie Großhandels-CBDC - Vertrauliche Anwendung aus.

Spezifikationsdatei

Die vertrauliche CBDC-Großhandelsspezifikationsdatei (WholesaleCBDC-Confidential.yml) basiert auf der erweiterten Spezifikationsdatei für das Token Taxonomy Framework. Sie enthält ein Attribut model, das den anwendungsspezifischen Chaincode generiert. In diesem Fall erstellt model: wcbdc zusätzliche Methoden für die CBDC-Großhandelsanwendung, wenn der Chaincode generiert wird. Außerdem enthält es das Attribut confidential, das auf true gesetzt ist und den Chaincode im vertraulichen Modus generiert. Die folgende Spezifikationsdatei enthält die Attribute confidential und model sowie die erforderlichen Verhaltensweisen.

Hinweis:

Der Chaincode im vertraulichen Modus verwendet Pedersen-Verpflichtungen, die nur ganzzahlige Werte festschreiben können. Intern werden Eingabewerte mit einem Exponenten von 10 multipliziert, basierend auf dem Dezimalwert in der Spezifikationsdatei, und das Ergebnis wird als Ganzzahl gespeichert. Um inkonsistente Berechnungen bei der Verwendung des Chaincode-Packages zu verhindern, ändern Sie die Zeile decimal in der Spezifikationsdatei nicht, und synchronisieren Sie dann den Chaincode.
#
# 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: