O que é Oracle Problem?
O Oracle Problem é a dor de cabeça que surge quando uma blockchain precisa de dados externos mas não consegue obtê-los sozinha. Tens código que é sem confiança, mas precisa confiar em algo para saber o preço do ETH ou o tempo de hoje. Pensa numa cozinha trancada a perguntar a alguém na janela se está a chover antes de começar uma sopa.
“Basta ligar qualquer API e está feito.” Não é bem assim. Recolher dados de uma única fonte centralizada pode introduzir novos pontos de falha e enviesamento, que é precisamente aquilo de que o Oracle Problem alerta.
Como o Oracle Problem funciona
O Oracle Problem aparece sempre que código numa cadeia quer informação que vive fora da cadeia. Rápido resumo:
- Passo 1: Uma chamada de contratos inteligentes precisa de dados, como o preço do BTC ou o resultado de um jogo.
- Passo 2: Um oracle recolhe esses dados de fontes, por exemplo várias bolsas, e depois os consolida.
- Passo 3: O oracle publica os dados na cadeia para que o contrato os possa ler.
- Passo 4: O contrato age, talvez liquidando um empréstimo ou libertando um pagamento.
- Passo 5: Se o feed estiver errado, atrasado ou manipulado, os resultados ficam enviesados e o valor segue na direção errada.
É por isso que o Oracle Problem trata de trazer verdade externa sem comprometer a confiança. Já percebes a ideia.
Por que o Oracle Problem importa
Se te interessa que cripto funcione em aplicações reais, isto importa.
- Benefício: Um desenho melhor de oracles mantém a lógica financeira honesta, para que liquidações, pagamentos e trocas ocorram com dados justos.
- Perspetiva: É o problema silencioso por detrás de feeds de preços, apostas em eventos desportivos e atributos de NFTs que atualizam; se falhar, as coisas ficam rapidamente negativas.
- Relevância: Vais encontrá-lo em finanças descentralizadas (DeFi), jogos, mercados de previsão e até seguros on chain.
Prefere redes de oracle descentralizadas que recolhem de muitas fontes, publicam com frequência e mostram os seus cálculos. Transparência vence impressões.
Principais características do Oracle Problem
O que dá forma a este tema:
- Confiança: Procura-se minimizar a necessidade de confiança mesmo quando os dados vêm de terceiros.
- Finalidade: Uma vez que os dados entram na cadeia, tornam-se imutáveis, por isso entradas incorretas permanecem.
- Latência: Os feeds têm de ser suficientemente recentes para evitar ações com dados obsoletos sem sobrecarregar a cadeia.
- Diversidade: Múltiplas fontes independentes e repórteres reduzem pontos únicos de falha.
- Incentivos: Os repórteres precisam de participação com recompensas e penalidades que alinhem com a verdade.
Variações
O Oracle Problem mostra diferentes formas dependendo dos dados e do fluxo desejado:
- Entrada: Dados do mundo real a entrar numa cadeia, como preços ou tempo.
- Saída: A decisão de um contrato enviada para uma rede de pagamentos ou servidor de jogo.
- Push: Feeds atualizam a cadeia a intervalos sem serem solicitados.
- Pull: Contratos solicitam dados apenas quando necessário para poupar custos.
- Assinado: Provedores de dados assinam valores fora da cadeia para que qualquer pessoa possa verificar a origem.
- Comité: Um conjunto de repórteres chega a um acordo antes de publicar um valor.
O Oracle Problem não é só técnico. É social. Em quem confias, como são pagos e o que acontece se trapacearem? Responde a isso ou as promessas do código ainda podem correr mal.
Exemplo
Um protocolo de empréstimos lê um feed de preços, o ETH cai um por cento, empréstimos são liquidados, e horas depois todos descobrem que o feed estava errado porque uma única bolsa se comportou de forma estranha clássico Oracle Problem.
Curiosidade
“Oracle” vem de antigos videntes que falavam pelos deuses; em cripto, pedimos-lhes preços e previsões meteorológicas, o que é menos poético mas muito mais verificável.
Resumo
O Oracle Problem em uma linha: trazer verdade externa para a cadeia sem pedir aos utilizadores que simplesmente acreditem em ti. Acerta nisso e o resto começa a funcionar, Rolex encontra fóruns do Reddit.
