Los oráculos ayudan a llevar datos del mundo real a la cadena de bloques, ampliando la utilidad de las aplicaciones y servicios basados en blockchain.
Los oráculos ayudan a llevar datos del mundo real a la cadena de bloques, ampliando la utilidad de las aplicaciones y servicios basados en blockchain.
Para entender la necesidad de oráculos en blockchain, es necesario comprender el concepto de determinismo, un término de ciencias de la computación que describe un sistema basado en reglas sin aleatoriedad. Una blockchain, como Ethereum, que puede ejecutar código programable es un sistema determinista conocido como máquina de estados. Una máquina de estados toma una entrada, la utiliza para alcanzar una salida, actualiza su estado en consecuencia y repite el ciclo.
Una red blockchain está formada por un grupo descentralizado de participantes llamados nodos. Las reglas de la red pueden variar, pero generalmente, la mayoría de los nodos deben alcanzar un consenso sobre las transacciones procesadas y el estado general de la blockchain. En este entorno descentralizado, todas las entradas deben ser leídas y entendidas por todos los participantes de la misma manera para producir una salida consistente.
Esta estricta adherencia a las reglas sistémicas significa que una blockchain como Ethereum se describe como determinista. Solo computará datos que sean conocibles por todos los participantes al estar disponibles en la cadena, como los saldos de las cuentas o el estado de ejecución de los contratos inteligentes.
Sin embargo, el determinismo de la blockchain crea una limitación inherente para los contratos inteligentes que dependen de datos fuera de la cadena, como los precios de las criptomonedas en relación con las divisas fiduciarias o el resultado de eventos particulares, como el marcador final de un partido de fútbol.
Los oráculos son fuentes de datos que traen estos datos fuera de la cadena a la cadena para que puedan ser utilizados en la ejecución de contratos inteligentes sin romper el consenso de la blockchain. Los oráculos desbloquean una amplia gama de casos de uso de contratos inteligentes que dependen de datos fuera de la cadena.
Historia de los oráculos
La palabra oráculo tiene orígenes en el latín antiguo y tiene muchos significados en el inglés moderno, incluso en la informática. En blockchain, el término tiene una definición específica que se refiere a una fuente de información de fuentes fuera de la cadena empaquetada para su procesamiento en la cadena en contratos inteligentes.
El problema del oráculo
La naturaleza determinista y descentralizada de los entornos blockchain significa que traer datos fuera de la cadena a la cadena introduce un potencial punto de centralización y vulnerabilidad.
Por ejemplo, los oráculos se utilizan a menudo para alimentar información de precios en aplicaciones financieras descentralizadas. Si alguien pudiera encontrar una forma de manipular los datos de precios a su favor, la red no tendría forma de saber que esto ha sucedido y verificaría transacciones basadas en información falsa.
Dado que las blockchains pueden asegurar miles de millones de dólares en valor, tales riesgos podrían tener costosas implicaciones.
Este problema de confianza se conoce como el "problema del oráculo", y es uno de los desafíos más fundamentales en la realización del potencial de los contratos inteligentes. Para pasar con éxito la prueba del oráculo, un oráculo debe ser capaz de garantizar que los datos se obtuvieron de fuentes auténticas y que no han sido cambiados antes de ser procesados en la cadena.
Como las blockchains operan 24/7 sin interrupción, los oráculos también deberían poder garantizar que la fuente de datos esté siempre disponible bajo demanda.
Cómo funcionan los oráculos
Las blockchains públicas y las aplicaciones descentralizadas (dapps) dependen casi exclusivamente de oráculos descentralizados. Los oráculos que dependen de una única fuente de datos centralizada generalmente no pasan la prueba del oráculo, ya que una sola entidad no puede también verificar independientemente la autenticidad e integridad de los datos que proporciona.
Un servicio de oráculo descentralizado utiliza una red de nodos para obtener datos de una variedad de servicios de oráculo fuera de la cadena, incluyendo plataformas de trading para datos de precios o terminales de noticias para resultados de eventos. La red de nodos luego compara las fuentes de datos para verificar su veracidad y descartar cualquier valor atípico que pueda sesgar los datos.
Las redes de oráculos descentralizados también utilizan incentivos basados en criptomonedas para asegurar que los nodos sean recompensados por proporcionar datos limpios y precisos y penalizados si se descubre que están proporcionando datos poco fiables.
El proceso comienza cuando un contrato inteligente genera una solicitud a la red de oráculos para obtener datos fuera de la cadena. La red responde extrayendo datos disponibles de fuentes que se han establecido como confiables y consolidando los datos en una única respuesta agregada a la consulta. La respuesta se devuelve entonces al contrato inteligente original.
Menos comúnmente, algunos oráculos también se utilizan como servicios de salida, transfiriendo datos en la cadena a fuentes fuera de la cadena. Un ejemplo podría ser transmitir el número de tokens acuñados a servicios de monitoreo web en línea.
Casos de uso de los oráculos
Aunque los oráculos pueden proporcionar teóricamente cualquier tipo concebible de datos fuera de la cadena, su uso generalmente se divide en tres categorías principales.
Datos financieros
El próspero panorama de las aplicaciones de finanzas descentralizadas (DeFi) no existiría sin la disponibilidad de información financiera confiable proporcionada por servicios de oráculos. Los oráculos de precios rastrean el valor de las criptomonedas en relación con las monedas fiduciarias en los exchanges y los mercados de capital globales para obtener datos sobre activos como el oro o las materias primas, de modo que puedan ser utilizados en una amplia gama de dapps DeFi.
Resultados de eventos
Las plataformas de mercados de predicción basadas en blockchain, como Augur, que permiten especular sobre el resultado de eventos como elecciones estatales o torneos deportivos, dependen de los datos de los oráculos para alimentar resultados confiables.
De manera similar, aplicaciones de seguros como Arbol dependen de oráculos meteorológicos descentralizados para proporcionar información sobre eventos meteorológicos para calcular primas precisas en seguros de riesgo climático.
Generación de números aleatorios
La generación de números aleatorios (RNG, por sus siglas en inglés) es otro tipo de datos comúnmente proporcionado por servicios de oráculos, ya que la verdadera aleatoriedad está en conflicto con el determinismo de un entorno blockchain. Aunque una red blockchain puede generar cierto grado de aleatoriedad, los juegos de dados y las dapps tipo lotería como PoolTogether dependen de la capacidad de generar secuencias o seleccionar participantes con un alto grado de aleatoriedad.
Los oráculos descentralizados generan números aleatorios fuera de la cadena utilizando un algoritmo criptográfico llamado Función Aleatoria Verificable. Esto utiliza un par de claves pública/privada para generar un número aleatorio y una prueba criptográfica de que el número es aleatorio. El número y la prueba se envían luego a la blockchain para su uso en un contrato inteligente.
Ejemplos de proveedores de oráculos
Chainlink es el proveedor de oráculos con la cobertura más extensa en términos de blockchains soportadas y adopción por parte de dapps. Chainlink proporciona datos a Ethereum, Polygon, Avalanche, BNB Chain, Arbitrum y muchas más blockchains. Sus feeds de precios son utilizados por muchas de las dapps DeFi más grandes, incluyendo Aave, Synthetix y Compound.
Band Protocol es un servicio de oráculo construido utilizando el protocolo de Comunicación InterBlockchain (IBC) de Cosmos, lo que significa que puede enviar datos a cualquier blockchain habilitada para IBC. Está integrado con Celo, un protocolo de pago, y el Protocolo Injective, una plataforma de intercambio descentralizado.
UMA (Universal Market Access) es un tipo avanzado de oráculo llamado "oráculo optimista", diseñado para proporcionar intervención humana en caso de disputa entre puntos de datos estáticos proporcionados por proveedores de oráculos estándar. UMA está predominantemente dirigido a desarrolladores.
Aspectos esenciales de los oráculos
Los oráculos son una forma de llevar datos fuera de la cadena a la cadena para su uso en contratos inteligentes.
Los oráculos descentralizados como Chainlink y Band Protocol superan el desafío clave de que los datos del oráculo deben ser autenticados y no modificados antes de ser enviados a la cadena.
Los oráculos desbloquean una amplia gama de casos de uso para contratos inteligentes, por ejemplo, proporcionando datos de precios a dapps DeFi, o resultados de eventos a mercados de predicción.