Stablecoin-Anwendungsworkflow
Ein Stablecoin ist ein fungibler Token, der digitale Währung mit integrierter Compliance-Durchsetzung darstellt.
Das Stablecoin-Szenario setzt voraus, dass Sie die Richtlinien Ihres Kunden (KYC) und der Geldwäschebekämpfung (AML), Übertragungsbeschränkungen und Mehrparteiengenehmigungen kennen. Das System unterstützt Direktüberweisungen und gesperrte Versetzungen, die vor der Versetzung genehmigt werden müssen.
- Neben-, Brenner- und Notarrollen sind erforderlich.
- Die Account-Policy setzt KYC/AML und Einschränkungs-Flags durch.
- Die Genehmigungs-Policy definiert Schwellenwerte und sequenzielle Genehmigeranforderungen für gesperrte Transfers.
- Übertragungseinschränkungen sind optional und können jederzeit konfiguriert werden.
- Mit dem Genehmigungs-Policy-Abgleich wird bestimmt, ob Genehmigungen erforderlich sind, wenn die API
holdTokensverwendet wird. - APIs für die Transaktionshistorie unterstützen Auditing und Überwachung.
| Teilnehmer | Rolle | Beschreibung |
|---|---|---|
| Administrator | Token-Admin | Initialisiert das System, weist Rollen zu, erstellt Konto- und Genehmigungsrichtlinien. |
| Minter | Minter | Verarbeitet Token. |
| Mint-Genehmiger | Notar | Genehmigt oder lehnt Mint-Anforderungen ab. |
| Verbrennungsgenehmiger | Notar | Genehmigt Burn Requests oder lehnt sie ab. |
| Absender | Kein | Initiiert direkte oder gesperrte Transfers. |
| Genehmiger | Kein | Genehmigt Transaktionen in einer definierten Reihenfolge. Genehmiger sind reguläre Kontoinhaber, die in der Genehmigungsrichtlinie als Genehmiger angegeben wurden (nicht durch eine zugewiesene Rolle). |
| Notar | Notar | Vervollständigt oder gibt gesperrte Transfers nach der Genehmigung frei. |
| Empfänger | Kein | Empfängt übertragene Token. |
| Auditor | Tokenauditor | Fragt die Transaktionshistorie zu Compliance- und Berichtszwecken ab. |
- Initialisieren Sie einen Stablecoin mit der
initializeStablecoinToken-API. - Registrieren Sie Organisationen mit der API
registerOrg. - Erstellen Sie Accounts mit den APIs
createAccountundassociateTokenToAccount. - Weisen Sie die Minter-, Burner- und Notarrollen mit der
addRole-API den entsprechenden Accounts zu. - Erstellen Sie Account-Policys mit der API
createStablecoinAccountPolicyCheck. - Erstellen Sie Genehmigungs-Policys mit der API
createApprovalPolicyCheck.
- Mint Stablecoins.
- Der Minter verwendet die
requestMint-API, um eine Anfrage an Stablecoins zu senden. - Der Mint-Genehmiger verwendet die API
approveMint, um die Anforderung an die Mint-Stablecoins zu prüfen und zu genehmigen. Alternativ kann der Mint-Genehmiger dierejectMint-API verwenden, um die Anforderung abzulehnen.
- Der Minter verwendet die
- Übertragen Sie Stablecoins ohne Genehmigungen.
- Der Absender verwendet die
transferTokens-API, um Stablecoins an einen Benutzer zu senden.
- Der Absender verwendet die
- Übertragen Sie Stablecoins mit Genehmigungen.
- Der Absender fordert die Übertragung der Token mit der API
holdTokensan. - Bei Bedarf verwenden Genehmiger die API
approveTransaction, um die Übertragung zu genehmigen, wie in der Genehmigungs-Policy angegeben. - Der Notar verwendet die API
executeHoldTokens, um die Übertragungsanforderung zu genehmigen. Alternativ kann der Notar die Übertragung mit der APIreleaseHoldablehnen.
- Der Absender fordert die Übertragung der Token mit der API
- Token-Saldo prüfen.
- Benutzer können die
getAccountBalance-API verwenden, um die Menge an Stablecoins zu erhalten, die sie halten.
- Benutzer können die
- Token brennen.
- Benutzer können die
requestBurn-API verwenden, um eine Anforderung zum Brennen ihrer Stablecoins zu senden. - Der Burn-Genehmiger verwendet die API
approveBurn, um die Anforderung zu prüfen und zu genehmigen. Alternativ kann der Burn-Genehmiger dierejectBurn-API verwenden, um die Anforderung abzulehnen.
- Benutzer können die
- Transaktionshistorie prüfen
- Auditoren und Benutzer können die APIs
getAccountTransactionHistoryundgetAccountTransactionHistoryWithFiltersverwenden, um die Transaktionshistorie für Auditing und Reporting abzurufen.
- Auditoren und Benutzer können die APIs
Firmenpolice - Validierung
Kontorichtlinien sind für alle Konten obligatorisch, die Stablecoins übertragen oder halten. Account-Policys werden in den folgenden APIs validiert: transferTokens, holdTokens, approveTransaction, executeHoldTokens.
Jede Account-Policy enthält drei Parameter: KYC, AML und restrictionFlag. Diese werden sowohl für Absender als auch Empfänger validiert, bevor Token übertragen werden.
-
KYC(Know Your Customer) - Der Transfer ist nur zulässig, wenn die KYC-Werte für Absender- und Empfängerkonten
truelauten. -
AML(Geldwäschebekämpfung) - Der Transfer ist nur zulässig, wenn die AML-Werte für Absender- und Empfängerkonten
truelauten. -
restrictionFlag - Wenn das Einschränkungskennzeichen sowohl für das Absender- als auch für das Empfängerkonto auf
falsegesetzt ist, ist die Validierung erfolgreich. Wenn das Einschränkungskennzeichen für das Absender- oder Empfängerkonto, für die APIsholdTokens,approveTransactionundexecuteHoldTokensauftruegesetzt ist, ist die Übertragung nur zulässig, wenn eine niedrigste verfügbare Genehmigungs-Policy vorhanden ist und der Betrag innerhalb der Policy-Limits liegt. Andernfalls wird der Transfer blockiert. Bei der MethodetransferTokensist der Transfer nur zulässig, wenn sich der Betrag im unteren und oberen Bereich der Transfereinschränkungslimits befindet.
Genehmigungs-Policy-Abgleich
Der Abgleich der Genehmigungs-Policy wird nach einem Aufruf der API holdTokens ausgelöst. Genehmigungs-Policys definieren Transaktionsschwellenwerte, die erforderliche Anzahl von Genehmigungen und Genehmigerdetails und legen die Reihenfolge für Genehmigungen mit mehreren Ebenen fest. Für einen Sperrvorgang ist eine Genehmigungs-Policy erforderlich. Ohne eine Genehmigungs-Policy können Benutzer Token nicht sperren oder übertragen, wenn Einschränkungen gelten.
Der Abgleich der Genehmigungs-Policy bestimmt, ob Genehmigungen erforderlich sind, bevor der Notar den Sperrentransfer abschließen kann. Wenn Genehmigungen erforderlich sind, bestimmt der Genehmigungs-Policy-Abgleich, welche Genehmiger benötigt werden und in welcher Reihenfolge.
Wenn für Absender und Empfänger kein Einschränkungskennzeichen festgelegt ist, wird der Sperrbetrag mit allen konfigurierten Schwellenwerten für Genehmigungs-Policys verglichen, um eine Übereinstimmung zu finden. Wenn eine Übereinstimmung gefunden wird, werden die entsprechenden Genehmiger und die entsprechende Sequenz verwendet. Wird keine Übereinstimmung gefunden, ist keine Genehmigung erforderlich, und die Transaktion wird direkt an den Notar weitergeleitet.
Wenn ein Einschränkungskennzeichen für Absender oder Empfänger festgelegt ist, wird die niedrigste verfügbare Genehmigungs-Policy verwendet. Wenn keine Policy verfügbar ist, wird die Transaktion blockiert.
- Erforderliche Genehmiger
- Genehmigungsreihenfolge
- Erforderliche Anzahl Genehmigungen
Transaktionsgenehmigung
Die Transaktionsgenehmigungsvalidierung wird nach einem Aufruf der API approveTransaction ausgelöst. Die Validierung erzwingt alle Genehmigungsregeln, die in der Genehmigungs-Policy definiert sind, die beim Aufruf der API holdTokens abgeglichen wurde. Die Validierung wird für jeden Genehmiger nacheinander gemäß den folgenden Schritten ausgeführt.
- Genehmigeridentität validieren: Prüft, ob der aktuelle Benutzer in der Liste der erforderlichen Genehmiger aus der Genehmigungs-Policy vorhanden ist.
- Reihenfolge validieren: Prüft, ob der aktuelle Genehmiger der erwartete Genehmiger an der aktuellen Position ist.
- Auf doppelte Genehmigung prüfen: Derselbe Genehmiger kann dieselbe Transaktion nicht mehrmals genehmigen.
- Validierung der Kontenrichtlinie: Führt die Validierung der Kontenrichtlinie erneut aus, um sicherzustellen, dass sich der Status des Absenders und des Empfängerkontos seit der Erstellung der Sperre nicht geändert hat.
- Datensatzgenehmigung: Erfasst die Genehmigung mit Zeitstempel, erhöht die Anzahl der Genehmigungen und prüft, ob alle erforderlichen Genehmigungen abgeschlossen sind.