Amostra de Contratos Inteligentes
O Oracle Blockchain Platform Enterprise Edition para Hyperledger Besu inclui exemplos de contratos inteligentes, que estão disponíveis na página Ferramentas do Desenvolvedor no console de serviços.
Selecione o menu Opções de download para cada contrato para fazer download do código-fonte Solidity ou da ABI (Application Binary Interface). Você pode usar essas informações para interagir com contratos inteligentes implantados usando chamadas de API de proxy RPC. Você também pode importar o código-fonte para um ambiente de desenvolvimento do Solidity, como Hardhat ou Remix, e fazer alterações ou aprimoramentos conforme necessário.
Contrato de Hash Bloqueado no Tempo (HTLC)
Este contrato é implantado quando você cria uma instância. O Contrato Hash Time-Locked permite trocas atômicas de tokens ETH e ERC-20, onde um destinatário reivindica um pagamento antes de um prazo ou o pagamento é reembolsado ao remetente. O contrato suporta as seguintes operações.
- Troque tokens ERC-20 ETHor.
- Bloquear fundos para um recebedor em uma condição de segredo por um período especificado.
- Reivindique fundos bloqueados fornecendo o segredo correto antes que o bloqueio expire.
- Reembolsar fundos bloqueados não reclamados para o remetente depois que o bloqueio expirar.
- Obter o status de uma troca bloqueada, incluindo se foi reivindicada ou reembolsada, o valor bloqueado e o prazo de bloqueio.
SBT (Soul Bound Token)
Este contrato não foi pré-implantado. Você deve fazer download e compilar o código-fonte e, em seguida, implantar o contrato usando ferramentas como Hardhat ou a API proxy RPC. O contrato Soul Bound Token implementa uma credencial de estilo NFT intransferível que está vinculada a uma identidade de carteira. Os tokens só podem ser emitidos, verificados, revogados ou gravados pelo titular do token. Eles não podem ser vendidos ou movidos. O contrato suporta as seguintes operações.
- O proprietário do contrato (administrador) pode emitir ou revogar credenciais (cortar ou queimar tokens vinculados à alma em uma carteira).
- Os aplicativos podem verificar se uma wallet contém um token vinculado à alma e ler os metadados de token disponíveis (URI).
- O detentor do token pode queimar seu token ligado à alma.
LockBox
Este contrato é implantado quando você cria uma instância. O contrato LockBox implementa um vault com bloqueio de tempo que contém tokens ETH e ERC-20 e, em seguida, libera o conteúdo para um proprietário designado em um momento específico. O contrato suporta as seguintes operações.
- Deposite fundos no cofre enviando ETH diretamente ou transferindo tokens ERC-20.
- Obtenha detalhes do vault, incluindo quem é o beneficiário/proprietário, qual é o tempo de lançamento e quais tokens/ETH estão no vault. Qualquer usuário pode obter essas informações.
- Libere fundos em um momento específico. Após o timestamp especificado, o proprietário pode chamar a ação de liberação para recuperar os fundos.