Modell für vertrauliche Transaktionen
Die erweiterte Version von Blockchain App Builder enthält ein Modellattribut, das zusätzliche Methoden für den vertraulichen Modus generiert.
Wenn Sie den Parameter confidential: true in die Spezifikationsdatei für Token aufnehmen, die den erweiterten Token Taxonomy Framework-Standard verwenden, generiert Blockchain App Builder Chaincode zur Verwendung im vertraulichen Modus, einschließlich der folgenden geänderten Versionen der automatisch generierten Standard- und SDK-Methoden (nur TypeScript).
Weitere Informationen zu vertraulichen Transaktionen und dem vertraulichen CBDC-Szenario (Central Bank Digital Currency with Confidential Transactions) finden Sie unter Wholesale Central Bank Digital Currency with Confidential Transactions.
In der folgenden Tabelle werden die Methoden zusammengefasst, die generiert werden, wenn Sie ein Token Taxonomy Framework-Projekt im vertraulichen Modus erstellen.
| Methodenkategorie | Automatisch generierte Methode | SDK-Methode | Beschreibung |
|---|---|---|---|
| Access Control Management | isTokenAdmin |
isUserTokenAdmin |
Gibt "true" zurück, wenn der Aufrufer ein Admin ist |
addTokenAdmin |
addTokenAdmin |
Hinzufügen eines Administrators | |
removeTokenAdmin |
removeTokenAdmin |
Entfernt einen Admin | |
|
getAllTokenAdmins |
Gibt alle Administratoren zurück | |
addOrgAdmin |
addOrgAdmin |
Hinzufügen eines Organisationsadministrators | |
removeOrgAdmin |
removeOrgAdmin |
Entfernt einen Organisationsadministrator | |
|
getAllOrgAdmins |
Gibt alle Organisationsadministratoren zurück | |
addTokenAuditor |
addTokenAuditor |
Fügt einen Auditor hinzu | |
removeTokenAuditor |
removeTokenAuditor |
Entfernt einen Auditor | |
|
getAllTokenAuditors |
Gibt alle Auditoren zurück | |
addOrgAuditor |
addOrgAuditor |
Fügt einen Organisationsauditor hinzu | |
removeOrgAuditor |
removeOrgAuditor |
Entfernt einen Organisationsauditor | |
|
getAllOrgAuditors |
Gibt alle Organisationsauditoren zurück | |
| Tokenverwaltung | |
getAllTokens |
Gibt alle Tokenassets zurück |
|
getDecimals |
Gibt die Anzahl an Dezimalstellen für ein angegebenes Token zurück | |
|
history |
Gibt die Historie eines Tokens zurück | |
|
getTokensByName |
Gibt alle Tokenassets für einen angegebenen Tokennamen zurück | |
| Accountverwaltung | createAccount |
createAccount |
Erstellt einen Benutzeraccount |
associateTokenToAccount |
associateToken |
Ordnet einen Account einem Token zu | |
getAllAccounts |
getAllAccounts |
Gibt Details für alle Benutzeraccounts zurück | |
getAllOrgAccounts |
getAllOrgAccounts |
Gibt Details für alle Benutzeraccounts in einer Organisation zurück | |
getAccountsByUser |
getAccountsByUser |
Gibt alle Konto-IDs für einen Benutzer zurück | |
getUserByAccountId |
getUserByAccountId |
Gibt Benutzerdetails für eine Account-ID zurück | |
getAccount |
getAccountWithStatus |
Gibt Details für einen Tokenaccount zurück | |
getAccountDetailsByCustomAccountId |
getAccountDetailsByCustomAccountId |
Gibt Kontodetails für eine benutzerdefinierte Konto-ID zurück | |
getAccountBalance |
getAccountBalance |
Gibt den aktuellen Saldo eines Kontos zurück | |
getAccountStatus |
getAccountStatus |
Gibt den Status eines Kontos zurück | |
getAccountStatusHistory |
history |
Gibt die Historie für einen Token-Account zurück | |
activateAccount |
activateAccount |
Aktiviert einen Token-Account | |
suspendAccount |
suspendAccount |
Unterbricht einen Token-Account | |
deleteAccount |
deleteAccount |
Löscht ein Token-Konto | |
setMaxDailyAmount |
setMaxDailyAmount |
Legt die maximale Anzahl von Token fest, die ein Benutzer täglich übertragen kann | |
setMaxDailyTransactionCount |
setMaxDailyTransactionCount |
Legt die maximale Anzahl von Transaktionen fest, die ein Benutzer täglich abschließen kann | |
getMaxDailyAmount |
getMaxDailyAmount |
Gibt die maximale Anzahl von Token zurück, die ein Benutzer täglich übertragen kann | |
getMaxDailyTransactionCount |
getMaxDailyTransactionCount |
Gibt die maximale Anzahl von Transaktionen zurück, die ein Benutzer täglich abschließen kann | |
getAccountOnHoldBalance |
getAccountOnHoldBalance |
Gibt den aktuellen einbehaltenen Saldo für ein Konto zurück | |
| Rollenverwaltung | addRole |
addRoleMember |
Fügt einem Benutzer eine Rolle hinzu |
removeRole |
removeRoleMember |
Entfernt eine Rolle aus einem Benutzer | |
getAccountsByRole |
getAccountsByRole |
Gibt Konto-IDs für eine angegebene Rolle zurück | |
getOrgAccountsByRole |
getOrgAccountsByRole |
Gibt Konto-IDs für eine angegebene Rolle in einer Organisation zurück | |
getUsersByRole |
getUsersByRole |
Gibt eine Liste der Benutzer für eine angegebene Rolle zurück | |
getOrgUsersByRole |
getOrgUsersByRole |
Gibt eine Liste der Benutzer für eine angegebene Rolle in einer Organisation zurück | |
isInRole |
isInRole |
Gibt an, ob ein Benutzer eine bestimmte Rolle hat | |
| Transaktionsmanagement | getAccountTransactionHistory |
getAccountTransactionHistory |
Gibt die Transaktionshistorie für ein Konto zurück |
getAccountTransactionHistoryWithFilters |
getAccountTransactionHistoryWithFilters |
Gibt die gefilterte Transaktionshistorie für ein Konto zurück | |
getAccountTransactionHistoryWithFiltersFromRichHistDB |
getAccountTrxHistoryWithFiltersFromRichHistDB |
Gibt die gefilterte Transaktionshistorie aus der Rich-History-Datenbank für ein Konto zurück | |
getOrgAccountsTransactionHistoryWithFiltersFromRichHistDB |
getOrgAccountsTrxHistoryWithFiltersFromRichHistDB |
Gibt die gefilterte Transaktionshistorie aus der Rich-History-Datenbank für eine Organisation zurück | |
getAllAccountsTransactionHistoryWithFiltersFromRichHistDB |
getAllAccountsTrxHistoryWithFiltersFromRichHistDB |
Gibt den gefilterten Transaktionsverlauf aus der Rich-History-Datenbank für alle Konten zurück | |
consolidateRunningBalanceInTransactions |
consolidateRunningBalanceInTransactions |
Aktualisiert laufende Kontensalden für ausstehende Transaktionen | |
processSendersAndReceivers |
processSendersAndReceivers |
Aktualisiert Kontensalden bei zwischenbetrieblichen Transfers | |
deleteHistoricalTransactions |
deleteTransactions |
Löscht ältere Transaktionen | |
getTransactionById |
getTransactionById |
Gibt die Historie einer Transaktionsanlage zurück | |
| Mintable-Verhalten | requestMint |
|
Anforderungen, an die Token ausgegeben werden |
approveMint |
|
Genehmigt eine Mint-Anforderung | |
rejectMint |
|
Ablehnung einer Mint-Anforderung | |
issueTokens |
issueTokens |
Minze-Token | |
getTotalMintedTokens |
getTotalMintedTokens |
Gibt die Gesamtanzahl der abgebildeten Token zurück | |
getNetTokens |
getNetTokens |
Gibt die Nettomenge der verfügbaren Token zurück | |
| Übertragbares Verhalten | transferTokens |
transferTokens |
Überträgt Token |
| Haltbares Verhalten | holdTokens |
hold |
Verschiebt einen Tokensaldo auf "Zurückgestellt" |
executeHoldTokens |
executeHold |
Schließt eine Tokensperre ab | |
releaseHoldTokens |
releaseHold |
Freigabe einer Tokensperre | |
getOnHoldIds |
getOnHoldIds |
Gibt alle Halte-IDs für ein Konto zurück | |
getOnHoldDetailsWithOperationId |
getOnHoldDetailsWithOperationId |
Gibt die Details der zurückgestellten Transaktion für eine Vorgangs-ID zurück | |
getOnHoldBalanceWithOperationId |
getOnHoldBalanceWithOperationId |
Gibt den einbehaltenen Saldo für eine Vorgangs-ID zurück | |
| Brennbares Verhalten | requestBurn |
|
Anforderungen, bei denen Token gelöscht werden |
approveBurn |
|
Genehmigt eine Verbrennungsanforderung | |
rejectBurn |
|
Ablehnung einer Burn-Anforderung | |
| Zwischenbetriebliche Übertragungen | executeHoldTokensSender |
executeHoldTokensSender |
Entfernt Token von einem Absenderkonto |
executeHoldTokensReceiver |
executeHoldTokensReceiver |
Guthaben-Token auf das Konto eines Empfängers |
Geänderte TypeScript-Methoden für den Confidential Chaincode
Wenn Sie den Parameter confidential: true in die Spezifikationsdatei für Token aufnehmen, die den erweiterten Token Taxonomy Framework-Standard verwenden, generiert Blockchain App Builder geänderte Versionen der automatisch generierten Standardmethoden sowie zusätzliche Methoden.
-
isTokenAdmin - Diese Methode gibt den booleschen Wert
truezurück, wenn der Aufrufer der Funktion einToken Administ. Andernfalls gibt siefalsezurück. EineToken Admin,Token Auditor, eine beliebigeOrg Adminoder eine beliebigeOrg Auditorkann diese Funktion für jeden anderen Benutzer im Blockchain-Netzwerk aufrufen. Andere Benutzer können diese Methode nur für ihre eigenen Accounts aufrufen. -
addTokenAdmin - Diese Methode fügt einen Benutzer als
Token Admindes Chaincodes hinzu. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. Da der Wertuser_idim öffentlichen Buch gespeichert ist, verwenden Sie keine personenbezogenen Informationen (PII) für den Wertuser_id. -
removeTokenAdmin - Mit dieser Methode wird ein Benutzer als
Token Admindes Chaincodes entfernt. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. -
addOrgAdmin - Diese Methode fügt einen Benutzer als
Org Adminder Organisation hinzu. Diese Methode kann nur von einemToken Admindes Chaincodes oder einemOrg Adminder angegebenen Organisation aufgerufen werden. Da der Wertuser_idim öffentlichen Buch gespeichert ist, verwenden Sie keine personenbezogenen Informationen (PII) für den Wertuser_id. -
removeOrgAdmin - Mit dieser Methode wird ein Benutzer als
Org Adminder Organisation entfernt. Diese Methode kann nur durch eineToken Admindes Chaincodes oder durch eineOrg Adminder angegebenen Organisation aufgerufen werden. -
addTokenAuditor - Diese Methode fügt einen Benutzer als
Token Auditordes Chaincodes hinzu. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. Da der Wertuser_idim öffentlichen Buch gespeichert ist, verwenden Sie keine personenbezogenen Informationen (PII) für den Wertuser_id. -
removeTokenAuditor - Mit dieser Methode wird ein Benutzer als
Token Auditordes Chaincodes entfernt. Diese Methode kann nur von einemToken Admindes Chaincodes aufgerufen werden. -
addOrgAuditor - Diese Methode fügt einen Benutzer als
Org Auditordes Chaincodes hinzu. Diese Methode kann nur mit einerToken AdminoderOrg Admindes Chaincodes aufgerufen werden. Da der Wertuser_idim öffentlichen Buch gespeichert ist, verwenden Sie keine personenbezogenen Informationen (PII) für den Wertuser_id. -
removeOrgAuditor - Mit dieser Methode wird ein Benutzer als
Org Auditordes Chaincodes entfernt. Diese Methode kann nur mit einerToken AdminoderOrg Admindes Chaincodes aufgerufen werden. -
createAccount - Mit dieser Methode wird ein Account für einen angegebenen Benutzer und ein bestimmtes Token erstellt. Ein Konto muss für jeden Benutzer erstellt werden, der zu einem beliebigen Zeitpunkt Token hat. Konten verfolgen Salden, einbehaltene Salden und die Transaktionshistorie. Eine Konto-ID wird gebildet, indem der Assettyp und die Token-ID verkettet und dann ein SHA-256-Hash über eine Verkettung aus Organisations-ID und Benutzer-ID erstellt werden. Diese Methode kann nur von einer
Token Adminoder einerOrg Adminder angegebenen Organisation aufgerufen werden. -
associateTokenToAccount - Diese Methode verknüpft ein fungibles Token mit einem Konto. Diese Methode kann nur durch eine
Token Admindes Chaincodes oder durch eineOrg Adminder relevanten Organisation aufgerufen werden. -
getAllAccounts - Diese Methode gibt eine Liste aller Konten zurück. Diese Methode kann nur mit einer
Token AdminoderToken Auditoraufgerufen werden. Diese Methode verwendet SQL-reiche Berkeley DB-Abfragen und kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Oracle Blockchain Platform-Netzwerk besteht. -
getAllOrgAccounts - Diese Methode gibt eine Liste aller Token-Accounts zurück, die zu einer bestimmten Organisation gehören. Diese Methode kann nur von einer
Token AdminoderToken Auditoroder von einerOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
getAccountsByUser - Diese Methode gibt eine Liste aller Konto-IDs für eine angegebene Organisations-ID und Benutzer-ID zurück. Diese Methode kann nur von
Token AdminoderToken Auditor, von derOrg AdminoderOrg Auditorder angegebenen Organisation oder von der in den Parametern angegebenenAccount Owneraufgerufen werden. -
getUserByAccountId - Diese Methode gibt Benutzerdetails (
org_idunduser_id) für einen angegebenen Account zurück. Diese Methode kann von einerToken AdminoderToken Auditoroder von einerOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
getAccount - Diese Methode gibt Details für ein angegebenes Konto zurück. Diese Methode kann nur von einer
Token AdminoderToken Auditor, einerOrg AdminoderOrg Auditorder angegebenen Organisation oder derAccountOwnerdes Accounts aufgerufen werden. -
getAccountDetailsByCustomAccountId - Diese Methode gibt Details für eine angegebene benutzerdefinierte Konto-ID zurück. Diese Methode kann nur von
Token AdminoderToken AuditoroderOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
getAccountBalance - Diese Methode gibt den aktuellen Saldo für ein angegebenes Konto zurück. Diese Methode kann nur von einer
Token AdminoderToken Auditor, einerOrg AdminoderOrg Auditorder angegebenen Organisation oder derAccountOwnerdes Accounts aufgerufen werden. -
getAccountStatus - Diese Methode ruft den aktuellen Status des Token-Accounts ab. Diese Methode kann von der
Token Admindes Chaincodes, einerOrg Adminder angegebenen Organisation oder vom Tokenkontoeigentümer aufgerufen werden. -
getAccountStatusHistory - Diese Methode ruft die Historie des Kontostatus ab. Diese Methode kann von der
Token Admindes Chaincodes, einerOrg Adminder angegebenen Organisation oder vom Tokenkontoeigentümer aufgerufen werden. -
activateAccount - Mit dieser Methode wird ein Token-Account aktiviert. Diese Methode kann nur von einem
Token Admindes Chaincodes oder einemOrg Adminder angegebenen Organisation aufgerufen werden. Gelöschte Accounts können nicht aktiviert werden. -
suspendAccount - Mit dieser Methode wird ein Token-Account unterbrochen. Diese Methode kann nur von einem
Token Admindes Chaincodes oder einemOrg Adminder angegebenen Organisation aufgerufen werden. Nachdem ein Konto ausgesetzt wurde, können Sie keine Vorgänge ausführen, die das Konto aktualisieren. Ein gelöschter Account kann nicht ausgesetzt werden. -
deleteAccount - Mit dieser Methode wird ein Token-Account gelöscht. Diese Methode kann nur von einem
Token Admindes Chaincodes oder einemOrg Adminder angegebenen Organisation aufgerufen werden. Nachdem ein Konto gelöscht wurde, können Sie keine Vorgänge abschließen, die das Konto aktualisieren. Das gelöschte Konto befindet sich in einem endgültigen Status und kann nicht in einen anderen Status geändert werden. Um ein Konto zu löschen, müssen der Kontensaldo und der einbehaltene Saldo Null sein. -
setMaxDailyAmount - Diese Methode legt den Wert
max_daily_amountfür ein angegebenes Konto fest. Diese Methode kann nur von einemToken Admindes Chaincodes oder einemOrg Adminder angegebenen Organisation aufgerufen werden. -
setMaxDailyTransactionCount - Diese Methode legt den Wert
max_daily_transactionsfür ein angegebenes Konto fest. Diese Methode kann nur von einemToken Admindes Chaincodes oder einemOrg Adminder angegebenen Organisation aufgerufen werden. -
getMaxDailyAmount - Diese Methode ruft den Wert
max_daily_amountfür einen angegebenen Account ab. Diese Methode kann nur von einerToken AdminoderToken Auditordes Chaincodes oder einerOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
getMaxDailyTransactionCount - Diese Methode ruft den Wert
max_daily_transactionsfür einen angegebenen Account ab. Diese Methode kann nur von einerToken AdminoderToken Auditordes Chaincodes oder einerOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
getAccountOnHoldBalance - Diese Methode gibt den aktuellen einbehaltenen Saldo für ein angegebenes Konto zurück. Diese Methode kann nur von einer
Token AdminoderToken Auditor, einerOrg AdminoderOrg Auditorder angegebenen Organisation oder derAccountOwnerdes Accounts aufgerufen werden. -
addRole - Diese Methode fügt einem angegebenen Benutzer und Token eine Rolle hinzu. Diese Methode kann nur von einer
Token Admindes Chaincodes oder von einerOrg Adminder angegebenen Organisation aufgerufen werden, die auch die angegebene Rolle enthält. -
removeRole - Mit dieser Methode wird eine Rolle aus einem angegebenen Benutzer und Token entfernt. Diese Methode kann nur von einer
Token Admindes Chaincodes oder von einerOrg Adminder angegebenen Organisation aufgerufen werden, die auch die angegebene Rolle enthält. -
getAccountsByRole - Diese Methode gibt eine Liste aller Konto-IDs für eine angegebene Rolle und ein bestimmtes Token zurück. Diese Methode kann nur mit einer
Token AdminoderToken Auditoraufgerufen werden. -
getOrgAccountsByRole - Diese Methode gibt eine Liste aller Konto-IDs für eine angegebene Rolle, ein bestimmtes Token und eine bestimmte Organisation zurück. Diese Methode kann nur von einer
Token AdminoderToken Auditoroder von einerOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
getUsersByRole - Diese Methode gibt eine Liste aller Benutzer für eine angegebene Rolle und ein bestimmtes Token zurück. Diese Methode kann nur mit einer
Token AdminoderToken Auditoraufgerufen werden. -
getOrgUsersByRole - Diese Methode gibt eine Liste aller Benutzer für eine angegebene Rolle, ein bestimmtes Token und eine bestimmte Organisation zurück. Diese Methode kann nur von einer
Token AdminoderToken Auditoroder von einerOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
isInRole - Diese Methode gibt einen booleschen Wert zurück, um anzugeben, ob ein Benutzer eine bestimmte Rolle hat. Diese Methode kann nur von einer
Token AdminoderToken Auditor, derAccountOwnerdes Accounts oder einerOrg AdminoderOrg Auditorder angegebenen Organisation aufgerufen werden. -
getAccountTransactionHistory - Diese Methode gibt ein Array von Kontotransaktionshistoriendetails für ein angegebenes Konto zurück. Diese Methode kann nur von
Token AdminoderToken Auditor, einerOrg AdminoderOrg Auditorder angegebenen Organisation oder derAccountOwnerdes Accounts aufgerufen werden. -
getAccountTransactionHistoryWithFilters - Diese Methode gibt ein gefiltertes Array von Kontotransaktionshistoriendetails für einen angegebenen Benutzer und ein bestimmtes Token zurück. Diese Methode kann nur von
Token AdminoderToken Auditor, einerOrg AdminoderOrg Auditorder angegebenen Organisation oder derAccountOwnerdes Accounts aufgerufen werden. Diese Methode kann nur aufgerufen werden, wenn eine Verbindung zu einem Remote-Oracle Blockchain Platform-Netzwerk besteht. -
getAccountTransactionHistoryWithFiltersFromRichHistDB - Diese Methode ruft die Transaktionshistorie aus der Rich-History-Datenbank ab. Diese Methode kann nur von
Token AdminoderToken Auditor, einerOrg AdminoderOrg Auditorder angegebenen Organisation oder derAccountOwnerdes Accounts aufgerufen werden. -
getOrgAccountsTransactionHistoryWithFiltersFromRichHistDB - Diese Methode ruft die Transaktionshistorie aus der Rich-History-Datenbank für die angegebene Organisation ab. Diese Methode kann nur von
Token AdminoderToken Auditor, einerOrg AdminoderOrg Auditorder angegebenen Organisation oder derAccountOwnerdes Accounts aufgerufen werden. -
getAllAccountsTransactionHistoryWithFiltersFromRichHistDB - Diese Methode ruft die Transaktionshistorie aus der Rich-History-Datenbank für alle Organisationen ab. Diese Methode kann nur mit
Token AdminoderToken Auditoraufgerufen werden. -
deleteHistoricalTransactions - Mit dieser Methode werden ältere Transaktionen aus der Statusdatenbank gelöscht. Diese Methode kann nur mit einem
Token Adminaufgerufen werden. -
getTransactionById - Diese Methode gibt die Historie eines
Transaction-Assets zurück. Diese Methode kann nur von einerToken AdminoderToken Auditor, von einerOrg AdminoderOrg Auditorder angegebenen Organisation oder von einem Transaktionsteilnehmer (Absender, Empfänger oder Notar) aufgerufen werden. -
consolidateRunningBalanceInTransactions - Diese Methode berechnet die laufenden Kontensalden und speichert die aktualisierten Werte in den Transaktionsschlüssel/Wert-Paaren. Normalerweise rufen Systemadministratoren diese Methode mit einem REST-Proxy-Scheduler auf. Diese Methode kann nur mit einer
Token AdminoderOrg Adminaufgerufen werden. -
processSendersAndReceivers - Diese Methode berechnet und aktualisiert die Tokenkontensalden, die in den Schlüssel/Wert-Paaren des Absenders und Empfängers verteilt werden, die während zwischenbetrieblicher Transfers erstellt wurden, und löscht dann die Schlüssel/Wert-Paare des Absenders und Empfängers, die nicht mehr verwendet werden. Normalerweise rufen Systemadministratoren diese Methode mit einem REST-Proxy-Scheduler auf. Diese Methode kann nur mit einer
Token AdminoderOrg Adminaufgerufen werden. -
requestMint - Diese Methode kann von einem Minter aufgerufen werden, um eine Anforderung an den Minter Notar zu senden, um eine bestimmte Anzahl von Token zu erstellen.
-
approveMint - Diese Methode kann von einem Minter Notar aufgerufen werden, um eine Prägeanforderung zu genehmigen.
-
rejectMint - Diese Methode kann von einem Minter Notar aufgerufen werden, um eine Prägeanforderung abzulehnen.
-
issueTokens - Mit dieser Methode werden Token abgebildet, die dann dem Aufrufer der Methode gehören.
-
getTotalMintedTokens - Diese Methode gibt die Gesamtanzahl der ausgeprägten Token für ein angegebenes Token zurück. Diese Methode kann nur mit
Token Admin,Token Auditor,Org AdminoderOrg Auditoraufgerufen werden. -
getNetTokens - Diese Methode gibt die Gesamtanzahl der Token zurück, die im System für ein angegebenes Token verfügbar sind. Die Nettotokensumme ist die Anzahl der verbleibenden Token, nachdem Token gebrannt wurden. In Gleichungsform: Nettotoken = Gesamtanzahl abgebrannter Token - Gesamtanzahl verbrannter Token. Wenn keine Token verbrannt werden, ist die Anzahl der Nettotoken gleich der Gesamtanzahl der abgebauten Token. Diese Methode kann nur mit
Token Admin,Token Auditor,Org AdminoderOrg Auditoraufgerufen werden. -
transferTokens - Mit dieser Methode werden Token vom Aufrufer an ein bestimmtes Konto übertragen.
-
holdTokens - Mit dieser Methode wird eine Sperre für den Aufrufer (den Eigentümer der Token) mit dem Account
to_account_iderstellt. Das angegebene Notarkonto ist für den Abschluss oder die Freigabe der Sperre verantwortlich. Wenn die Sperre erstellt wird, wird der angegebene Tokensaldo des Zahlers gesperrt. Ein gesperrter Saldo kann erst übertragen werden, wenn die Sperre abgeschlossen oder freigegeben wurde. -
executeHoldTokens - Mit dieser Methode wird eine Sperre für ein Token abgeschlossen. Eine Menge von Token, die zuvor von einem Token-Eigentümer gehalten wurden, wird an einen Empfänger übertragen. Wenn der Wert
quantitykleiner als der tatsächliche Zurückstellungswert ist, ist der verbleibende Betrag wieder für den ursprünglichen Eigentümer der Token verfügbar. Diese Methode kann nur von derAccountOwner-ID mit der Rollenotaryfür die angegebene Vorgangs-ID aufgerufen werden. Die Sperre kann nur vom Notar abgeschlossen werden. -
releaseHoldTokens - Diese Methode gibt eine Sperre für Token frei. Die Übertragung ist nicht abgeschlossen, und alle zurückgestellten Token stehen dem ursprünglichen Eigentümer erneut zur Verfügung. Diese Methode kann durch die
AccountOwner-ID mit der Rollenotaryinnerhalb der angegebenen Frist oder durch den Zahler, Zahlungsempfänger oder Notar nach der angegebenen Frist aufgerufen werden. -
getOnHoldIds - Diese Methode gibt eine Liste aller Halte-IDs für ein angegebenes Konto zurück. Diese Methode kann durch eine
Token AdminoderToken Auditordes Chaincodes, eineOrg AdminoderOrg Auditorder angegebenen Organisation oder dieAccountOwnerdes Accounts aufgerufen werden. -
getOnHoldDetailsWithOperationId - Diese Methode gibt die Details der zurückgestellten Transaktion für eine angegebene Vorgangs-ID und ein bestimmtes Token zurück. Diese Methode kann durch eine
Token AdminoderToken Auditordes Chaincodes oder durch einen Transaktionsteilnehmer (Absender, Empfänger, Notar) aufgerufen werden. -
getOnHoldBalanceWithOperationId - Diese Methode gibt den Saldo für eine bestimmte Vorgangs-ID und ein bestimmtes Token zurück. Diese Methode kann durch eine
Token AdminoderToken Auditordes Chaincodes oder durch einen Transaktionsteilnehmer (Absender, Empfänger, Notar) aufgerufen werden. -
requestBurn - Diese Methode kann von einem Brenner aufgerufen werden, um eine Anforderung an den Brennernotar zu senden, um eine bestimmte Anzahl von Token zu zerstören.
-
approveBurn - Diese Methode kann von einem Brennernotar aufgerufen werden, um eine Brennanforderung zu genehmigen.
-
rejectBurn - Diese Methode kann von einem Brennernotar aufgerufen werden, um eine Brennanforderung abzulehnen.
TypeScript Methoden für zwischenbetriebliche Transfers
Zwischenbetriebliche Transfers bestehen aus zwei Teilen: Zuerst wird der Betrag vom Absender belastet, und dann wird der Betrag dem Empfänger gutgeschrieben. Die folgenden beiden APIs werden mit der Zwei-Phasen-Commit-API des Oracle Blockchain Platform-REST-Proxys als atomare Transaktion aufgerufen. Vertrauliche Übertragungen erfolgen auf diese Weise, da die privaten Datenerfassungen der beiden Organisationen eindeutig sind und nicht in einer einzigen Transaktion aufgerufen werden können.
Beide Transaktionen werden mit der Zwei-Phasen-Commit-API des REST-Proxys gesendet. Weitere Informationen finden Sie unter Atomare Transaktion aufrufen.
https://test-xyz-abc.blockchain.ocp.oraclecloud.com:7443/restproxy/api/v2/atomicTransactions lautet. Sie müssen alle wichtigen Header senden, einschließlich der folgenden.- Content-Type: application/json
- Confidential-Transaction: trueNehmen Sie im Anforderungstext die Methoden executeHoldTokensSender und executeHoldTokensReceiver auf, wie in der folgenden Anforderung gezeigt.{
"transactions": [
{
"chaincode": "<chaincode>",
"args": [
"executeHoldTokensSender"
],
"timeout": 6000,
"sync": true,
"transientMap": {
"args": "[ \"bc-token-id value\",\"operation_id value\",\"quantity value\"]"
},
"endorsers" : <Sender's endorsers List>,
"channel":"<channel name>"
},
{
"chaincode": "<chaincode name>",
"args": [
"executeHoldTokensReceiver"
],
"timeout": 6000,
"sync": true,
"transientMap": {
"args": "[ \"bc-token-id value\",\"operation_id value\",\"quantity value\"]"
},
"endorsers" : <Recipient endorsers List>,
"channel":"<channelName>"
}
],
"isolationLevel": "readCommitted",
"prepareTimeout": 10000,
"copyInputsToTransientMap": true,
"sync": true,
"parallelPrepare": true
}{
"transactions": [
{
"chaincode": "WholesaleCBDCConfidential",
"args": [
"executeHoldTokensSender"
],
"timeout": 6000,
"sync": true,
"transientMap": {
"args": "[ \"bc-token-id value\",\"operation_id value\",\"quantity value\"]"
},
"endorsers" : ["org1-xyz-abc.blockchain.ocp.oraclecloud.com:20009", "org1-xyz-abc.blockchain.ocp.oraclecloud.com:20009"],
"channel":"default"
},
{
"chaincode": "WholesaleCBDCConfidential",
"args": [
"executeHoldTokensReceiver"
],
"timeout": 6000,
"sync": true,
"transientMap": {
"args": "[ \"bc-token-id value\",\"operation_id value\",\"quantity value\"]"
},
"endorsers" : ["org2-xyz-abc.blockchain.ocp.oraclecloud.com:20009", "org2-xyz-abc.blockchain.ocp.oraclecloud.com:20009"],
"channel":"default"
}
],
"isolationLevel": "readCommitted",
"prepareTimeout": 10000,
"copyInputsToTransientMap": true,
"sync": true,
"parallelPrepare": true
}-
executeHoldTokensSender - Diese Methode kann nur vom Benutzer mit der Notarrolle für die angegebene Vorgangs-ID aufgerufen werden. Diese Methode ist der erste Teil einer Genehmigung eines Transfers zwischen Organisationen. Der angegebene Betrag wird vom Konto des Absenders abgezogen.
-
executeHoldTokensReceiver - Diese Methode kann nur vom Benutzer mit der Notarrolle für die angegebene Vorgangs-ID aufgerufen werden. Diese Methode ist der zweite Teil einer Genehmigung eines Transfers zwischen Organisationen. Der angegebene Betrag wird dem Konto des Empfängers gutgeschrieben.
Geänderte TypeScript-SDK-Methoden für Confidential Chaincode
Wenn Sie den Parameter confidential: true in die Spezifikationsdatei für Token aufnehmen, die den erweiterten Token Taxonomy Framework-Standard verwenden, generiert Blockchain App Builder geänderte Versionen der Standard-SDK-Methoden sowie zusätzliche Methoden.
-
isUserTokenAdmin - Diese Methode gibt den booleschen Wert
truezurück, wenn der Aufrufer der Funktion einToken Administ. Andernfalls gibt die Methodefalsezurück. -
addTokenAdmin - Diese Methode fügt einen Benutzer als
Token Admindes Token-Chaincodes hinzu. Da der Wertuser_idim öffentlichen Buch gespeichert ist, verwenden Sie keine personenbezogenen Informationen (PII) für den Wertuser_id. -
removeTokenAdmin - Mit dieser Methode wird ein Benutzer als
Token Admindes Token-Chaincodes entfernt. -
getAllTokenAdmins - Diese Methode gibt eine Liste aller Benutzer zurück, die ein
Token Admindes Chaincodes sind. -
addOrgAdmin - Diese Methode fügt einen Benutzer als
Org Adminder Organisation hinzu. Da der Wertuser_idim öffentlichen Buch gespeichert ist, verwenden Sie keine personenbezogenen Informationen (PII) für den Wertuser_id. -
removeOrgAdmin - Mit dieser Methode wird ein Benutzer als
Org Adminder Organisation entfernt. -
getAllOrgAdmins - Diese Methode gibt eine Liste aller Benutzer zurück, die eine
Org Admineiner Organisation sind. -
addTokenAuditor - Diese Methode fügt einen Benutzer als
Token Auditordes Chaincodes hinzu. Da der Wertuser_idim öffentlichen Buch gespeichert ist, verwenden Sie keine personenbezogenen Informationen (PII) für den Wertuser_id. -
removeTokenAuditor - Mit dieser Methode wird ein Benutzer als
Token Auditordes Chaincodes entfernt. -
getAllTokenAuditors - Diese Methode gibt alle
Token Auditorsdes Chaincodes zurück. -
addOrgAuditor - Diese Methode fügt einen Benutzer als
Org Auditordes Chaincodes hinzu. -
removeOrgAuditor - Mit dieser Methode wird ein Benutzer als
Org Auditordes Chaincodes entfernt. -
getAllOrgAuditors - Diese Methode gibt alle
Org Auditorsdes Chaincodes zurück. -
getAllTokens - Diese Methode gibt alle Tokenassets zurück, die in der Statusdatenbank gespeichert sind. Diese Methode verwendet SQL-reiche Berkeley DB-Abfragen und kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Oracle Blockchain Platform-Netzwerk besteht.
-
getDecimals - Diese Methode gibt die Anzahl der Dezimalstellen zurück, die für ein Bruchteil-Token verfügbar sind. Wenn das Verhalten
divisiblenicht angegeben ist, ist der Standardwert 0. -
history - Diese Methode gibt die Historie für das angegebene Token zurück.
-
getTokensByName - Diese Methode gibt alle Tokenassets mit dem angegebenen Namen zurück. Diese Methode verwendet SQL-reiche Berkeley DB-Abfragen und kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Oracle Blockchain Platform-Netzwerk besteht.
-
createAccount - Mit dieser Methode wird ein Account für einen angegebenen Benutzer und ein bestimmtes Token erstellt. Jeder Benutzer, der zu einem beliebigen Zeitpunkt Token hat, muss über ein Konto verfügen.
-
associateToken - Diese Methode verknüpft ein fungibles Token mit einem Konto.
-
getAllAccounts - Diese Methode gibt eine Liste aller Konten zurück. Diese Methode verwendet SQL-reiche Berkeley DB-Abfragen und kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Oracle Blockchain Platform-Netzwerk besteht.
-
getAllOrgAccounts - Diese Methode gibt eine Liste aller Token-Accounts zurück, die zu einer bestimmten Organisation gehören.
-
getAccountsByUser - Diese Methode gibt eine Liste aller Konto-IDs für einen angegebenen Benutzer und eine angegebene Organisation zurück.
-
getUserByAccountId - Diese Methode gibt die Benutzerdetails für einen angegebenen Account zurück.
-
getAccountWithStatus - Diese Methode gibt Accountdetails für einen angegebenen Benutzer und ein bestimmtes Token zurück.
-
getAccountDetailsByCustomAccountId - Diese Methode gibt alle Tokenaccountdetails für eine angegebene Organisation und Konto-ID zurück.
-
getAccountBalance - Diese Methode gibt den Kontensaldo für ein angegebenes Konto zurück.
-
getAccountStatus - Diese Methode ruft den aktuellen Status des Token-Accounts ab.
-
history (Account Status) - Diese Methode ruft die Historie des Kontostatus ab.
-
activateAccount - Mit dieser Methode wird ein Token-Account aktiviert. Gelöschte Accounts können nicht aktiviert werden.
-
suspendAccount - Mit dieser Methode wird ein Token-Account unterbrochen. Nachdem ein Konto ausgesetzt wurde, können Sie keine Vorgänge ausführen, die das Konto aktualisieren. Ein gelöschter Account kann nicht ausgesetzt werden.
-
deleteAccount - Mit dieser Methode wird ein Token-Account gelöscht. Nachdem ein Konto gelöscht wurde, können Sie keine Vorgänge abschließen, die das Konto aktualisieren. Das gelöschte Konto befindet sich in einem endgültigen Status und kann nicht in einen anderen Status geändert werden. Um ein Konto zu löschen, müssen der Kontensaldo und der einbehaltene Saldo Null sein.
-
setMaxDailyAmount - Diese Methode legt den Wert
max_daily_amountfür ein angegebenes Konto fest. -
setMaxDailyTransactionCount - Diese Methode legt den Wert
max_daily_transactionsfür ein angegebenes Konto fest. -
getMaxDailyAmount - Diese Methode ruft den Wert
max_daily_amount(den maximalen Betrag, der täglich übertragen werden kann) für ein angegebenes Konto ab. -
getMaxDailyTransactionCount - Diese Methode ruft den Wert
max_daily_transactions(die maximale Anzahl von Transaktionen pro Tag) für ein angegebenes Konto ab. -
getAccountOnHoldBalance - Diese Methode gibt den einbehaltenen Saldo für ein angegebenes Konto zurück.
-
addRoleMember - Mit dieser Methode wird eine Rolle zu einem angegebenen Konto hinzugefügt.
-
removeRoleMember - Mit dieser Methode wird eine Rolle aus einem angegebenen Konto entfernt.
-
getAccountsByRole - Diese Methode gibt eine Liste aller Konten für eine angegebene Rolle und ein bestimmtes Token zurück.
-
getOrgAccountsByRole - Diese Methode gibt Informationen zu allen Konten zurück, die eine bestimmte Rolle in einer bestimmten Organisation haben.
-
getUsersByRole - Diese Methode gibt eine Liste aller Benutzer für eine angegebene Rolle und ein bestimmtes Token zurück.
-
getOrgUsersByRole - Diese Methode gibt Informationen zu allen Benutzern zurück, die eine bestimmte Rolle in einer bestimmten Organisation haben.
-
isInRole - Diese Methode gibt an, ob ein Benutzer eine bestimmte Rolle hat.
-
getAccountTransactionHistory - Diese Methode gibt ein Array der Transaktionshistoriendetails für ein angegebenes Konto zurück.
-
getAccountTransactionHistoryWithFilters - Diese Methode gibt ein Array der Transaktionshistoriendetails für ein angegebenes Konto zurück. Diese Methode kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Oracle Blockchain Platform-Netzwerk besteht.
-
getAccountTrxHistoryWithFiltersFromRichHistDB - Diese Methode gibt ein Array der Transaktionshistoriendetails aus der Rich-History-Datenbank zurück.
-
getOrgAccountsTrxHistoryWithFiltersFromRichHistDB - Diese Methode gibt ein Array der Transaktionshistoriendetails für eine angegebene Organisation aus der Rich-History-Datenbank zurück.
-
getAllAccountsTrxHistoryWithFiltersFromRichHistDB - Diese Methode gibt ein Array der Transaktionshistoriendetails für alle Organisationen aus der Rich-History-Datenbank zurück.
-
consolidateRunningBalanceInTransactions - Diese Methode berechnet die laufenden Kontensalden und speichert die aktualisierten Werte in den Transaktionsschlüssel/Wert-Paaren. Normalerweise rufen Systemadministratoren diese Methode mit einem REST-Proxy-Scheduler auf.
-
processSendersAndReceivers - Diese Methode berechnet und aktualisiert die Tokenkontensalden, die in den Schlüssel/Wert-Paaren des Absenders und Empfängers verteilt werden, die während zwischenbetrieblicher Transfers erstellt wurden, und löscht dann die Schlüssel/Wert-Paare des Absenders und Empfängers, die nicht mehr verwendet werden. Normalerweise rufen Systemadministratoren diese Methode mit einem REST-Proxy-Scheduler auf.
-
deleteTransactions - Mit dieser Methode werden ältere Transaktionen aus der Statusdatenbank gelöscht.
-
getTransactionById - Diese Methode gibt die Historie eines
Transaction-Assets zurück. -
issueTokens - Miner können diese Methode aufrufen, um eine bestimmte Anzahl von Token zu erstellen.
-
getTotalMintedTokens - Diese Methode gibt die Gesamtanzahl der eingeprägten Token zurück.
-
getNetTokens - Diese Methode gibt die Nettomenge der Token zurück, die im System verfügbar sind. Die Nettotoken sind die Anzahl der Token, die nach dem Verbrennen von Token übrig bleiben. In Gleichungsform: Nettotoken = Gesamtanzahl abgebrannter Token - Gesamtanzahl verbrannter Token. Wenn keine Token verbrannt werden, ist die Anzahl der Nettotoken gleich der Gesamtanzahl der abgebauten Token.
-
transferTokens - Mit dieser Methode werden Token vom Aufrufer an ein bestimmtes Konto übertragen. Der Aufrufer der Methode muss ein Konto haben. Die Menge muss innerhalb der Dezimalwerte liegen, die durch den Parameter
decimaldes Verhaltensdivisiblein der Spezifikationsdatei angegeben werden. -
hold - Diese Methode wird vom Miner verwendet, um eine Anforderung an den Minter Notar zu senden, um eine bestimmte Anzahl von Token zu erstellen. Das angegebene Notarkonto ist für den Abschluss oder die Freigabe der Sperre verantwortlich.
-
executeHold - Notare können diese Methode aufrufen, um einen Sperrvorgang zu genehmigen. Dabei kann es sich um einen von drei Typen handeln: Mint, Burn oder Transfer.
-
releaseHold - Notare können diese Methode aufrufen, um einen Sperrvorgang abzulehnen, der einen von drei Typen aufweisen kann: Minze, Verbrennen oder Übertragen.
-
getOnHoldIds - Diese Methode gibt eine Liste aller Halte-IDs für ein angegebenes Konto zurück.
-
getOnHoldDetailsWithOperationId - Diese Methode gibt die Details der zurückgestellten Transaktion für eine angegebene Vorgangs-ID und ein bestimmtes Token zurück.
-
getOnHoldBalanceWithOperationId - Diese Methode gibt den Saldo für eine bestimmte Vorgangs-ID und ein bestimmtes Token zurück. Diese Methode kann von jedem aufgerufen werden.
TypeScript SDK-Methoden für organisationsübergreifende Transfers
Zwischenbetriebliche Transfers bestehen aus zwei Teilen: Zuerst wird der Betrag vom Absender belastet, und dann wird der Betrag dem Empfänger gutgeschrieben. Die folgenden beiden APIs werden mit der Zwei-Phasen-Commit-API des Oracle Blockchain Platform-REST-Proxys als atomare Transaktion aufgerufen. Vertrauliche Übertragungen erfolgen auf diese Weise, da die privaten Datenerfassungen der beiden Organisationen eindeutig sind und nicht in einer einzigen Transaktion aufgerufen werden können.
-
executeHoldTokensSender - Diese Methode kann nur vom Benutzer mit der Notarrolle für die angegebene Vorgangs-ID aufgerufen werden. Diese Methode ist der erste Teil einer Genehmigung eines Transfers zwischen Organisationen. Der angegebene Betrag wird vom Konto des Absenders abgezogen.
-
executeHoldTokensReceiver - Diese Methode kann nur vom Benutzer mit der Notarrolle für die angegebene Vorgangs-ID aufgerufen werden. Diese Methode ist der zweite Teil einer Genehmigung eines Transfers zwischen Organisationen. Der angegebene Betrag wird dem Konto des Empfängers gutgeschrieben.