Guía sobre los Oráculos Blockchain
Inicio
Artículos
Guía sobre los Oráculos Blockchain

Guía sobre los Oráculos Blockchain

Intermedio
Publicación: Jan 22, 2020Actualización: Nov 28, 2023
7m
Contenido generado por la comunidad - Autor: Vallery Mou


Contenido


¿Qué es un oráculo blockchain?

Los oráculos blockchain son servicios ofrecidos por terceros que proporcionan a los smart contracts información externa. Sirven como puente entre las blockchains y el mundo exterior.
Las blockchains y los smart contracts no tienen acceso a datos de tipo off-chain (es decir, datos que son externos a la red). Sin embargo, para la ejecución de muchos acuerdos contractuales, resulta vital disponer de información relevante sobre el mundo exterior.

Y aquí es donde entran en juego los oráculos blockchain, dado que proporcionan un enlace entre los datos off-chain y on-chain. Los oráculos resultan vitales dentro del ecosistema blockchain porque amplían el ámbito en el que los smart contracts pueden operar. Sin oráculos blockchain, los smart contracts tendrían un uso muy limitado dado que sólo tendrían acceso a datos internos de sus propias redes.

Es importante señalar que un oráculo blockchain no es la fuente de información en sí misma, sino la capa que consulta (queries), verifica y autentifica fuentes de datos externas, y luego transmite dicha información. Los datos transmitidos por los oráculos pueden tomar diversas formas -información del precio, culminación exitosa de un pago o temperatura medida por un sensor.

Para solicitar datos del mundo exterior, el smart contract ha de ser invocado y recursos de la red deben ser gastados. Algunos oráculos no sólo tienen la capacidad de transmitir información a los smart contracts, sino de mandarla de vuelta a las fuentes externas.

Existen muchos tipos distintos de oráculos -la operativa de un oráculo blockchain depende completamente de la función para que ha sido diseñado. Este artículo repasará algunos de dichos diseños.


Ejemplo de un oráculo blockchain

Imaginemos que Alice y Bob hacen una apuesta sobre quién ganará las elecciones presidenciales de los EE.UU. Alice cree que ganará el candidato republicano, mientras que Bob se inclina por el demócrata. Acuerdan las condiciones de la apuesta y dejan sus fondos inmovilizados en depósito en un smart contract, que se encargará de dispensar los fondos al ganador en base a los resultados de la elección.

Como el smart contract no puede interactuar con datos externos, dependerá de un oráculo que se encargue de proporcionarle la información necesaria -en este caso, los resultados de la elección presidencial. Una vez el proceso de elección concluye, el oráculo consulta una API de confianza para averiguar qué candidato ha ganado, y a continuación transmite esta información al smart contract. El contrato procede entonces a enviar los fondos a Alice o Bob, en función del resultado.

Sin un oráculo que transmita los datos, no habría manera de liquidar esta puesta de una manera que no pudiera ser aprovechada en beneficio propio por uno de los participantes.


¿Cuáles son los distintos tipos de oráculos blockchain?

Los oráculos blockchain pueden ser clasificados en base a un número de cualidades distintas:

  • Fuente -¿los datos se originan en software o hardware?
  • Dirección de la información -¿es de entrada o salida?
  • Confianza (Trust) -¿está centralizado o descentralizado?

Un mismo oráculo puede pertenecer a múltiples categorías. Por ejemplo, un oráculo que extrae la información de la página web de una compañía es un oráculo de tipo software de entrada y centralizado.


Oráculos de tipo software

Los oráculos de tipo software interactúan con fuentes de información online que transmiten a la blockchain. Dicha información puede provenir de bases de datos online, servidores, páginas web -básicamente, cualquier fuente de datos que se encuentre en la Web.

Que los oráculos de tipo software estén conectados a Internet no sólo es importante porque les permita suministrar información a los smart contracts -sino que también destaca el hecho de que puedan hacerlo en tiempo real. Esto hace que sean uno de los tipos de oráculos blockchain más comunes.

Entre la información normalmente suministrada por los oráculos blockchain podemos incluir las tasas de cambio de los exchanges, precios de activos digitales o información sobre vuelos en tiempo real.


Oráculos de tipo hardware

Algunos smart contracts necesitan interactuar con el mundo real. Los oráculos de tipo hardware están diseñados para obtener información del mundo físico y ponerla a disposición de los smart contracts. Dicho información puede ser transmitida por sensores electrónicos, escáners de códigos de barras y otros dispositivos lectores de información.

Un oráculo de tipo hardware básicamente "traduce" sucesos del mundo real y los convierte en valores digitales que pueden ser comprendidos por smart contracts.

Un ejemplo de esto podría ser un sensor que verifica si un camión que transporta mercancías ha llegado a una bahía de carga. Si lo hace, transmite la información a un contrato inteligente que luego puede ejecutar decisiones basadas en él.

