El cambio de Web3 hacia oráculos de primera parte

La tendencia hacia los oráculos de primera parte.

El cambio de Web3 hacia oráculos de primera parte

¿Qué es un oráculo?

Los contratos inteligentes, que se ejecutan en blockchain, necesitan datos fuera de la cadena, pero no pueden llamar a las APIs web como lo hacen las aplicaciones web regulares. Con los contratos inteligentes, muchos nodos en una red distribuida realizan el mismo cálculo sobre los mismos datos de entrada al mismo tiempo. Deben ponerse de acuerdo sobre los resultados para avanzar. Si los nodos no tienen exactamente los mismos datos de entrada, entonces no funciona. El "tiempo" en la blockchain no puede avanzar. Si cada nodo intentara llamar a la misma API al mismo tiempo, nada garantiza que obtendrían la misma respuesta. Un nodo no tendría razones para confiar en las respuestas de API utilizadas por otros nodos como entradas.

Debido a 1) la naturaleza distribuida de los contratos inteligentes, 2) la necesidad de que todos los nodos compartan las mismas entradas, y 3) la necesidad de que la red alcance consenso sobre los resultados, los contratos inteligentes están aislados de internet. Los contratos inteligentes no pueden obtener datos directamente del mundo real.

Algo tiene que poner los datos del mundo real que necesitan los contratos inteligentes en la cadena para que todos los nodos puedan usarlos como entrada en sus cálculos. Esta "cosa" que decide el valor correcto de los datos del mundo real y los pone en la cadena se llama oráculo. Hacer esto correctamente sin sacrificar los beneficios de usar blockchain en primer lugar es un problema complejo y difícil. Se le conoce como "el problema del oráculo".

Breve historia del problema del oráculo

El problema del oráculo es un tema interesante en blockchain. Pero la idea no se originó en el espacio blockchain. Mucho antes de que se publicara el documento técnico de Bitcoin, el concepto de oráculo se utilizaba en las pruebas de software. El código que se está probando se ejecuta con entradas conocidas y algo verifica que produjo el resultado esperado. La "cosa" que decide si la prueba ha pasado o fallado se denomina oráculo.

El problema del oráculo en las pruebas de software también es difícil. Especialmente cuando se prueban sistemas distribuidos. Y más aún cuando se prueban sistemas en línea en tiempo real. Las blockchains son sistemas distribuidos en línea, lo que ayuda a explicar por qué el problema del oráculo en blockchain es tan difícil.

La referencia más antigua que he encontrado al problema del oráculo en blockchain es una publicación en Reddit del 13 de diciembre de 2014. El usuario describió el problema de las aplicaciones descentralizadas que se ejecutan en la red Bitcoin y que dependen de datos externos. Para citar al usuario que escribió la publicación: "Lo pienso como 'el problema del oráculo'." Luego continúa discutiendo lo difícil que es este problema y que parece que cualquier solución es susceptible de ser manipulada. Y el desafío había sido planteado.

Un ejemplo temprano de un oráculo de blockchain fue el mercado de predicciones Augur, que era manual: se recurría a humanos para responder preguntas, y las respuestas ganadoras se usaban en la cadena. Más tarde vinieron los oráculos programáticos, como Oraclize, que obtenían datos automáticamente de la web en lugar de humanos, pero eran más centralizados. Luego llegaron los oráculos descentralizados programáticos, como Chainlink, donde varios nodos de oráculo se ejecutan al mismo tiempo, obtienen datos de APIs web y los agregan en un único archivo. Hoy en día, el término oráculo generalmente implica uno impulsado por API como Chainlink.

Al igual que en las pruebas de software, se ha avanzado mucho en el espacio de los oráculos blockchain. Pero no se ha resuelto. La tecnología de los oráculos ha evolucionado, pero no hay una solución general. Se han hecho concesiones de ingeniería que ganan en un área sacrificando en otra, para adaptarse mejor a diferentes casos de uso y situaciones.

¿Dónde estamos ahora?

Teóricamente, los datos de los oráculos pueden provenir de una amplia variedad de fuentes, pero prácticamente, casi siempre provienen de APIs web. En un esfuerzo por evitar que los contratos inteligentes (aplicaciones descentralizadas) dependan de proveedores de API individuales, el enfoque más común para el problema del oráculo hoy en día es agregar datos de múltiples nodos de oráculo. Pero los nodos de oráculo aún obtienen sus datos de las APIs web.

Hoy en día, los oráculos descentralizados generalmente son operados por separado de los proveedores de APIs que poseen los datos. Dado que estos nodos de oráculo son operados por terceros en lugar de los propios proveedores de APIs, los llamamos oráculos de terceros. Los oráculos de terceros introducen problemas adicionales.

  • Es difícil saber de qué APIs provienen los datos porque hay una capa opaca de nodos de terceros en el medio. Los oráculos de terceros no son transparentes.
  • El objetivo era descentralizar los datos, pero eso solo sucede si los datos mismos provienen de múltiples APIs independientes. Dado que los desarrolladores no pueden ver de qué APIs provienen los datos, es difícil saber si realmente están descentralizados.
  • Una red de nodos de oráculo de terceros tiene un costo. Cada nodo tiene costos operativos y necesita obtener ganancias. Si los desarrolladores no pueden verificar que los datos provienen de fuentes independientes y de alta calidad, ¿por qué deberían creer que están obteniendo algún beneficio por el costo de los nodos descentralizados?

