Si llevas un tiempo en este mundillo seguro que has oido la palabra oráculo o oracle. Estas entidades tan importantes son el componente principal de muchos de los grandes protocolos DeFi que conocemos como AAVE, Maker o Uniswap.

Los oráculos blockchain son entidades que conectan las blockchains a sistemas externos, facilitando así la ejecución de smart contracts (contratos inteligentes) basándose en datos externos provenientes del “mundo real”.

Los oráculos proporcionan una manera para que el ecosistema Web3 acceda a fuentes de datos ya existentes, a sistemas tradicionales, y computaciones/cálculos avanzados. Las redes de oráculos permiten la creación de contratos inteligentes híbridos, donde el código on-chain y la infraestructura off-chain se combinan para ofrecer servicios a aplicaciones descentralizadas (dApps) que reaccionan a eventos del mundo real e interaccionan con los sistemas tradicionales.

Off-chain → Blockchain → Off-chain

https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8861fa4-e160-4e46-909b-94284ebf4eb9_1600x539.png

El problema de las blockchains

La limitación principal de los contratos inteligentes consiste en que no pueden interactuar con datos y sistemas existentes fuera del ecosistema nativo de la blockchain. Los recursos externos a la blockchain se denominan off-chain, mientras que la información almacenada en la blockchain se llama on-chain. El hecho de que estén así de aisladas es lo que más valor proporciona a las blockchains como el consenso en la validación de transacciones de los usuarios, la prevención de los ataques de doble gasto (double-spending attacks) y la mitigación de tiempo de inactividad de la red. La manera segura que tienen las blockchains de operar con sistemas off-chain son los oráculos, una pieza de infraestructura que actúa de puente entre ambas.

Desconexión entre mundo real y blockchains

https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F4e25d3c7-200a-4198-9b36-97a86c86b6ba_1810x794.png

La mayoría de dApps DeFi requieren información del mundo real y de eventos que ocurren off-chain. Por tanto, los oráculos expanden el tipo de “acuerdos digitales” (smart contracts) que pueden ofrecer las blockchains proporcionándoles un acceso universal a recursos off-chain y manteniendo al mismo tiempo las propiedades más importantes de una blockchain. Dado que la información proporcionada por los oráculos a las blockchains determina directamente el resultado del contrato inteligente, es vital que el mecanismo por el que opera el oráculo sea correcto si el contrato ha de operar exactamente como se espera.

Oráculos descentralizados

Si los oráculos blockchain utilizan una entidad centralizada para transmitir la información a un smart contract introducen un posible único fallo, que además va en contra del propósito principal de una aplicación blockchain descentralizada. Por ejemplo, si ese único oráculo fallara o se desconectara, entonces el contrato inteligente no tendría acceso a la información requerida para la ejecución o se ejecutaría de manera errónea basado en información desactualizada.

Si el oráculo está corrupto, la información proporcionada puede ser incorrecta y puede llevar a resultados muy equivocados. Esto se refiere comúnmente como el problema “basura dentro, basura fuera” (garbage in, garbage out), donde datos entrantes erróneos llevan a malos datos salientes. Dada la irreversibilidad de las transacciones en una blockchain, que los resultados de un contrato inteligente dependan de información errónea puede implicar que los fondos de los usuarios se pierdan para siempre. Es por esto que los oráculos centralizados sean un claro NO para aplicaciones blockchain basadas en contratos inteligentes.

El problema de los oráculos se soluciona con las Redes Descentralizadas de Oráculos (o DONs por sus siglas en inglés), que combinan varios nodos-oráculos independientes y múltiples fuentes de información para establecer descentralización end-to-end.

Tipos de oráculos

Dada la cantidad de recursos distintos disponibles off-chain, hay diversos tipos de oráculos. Por lo general, todos involucran alguna combinación de obtención, validación, computación y envío de datos a un destino.

  • De entrada: es el tipo más reconocido, que recoge datos del mundo exterior y lo lleva a la blockchain para que lo use el contrato inteligente. Por ejemplo, los automated market makers como Uniswap, utilizan oráculos para ayudar a concentrar la liquidez en el precio actual de mercado y así aumentar la eficiencia del capital.
  • De salida: lo contrario a lo anterior, que permite a los smart contracts enviar comandos a sistemas externos que ejecutan ciertas acciones. Por ejemplo, un oráculo que informa a una red que haga un pago, o que envía información a sistemas IoT basándose en si una transacción on-chain se realiza o no.
  • Cross-chain: escriben y leen información entre blockchains distintas, que permiten la interoperabilidad para mover tanto información como activos entre blockchains. Por ejemplo, usar información en una red para iniciar una transacción en la otra.
  • Habilitados para computación: llevan a cabo cálculos de manera segura off-chain que luego se utilizan on-chain dado que es poco práctico hacerlo en la blockchain debido a motivos técnicos, legales (privacidad…) u otros. Por ejemplo, calcular zero-knowledge proofs para generar información privada.

Otros casos de uso de los oráculos

  • DeFi: por ejemplo, los prestamistas descentralizados como AAVE o Maker utilizan oráculos para obtener precios de los activos prestados de otras fuentes como exchanges (Binance, Coinbase…) y otros agregadores como Coingecko o Coinmarketcap. Las plataformas de activos sintéticos como Synthetix, utilizan oráculos para obtener precios a tiempo real de activos físicos como el petróleo o el oro.
  • NFTs Dinámicos y Gaming: los NFTs dinámicos son NFTs cuya apariencia, valor o distribución varía dependiendo de eventos externos como la hora del día o el tiempo. Por otro lado, los oráculos habilitados para la computación se pueden usar para que los proyectos NFTs generen los rasgos aleatorios de las colecciones.
  • Seguros: los smart contracts de seguros utilizan oráculos de entrada para verificar que han ocurrido los eventos asegurados durante el proceso de uso del seguro, abriendo el acceso a sensores físicos, APIs web, imágenes por satélite o información legal. También se podrían usar oráculos de salida para automatizar los pagos del seguro una vez se compruebe que lo cubierto por el seguro realmente ha ocurrido.
  • Sostenibilidad: los contratos inteligentes híbridos están creando mejores incentivos por participar en prácticas verdes a través de técnicas avanzadas de verificación del impacto de las iniciativas verdes de las empresas. Los oráculos son una herramienta critica para proporcionar a los contratos inteligentes con información externa de lecturas de sensores, imágenes por satélite o computaciones mediante machine learning. Los oráculos también están siendo utilizados en los repartos de los conocidos “créditos de carbono” que utilizan las empresas para compensar los impactos del cambio climático.