Oráculos: Conectando los Smart Contracts con el Mundo

Los oráculos son sistemas para introducir datos del mundo externo en el blockchain y disparar la ejecución de contratos inteligentes…

Federico Ast
Astec
Published in
5 min readDec 24, 2020

--

Los smart contracts son potentes herramientas para lograr una mayor transparencia y eficiencia en un gran número de acuerdos y de procesos de negocio.

En principio, pueden codificar todo tipo de acuerdos con el formato “si X, entonces Y”.

Por ejemplo, en el caso de un seguro contra la sequía, podría ser: “Si llueve menos de 10mm durante el mes de junio, el agricultor recibirá una compensación de 100$ de la empresa de seguros”.

En una operación financiera: “Si el precio del activo X supera los 100$, Alice debe pagar 10$ a Bob”.

O también podríamos codificar una apuesta: “Si el Barcelona derrota al Real Madrid en el próximo partido, entonces Alice debe pagar 100$ a Bob”.

Pero, ¿cómo puede el smart contract saber cuáles fueron las precipitaciones? ¿Cómo puede saber cuál era el precio del activo? ¿O cuál fue el resultado de Barcelona-Real Madrid?

Un smart contract es un programa que corre sobre un blockchain. Como tal, no puede acceder directamente a información que se encuentra fuera de la red.

Y esta información es de vital importancia para la ejecución de los acuerdos.

Para una introducción a los smart contracts, lee este artículo.

Oráculos

Un oráculo es un sistema que se utiliza para introducir datos externos en el blockchain con el objetivo de disparar la ejecución de smart contracts. Es como un “puente” entre el mundo del blockchain y el mundo externo.

En el caso del seguro contra sequía, el oráculo debe informar al smart contract cuáles fueron las precipitaciones durante el período en cuestión.

Para esto, debe recibir información de alguna fuente confiable sobre el clima: podría ser una fuente pública, como el servicio meteorológico nacional, o una fuente privada como Accuweather.

En el caso del precio del activo financiero, el oráculo podría utilizar una fuente confiable como Bloomberg o Reuters.

En el caso del resultado deportivo, podría recurrir a un servicio de información especializado como ESPN.

En la mitología griega, los oráculos eran fuentes a las que se consultaba para obtener respuestas verdaderas a preguntas de todo tipo. En el mundo del blockchain, el oráculo es consultado para obtener respuestas verdaderas sobre datos que disparan smart contracts.

Riesgos de Ataque

Quien controla el oráculo, controla la ejecución del smart contract.

En el caso del seguro contra la sequía, imaginemos que efectivamente llovió menos de 10mm, por lo que correspondería que la aseguradora compensara al agricultor.

Para evitar tener que pagar, una aseguradora maliciosa podría buscar alguna manera de manipular el oráculo para que reporte unas precipitaciones superiores a 10mm.

¿Llamar a “un amigo” en el servicio meteorológico? ¿Contratar hackers en la Dark Web para paralizar el servicio de reporte hasta después del momento de la ejecución?

Hay muchas formas en las que alguien podría intentar atacar la fuente de datos de la que depende la ejecución del acuerdo.

Esto no es ciencia ficción.

En noviembre de 2020, un ataque contra un oráculo que proveía datos de precios de activos en la plataforma de finanzas Compound ocasionó una liquidación errónea por unos 100 millones de dólares.

En noviembre de 2020, un ataque al oráculo de la plataforma Compound disparó liquidaciones erróneas por unos 100 millones de dólares.

Eligiendo Oráculos Seguros

A la hora de desarrollar un acuerdo o proceso de negocio a través de smart contracts, es crítico considerar qué fuentes de datos utilizar y cómo la información será introducida en el blockchain.

El oráculo debe ser tan confiable como el smart contract al que va a proveer información. Una mala implementación puede ser atacada y generar resultados diferentes al esperado.

Algunos proyectos construidos sobre el blockchain de Ethereum como Chainlink y API3 se dedican especialmente a construir oráculos confiables y descentralizados, capaces de resistir a distintos tipos de ataques.

Utilizan un esquema de incentivos económicos para lograr que un conjunto de agentes descentralizados reporten información verdadera sobre un amplio número de temas que van desde condiciones climáticas y precios de activos hasta resultados deportivos.

Chainlink es un proyecto de código abierto con el objetivo de construir una red de oráculos confiables.

Un terreno de gran crecimiento en los próximos años es la implementación de soluciones de Internet de las Cosas en el campo de los oráculos.

Imaginemos que Alice contrata a Bob para transportar alimentos. Por supuesto, a ella le interesa que el transporte se realice bajo las condiciones adecuadas de refrigeración.

Así que acuerdan: “Si, en algún momento del trayecto, la temperatura en el contenedor supera los 5 grados, Bob debe compensar a Alice con 100$”.

Para verificar si la temperatura efectivamente superó o no los 5 grados, podrían utilizar un termómetro inviolable que registre continuamente la temperatura en el blockchain (por ejemplo, la empresa Modum se dedica a la producción de esta clase de dispositivos).

En base a ese registro, el smart contract disparará automáticamente los pagos para cumplir los términos del acuerdo.

Del mismo modo, distintos tipos de sensores pueden utilizarse para medir de manera segura todo tipo de indicadores relevantes para la ejecución de contratos inteligentes.

En el caso de un seguro contra sequía, un pluviómetro inteligente podría ser una forma segura de vincular los datos de las precipitaciones con el smart contract.
Un cliente podría tener el siguiente acuerdo con su seguro de salud: “Si el cliente realiza más de 15 horas de ejercicio por semana, recibirá un descuento del 10% en su prima”. Un sensor en su reloj inteligente podría medir la actividad física y disparar un smart contract que ajuste los pagos de manera automática.
Los sensores de un vehículo podrían medir el comportamiento del conductor y proveer información a un smart contract que ajuste dinámicamente la prima de seguro.

En síntesis, los smart contracts son poderosas herramientas para construir y ejecutar diferentes tipos de acuerdos y procesos de negocios.

Para funcionar, requieren un acceso seguro a fuentes de datos macroeconómicos, climáticos, informes de riesgo crediticio, posicionamiento de GPS, registros públicos y muchos otros.

Los oráculos proveen la infraestructura fundamental para que estos datos se introduzcan de manera segura y transparente en el blockchain.

--

--

Federico Ast
Astec
Editor for

Ph.D. Blockchain & Legaltech Entrepreneur. Singularity University Alumnus. Founder at Kleros. Building the Future of Law. @federicoast / federicoast.com