Desplegar y probar Stablecoin Chaincode
Puede desplegar el código de cadenas directamente desde la consola de Oracle Blockchain Platform o mediante el creador de aplicaciones de blockchain.
Despliegue del código de cadena
Antes de desplegar el código de cadena, cree los ID de inscripción para cada usuario de token y, a continuación, asigne los usuarios de token a sus respectivos ID de inscripción. Especifique sólo un usuario para cada inscripción. Para obtener más información sobre la adición de inscripciones, consulte Agregar inscripciones a un proxy REST en Uso de Oracle Blockchain Platform.
Al desplegar el código de cadena de token, debe llamar al método init y transferir el ID de organización y el ID de usuario del usuario Token Admin.
Para obtener información sobre el despliegue desde la consola de Oracle Blockchain Platform, consulte Uso del despliegue avanzado en Uso de Oracle Blockchain Platform.
- Extraiga el archivo de almacenamiento
Stablecoin.zip. - Importe el código de cadena
Stablecoina la extensión Blockchain App Builder en Visual Studio Code. - Edite el archivo
.ochain.jsonpara actualizar el valor de la claveconfigFileLocationa la ruta del archivo de especificaciónStablecoin.yml. - Abra una ventana de terminal, navegue hasta la carpeta chaincode y, a continuación, ejecute el siguiente comando.
npm install
Flujo de proceso de muestra para el código de cadena de Stablecoin
Un flujo de proceso típico que utiliza los métodos de stablecoin sigue estos pasos básicos.- Los administradores de token utilizan el método
initializeStablecoinTokenpara inicializar la stablecoin, especificando valores paracurrencyNamefijo (como USD) yconversionRate. - Los administradores de token utilizan los métodos
createAccountyassociateTokenToAccountpara crear cuentas de token y asignar roles a todos los usuarios, incluidos los aprobadores para aprobaciones de varios niveles, minters, notarios, remitentes y receptores. - Los administradores de token o los administradores de organización utilizan el método
createAccountPolicyCheckpara crear políticas de cuenta para todos los remitentes y receptores, y verificar los indicadores de KYC, AML y restricción. - Los administradores de token utilizan el método
createApprovalPolicyCheckpara definir políticas de aprobación mediante la especificación de umbrales de transacción, requisitos de aprobación como el número necesario de aprobaciones y detalles de aprobador con secuencias de aprobación para aprobaciones de varios niveles. - Los administradores de token utilizan el método
addRolepara asignar roles como minter, quemador y notario a las cuentas.
- El minter utiliza el método
requestMintpara solicitar la aprobación de monedas estables de menta. - El aprobador de moneda utiliza el método
approveMintpara aprobar la solicitud de minter. - Las monedas estables se emiten a la cuenta del minter.
- Un usuario inicia una transferencia mediante el método
holdTokens. - El sistema comprueba la conformidad de la política
AccountPolicyCheck. Si los valoreskycComplianceoamlCompliancese definen enfalsepara el remitente o el destinatario, la transferencia no se produce. Si el valorrestrictionFlagse define entruepara el remitente o el destinatario, solo se puede transferir el importe del rango más bajo de la política de aprobación. El importe de transferencia se confronta con los umbralesApprovalPolicyChecky los aprobadores adecuados con las secuencias definidas se aplican a la transacción. - Los aprobadores utilizan el método
approveTransactionpara revisar y autorizar la transferencia. Las aprobaciones se producen en función de la secuencia del aprobador, tal como se define en la política de aprobación. - Después de todas las aprobaciones, el notario del sistema (definido durante el proceso de retención) utiliza el método
executeHoldTokenspara aprobar la transacción. El importe aprobado se transfiere a la cuenta del receptor.
kycCompliance, amlCompliance y restrictionFlag para el remitente y el receptor se validan durante todas las aprobaciones que utilizan los métodos approveTransaction o executeHoldTokens.
- El quemador utiliza el método
requestBurnpara solicitar la aprobación para quemar (destruir) monedas estables. - El aprobador de grabación utiliza el método
approveBurnpara aprobar la solicitud del quemador. - Las monedas estables se queman de la cuenta del quemador.
- Los administradores y auditores pueden rastrear cada operación de menta, retención, transferencia, aprobación de varios niveles y grabación mediante los métodos
getAccountTransactionHistoryygetAccountTransactionHistoryWithFilters.