El nudo gordiano

Burak Benligiray, uno de los fundadores de API3, escribió un excelente artículo en Medium, “El nudo gordiano llamado el problema del oráculo”, en el que compara el problema del oráculo con la leyenda de Alejandro Magno, donde el Rey Midas había atado un nudo que parecía imposible de desatar. En lugar de intentar desatarlo, Alejandro lo cortó por la mitad con su espada.

La metáfora de Burak captura una tendencia que está desarrollándose en el espacio de los oráculos. Resolver el problema del oráculo con oráculos descentralizados de terceros es como intentar desatar el nudo gordiano. En lugar de seguir luchando con un problema imposible, Alejandro utilizó un enfoque pragmático y redujo el problema a algo más simple y efectivo. De manera similar, la industria está dándose cuenta de que el cuello de botella para descentralizar los datos fuera de la cadena está en encontrar múltiples proveedores de API independientes y de alta calidad, no en los nodos de los oráculos.

El enfoque pragmático para los datos fuera de la cadena es simplificar “el problema del oráculo” a “el problema de la conectividad API”. En lugar de confiar en redes opacas de nodos de oráculo de terceros, los contratos inteligentes necesitan transparencia y acceso directo a las APIs que proporcionan los datos. La transparencia es la clave para minimizar la confianza al llevar datos a la cadena. La descentralización de datos debería ocurrir de manera confiable en la cadena, no de manera opaca fuera de ella.

La solución es que los propios proveedores de API se conviertan en los oráculos. Los llamamos oráculos de primera parte. Cuando el proveedor de API que posee los datos opera el oráculo él mismo, es un oráculo de primera parte. Cuando un tercero que no posee los datos opera el oráculo, es un oráculo de terceros.

La tendencia hacia los oráculos de primera parte

Intuitivamente, las ventajas de los oráculos de primera parte sobre los de terceros son claras. En igualdad de condiciones, obtener datos directamente de una fuente reputada y de alta calidad es preferible a obtenerlos de intermediarios de terceros, incluso si hay varios de esos intermediarios.

Los principales proyectos de oráculos están reconociendo esto. Chainlink está promoviendo nodos de oráculo operados por proveedores de API calificado como AccuWeather. API3, Pyth, Flux, IOTA y otros oráculos destacan su arquitectura de primera parte como una mejora. La próxima generación de oráculos son de primera parte.

Esta tendencia no es solo una realización repentina de que los oráculos de primera parte son mejores que los de terceros. Algo más ha cambiado. De hecho, dos cosas han cambiado que permiten que los oráculos de primera parte finalmente se conviertan en realidad.

  1. Blockchain se ha vuelto mainstream. Hace unos años, la mayoría de las empresas tradicionales reputadas apenas pensaban en blockchain y contratos inteligentes. Ahora muchas de ellas están entrando de lleno. Antes temían a blockchain, y ahora quieren participar.
  2. Operar nodos de oráculo solía ser más difícil. Ahora es fácil para un negocio de API operar su propio nodo de oráculo con poco o ningún costo o mantenimiento, y ni siquiera necesitan lidiar con criptomonedas para monetizarlo. 

Estos dos cambios en el panorama blockchain son monumentales. Ahora los proveedores de API están tanto motivados como capacitados para convertirse en oráculos ellos mismos y entregar sus datos directamente en la cadena.

¿Cuáles son las consecuencias de esto?

Esto significa que los proveedores de API que poseen los datos pueden ofrecerlos directa y transparentemente a los contratos inteligentes. Los intermediarios ya no son necesarios. Cuando necesitas archivos de datos descentralizados agregados de múltiples fuentes, pueden agregarse de manera segura y transparente en la blockchain confiable en lugar de fuera de la cadena en una red opaca de oráculos de terceros.

¿Cómo luce el futuro?

¿Hay todavía espacio para los oráculos de terceros? Por supuesto. Seguirán existiendo y, en mi opinión, seguirán creciendo junto con todo el espacio de oráculos. Pero como resultado de estos dos cambios clave en el entorno, ya no son la única opción viable. Como en la web tradicional, las empresas pueden decidir si quieren externalizar el alojamiento a proveedores de terceros o hacerlo ellas mismas en su propia cuenta de computación en la nube, como AWS, GCP o Azure.

Pero hay una diferencia importante. En Web3, minimizar la dependencia de la confianza, es decir, ser confiable, es considerablemente más importante. La transparencia de la fuente de datos y evitar intermediarios innecesarios es la forma más práctica de minimizar la confianza al llevar datos a la cadena.

Estamos viendo un gran aumento tanto en la profundidad como en la amplitud de cómo los contratos inteligentes usan datos fuera de la cadena. La demanda está aumentando rápidamente para los archivos de datos existentes y muy utilizados, mientras que los casos de uso que requieren nuevos tipos de datos fuera de la cadena están apareciendo cada vez con más frecuencia. Por ejemplo, el seguro paramétrico, los contratos de custodia y la logística son casos de uso más recientes que dependen de datos fuera de la cadena.

La transparencia, eficiencia y escalabilidad de los oráculos de primera parte desempeñarán un papel enorme en dar vida a estos nuevos casos de uso.