No mundo da blockchain, para que contratos inteligentes acessem dados do mundo real, é indispensável o uso de máquinas oráculo. Na verdade, acho que muitas pessoas subestimam essa parte.



Contratos inteligentes são muito fortes em relação aos dados dentro da blockchain, mas não podem acessar informações do mundo externo. Por exemplo, se quisermos refletir o volume de negociações de petróleo de hoje no contrato, essa informação está off-chain, então é necessário algum intermediário. Essa é a função da máquina oráculo.

A estrutura dessa máquina oráculo é, na verdade, um sistema simples de solicitação e resposta. O contrato inteligente envia uma solicitação externa de "me forneça esses dados", o oráculo captura essa solicitação, obtém os dados do mundo real e os devolve para a cadeia. Essa sequência é o funcionamento básico da máquina oráculo.

No setor de blockchain, o projeto que detém uma participação de mercado esmagadora é o Chainlink. Chainlink é uma máquina oráculo descentralizada, especializada em fornecer dados do mundo real de forma segura para a blockchain. Com o token LINK, eles constroem um ecossistema baseado em incentivos.

Para operar a máquina oráculo do Chainlink, é necessário transferir tokens LINK. Esses tokens são implementados na rede Ethereum usando a norma ERC677. Este é um ponto importante. No padrão ERC20, não é possível realizar pagamento e solicitação de serviço ao mesmo tempo. Por isso, o Chainlink propôs a norma ERC677 de forma independente.

O método central do ERC677 é o "transferAndCall". Com ele, a transferência de tokens e a solicitação de serviço podem ser concluídas em uma única transação. Quando o usuário executa transferAndCall, além da transferência padrão do ERC20, o método onTokenTransfer do endereço receptor é chamado automaticamente.

Quando a máquina oráculo recebe uma solicitação, ela primeiro realiza várias verificações de segurança. Verifica se a origem é realmente o contrato de tokens LINK, se o tamanho dos dados está adequado, se o seletor da função está correto. Se passar por essas verificações, um ID único chamado requestId é gerado e registrado no log de eventos.

Esse evento é monitorado por nós, os nós off-chain. Eles leem as informações necessárias do evento, acessam a API da rede para obter os dados do mundo real. Depois, chamam o método fulfillOracleRequest para devolver os dados para a cadeia. Esse ciclo completo é o funcionamento da máquina oráculo.

Na implementação, o Chainlink fornece feeds de preços de pares de negociação existentes, chamados de Aggregators. Com eles, os desenvolvedores não precisam especificar APIs por conta própria. Pares principais como ETH/USD já estão disponíveis, e basta chamar o método latestRoundData() para obter o preço mais recente.

Na maioria das aplicações, basta ler o preço mais recente. Especialmente ao lidar com preços denominados em USD, a precisão é uniformemente configurada para 8 casas decimais, eliminando a necessidade de processos complexos. Ou seja, implementar feeds de preços usando máquinas oráculo é mais simples do que se imagina.

Esse sistema permite que protocolos DeFi e produtos financeiros complexos funcionem. Sem máquinas oráculo, não há como fazer a ponte entre a blockchain e o mundo real. No Gate.io, também é possível conferir vários projetos que utilizam oráculos, então, se tiver interesse, vale a pena dar uma olhada.
ETH-0,8%
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • Comentário
  • Repostar
  • Compartilhar
Comentário
Adicionar um comentário
Adicionar um comentário
Sem comentários
  • Marcar