Si desea leer más sobre un tema similar, consulte Casos de uso de Blockchain: Cadena de suministro.


Oráculos de entrada y salida (inbound/outbound oracles)

Los oráculos de entrada transmiten información de fuentes externas a contratos inteligentes, mientras que los oráculos de salida envían información de contratos inteligentes al mundo externo.

Un ejemplo de un oráculo de entrada es aquel que le dice a un contrato inteligente qué temperatura mide un sensor. Un ejemplo de un oráculo de salida se puede considerar con un bloqueo inteligente. Si los fondos se depositan en una dirección, el contrato inteligente envía esta información a través de un oráculo de salida a un mecanismo que desbloquea la cerradura inteligente.


Oráculos centralizados y descentralizados

Un oráculo centralizado es controlado por una sola entidad y es el único proveedor de información para el contrato inteligente. Usar solo una fuente de información puede ser arriesgado: la efectividad del contrato depende completamente de la entidad que controla el oráculo. Además, cualquier interferencia maliciosa de un mal actor tendrá un impacto directo en el contrato inteligente. El principal problema con los oráculos centralizados es la existencia de un único punto de falla, lo que hace que los contratos sean menos resistentes a las vulnerabilidades y los ataques.

Los oráculos descentralizados comparten algunos de los mismos objetivos que las blockchains públicas, evitando el riesgo de contraparte. Aumentan la fiabilidad de la información proporcionada a los contratos inteligentes al no depender de una sola fuente de verdad. El contrato inteligente consulta múltiples oráculos para determinar la validez y precisión de los datos; esta es la razón por la cual los oráculos descentralizados también pueden denominarse oráculos de consenso.

Algunos proyectos de blockchain brindan servicios de oráculos descentralizados a otras blockchains. Los oráculos descentralizados también pueden ser útiles en los mercados de predicción, donde la validez de un determinado resultado puede verificarse por consenso social.

Si bien los oráculos descentralizados apuntan a lograr la falta de confianza (Trustlessness), es importante tener en cuenta que, al igual que las redes blockchain trustless, los oráculos descentralizados no eliminan completamente la confianza, sino que la distribuyen entre muchos participantes.


Oráculos específicos de un contrato

Un oráculo específico de contrato es uno que está diseñado para ser utilizado por un solo contrato inteligente. Esto significa que si uno quiere implementar varios contratos inteligentes, debe desarrollarse un número proporcional de oráculos específicos de contrato.

Este tipo de oráculo se considera muy lento y costoso de mantener. Las empresas que desean extraer datos de una variedad de fuentes pueden encontrar este enfoque muy poco práctico. Por otro lado, dado que los oráculos específicos del contrato pueden diseñarse desde cero para servir a un caso de uso específico, los desarrolladores tienen una gran flexibilidad para adaptarlos a los requisitos específicos.


Oráculos humanos

A veces, las personas con conocimientos especializados en un campo particular también pueden servir como oráculos. Pueden investigar y verificar la autenticidad de la información de varias fuentes y traducir esa información a contratos inteligentes. Dado que los oráculos humanos pueden verificar su identidad mediante criptografía, la posibilidad de que un estafador falsifique su identidad y proporcione datos corruptos es relativamente baja.


El Problema del Oráculo

Dado que los contratos inteligentes ejecutan decisiones basadas en datos proporcionados por oráculos, son clave para un ecosistema de blockchain saludable. El principal desafío con el diseño de oráculos es que si el oráculo se ve comprometido, el contrato inteligente que se basa en él también se ve comprometido. Esto a menudo se conoce como el problema del oráculo

Dado que los oráculos no son parte del consenso principal de blockchain, desafortunadamente no son parte de los mecanismos de seguridad que las blockchains públicas pueden proporcionar. El conflicto de confianza entre oráculos de terceros y la ejecución sin confianza de contratos inteligentes sigue siendo un problema mayormente sin resolver.

Los ataques Man-in-the-middle también pueden ser una amenaza, donde un actor malicioso obtiene acceso al flujo de datos entre los oráculos y el contrato, y modifica o falsifica los datos.


En conclusión

Un mecanismo confiable que facilite la comunicación entre los contratos inteligentes y el mundo externo es vital para la adopción global de blockchains. Sin oráculos blockchain, los contratos inteligentes tendrían que depender solo de la información que ya está dentro de sus redes, lo que limitaría considerablemente sus capacidades.

Los oráculos descentralizados tienen el potencial de introducir mecanismos de salvaguarda que podrían eliminar muchos riesgos sistémicos del ecosistema blockchain. Los oráculos de Blockchain siguen siendo uno de los componentes básicos críticos que se implementarán de manera segura, confiable y sin confianza para que el ecosistema de blockchain crezca.