Un oráculo es un puente entre la cadena de bloques y el mundo real. Actúan como APIs en la cadena que puedes consultar para obtener información en tus contratos inteligentes. Puede ser cualquier cosa, desde información sobre precios hasta informes meteorológicos. Los oráculos también pueden ser bidireccionales, utilizados para “enviar” datos al mundo real.
Los oráculos proporcionan datos externos a los contratos inteligentes que operan en la tecnología blockchain. Son esencialmente una forma de comunicación entre el mundo exterior y el mundo del blockchain. Dado que las cadenas de bloques y los contratos inteligentes son sistemas cerrados -en los que existen procesos rígidos para conectarse a fuentes de datos externas- los oráculos presentan una forma de proporcionar de forma segura datos fuera de la cadena al entorno de la cadena de bloques de una red. En este artículo, se analizan algunos tipos diferentes de oráculos y se cubren los posibles retos a los que se enfrentan los oráculos dentro de su función de ejecución de contratos inteligentes.
Antes de entrar en lo que son los oráculos, es útil entender por qué se crearon y el problema que pretenden resolver. Los oráculos son programas informáticos que conectan los datos del mundo exterior (fuera de la cadena) con el mundo de la cadena de bloques (en la cadena).
La mayoría de las cadenas de bloques tienen criptomonedas nativas que se utilizan para transferir valor, permitir las operaciones del protocolo o facilitar la gobernanza. Algunas blockchains también permiten contratos inteligentes: programas informáticos que se ejecutan dentro de un protocolo de blockchain y ejecutan un conjunto predeterminado de acciones de forma automática cuando se cumplen ciertas condiciones de manera rastreable e irreversible. Los contratos inteligentes se ejecutan sin necesidad de terceros y pueden diseñarse para llevar a cabo casi cualquier contrato imaginable.
Por ejemplo, si se comprara una casa con criptomoneda, se podría redactar un simple contrato inteligente para la venta. Diría algo como “si la persona A envía los fondos necesarios a la persona B, entonces la escritura de la casa se transfiere de la persona B a la persona A”. Una vez que se cumplen las condiciones del contrato inteligente, éste se ejecuta irreversiblemente según su programación codificada. No es necesario depender de terceros tradicionales para iniciar o ejecutar el contrato.
Sin embargo, para que los contratos inteligentes tengan alguna aplicación en el mundo real, es necesario que haya una forma de que las cadenas de bloques y los contratos inteligentes en la cadena utilicen datos externos, fuera de la cadena. En el ejemplo anterior de una transacción inmobiliaria, los datos fuera de la cadena podrían ser la prueba de que el pago se ha realizado con éxito, o la prueba de que se ha recibido la escritura. Y como las cadenas de bloques son sistemas autónomos, aquí es donde entran en juego los oráculos.
Los oráculos son una forma de que una cadena de bloques o un contrato inteligente interactúen con datos externos. Actúan como una interfaz de programación de aplicaciones (API) con el mundo exterior a la cadena de bloques. Hay muchos casos en los que es necesario comunicar datos externos al sistema cerrado de la cadena de bloques, especialmente cuando los contratos inteligentes están conectados a eventos del mundo real. Los cripto oráculos consultan, verifican y autentifican los datos externos y luego los transmiten al sistema cerrado. Esos datos autentificados se utilizarían entonces para validar un contrato inteligente.
Los oráculos establecen una línea de comunicación bidireccional con las cadenas de bloques: los datos pueden ser enviados o transferidos. Mientras que los oráculos de salida pueden traer datos de la cadena de bloques al mundo exterior, es más común que los oráculos de entrada traigan datos fuera de la cadena -o del mundo real- a la cadena de bloques. La información importada puede representar casi cualquier cosa, desde las fluctuaciones de los precios de los activos, hasta las condiciones meteorológicas o la prueba de que los pagos se han realizado con éxito.
Un escenario programable frecuente para los oráculos de entrada podría ser: “Si un activo llega a un determinado precio, entonces coloca una orden de compra”. Como otro ejemplo, imagina que la persona A apuesta a la persona B que va a llover durante una semana seguida. Los importes de la apuesta se bloquearían en un contrato inteligente, un oráculo proporcionaría informes de datos meteorológicos precisos e inmutables, y los fondos se entregarían a la persona A o a la persona B, dependiendo de si los datos muestran que ha llovido durante una semana seguida.
Por el contrario, los oráculos de salida informan al mundo exterior de un evento que ha tenido lugar en la cadena. Por ejemplo, un contrato inteligente podría estar programado para desbloquear una cerradura inteligente habilitada para Internet en una unidad de alquiler en el mundo real si se recibe un pago de criptomoneda en una dirección específica de la cartera de criptomonedas.
La mayoría de los oráculos criptográficos procesan información digital, aunque no siempre es así. Los oráculos de software entregan datos de fuentes digitales como sitios web, servidores o bases de datos, mientras que los oráculos de hardware entregan datos del mundo real. Los oráculos de software pueden ofrecer información en tiempo real, como tipos de cambio, fluctuaciones de precios o información sobre vuelos. Los oráculos de hardware pueden entregar y transmitir información procedente de sensores de movimiento de cámaras, sensores de identificación por radiofrecuencia (RFID), termómetros o escáneres de códigos de barras.
Los oráculos centralizados están controlados por una sola entidad y actúan como único proveedor de datos para un contrato inteligente. Requieren que los participantes en el contrato depositen una cantidad significativa de confianza en una entidad. También representan un único punto de fallo, que puede amenazar la seguridad de un contrato inteligente: si un oráculo se ve comprometido, también lo estará el contrato inteligente. La exactitud y la eficacia de los contratos inteligentes dependen en gran medida de la calidad de los datos que se les proporcionan, por lo que los oráculos conservan una cantidad significativa de poder sobre los contratos inteligentes.
La razón por la que se inventaron los contratos inteligentes fue para evitar el riesgo de contraparte y la excesiva dependencia de terceros. Los oráculos permiten que los contratos se ejecuten entre partes que no son de confianza, pero (especialmente cuando se centralizan en exceso) pueden correr el riesgo de convertirse en los intermediarios que pretendían sustituir. Conocido como el problema de los oráculos, la preservación de la privacidad, la seguridad y la equidad -y evitar una centralización excesiva que podría dañar la relación entre los contratos inteligentes y las cadenas de bloques- se convierte entonces en el desafío clave al que se enfrentan los oráculos.
Los oráculos descentralizados tratan de conseguir resultados sin confianza y deterministas que se basan en la causa y el efecto en lugar de en las relaciones individuales. Tratan de conseguir estos resultados de la misma manera que lo hace una red blockchain: distribuyendo la confianza entre muchos participantes de la red. Al aprovechar muchas fuentes de datos diferentes e implementar un sistema de oráculo que no está controlado por una sola entidad, las redes de oráculo descentralizadas tienen el potencial de proporcionar un mayor nivel de seguridad y equidad a los contratos inteligentes. Lea más aquí.
Dirígete a nuestro Crypto Quick Start para aprender los conceptos básicos