¿Cuál es la definición del Problema de Oracle exacta y brevemente?

¿Cuál es la definición del Problema de Oracle exacta y brevemente? ¿Significa " confiar en un Oracle centralizado "? O "¿Cómo llegar a un consenso entre un grupo de oráculos "? ¿Se trata de " centralización " o de "basarse en la confianza "? (Eso es contrario a la función de descentralización de blockchain).

Respuestas (3)

El problema del oráculo es:

"Si los oráculos permiten que se importen datos corruptos en la cadena, los contratos inteligentes de ejecución automática pueden tener efectos desastrosos"


Una vez que los datos se informan a una cadena de bloques, esos datos ahora son una parte inmutable de la historia de la cadena de bloques. Si un contrato inteligente se ejecuta incorrectamente en función de esos datos, su contrato no solo no está haciendo lo que estaba destinado a hacer, sino que puede causar daños irreparables.

Entonces, cuando pregunta si significa "confiar en un oráculo centralizado" o "cómo llegar a un consenso entre un grupo de oráculos", la respuesta a ambos es sí. Desea descubrir cómo llevar datos a la cadena sin tener que centralizar ninguna pieza para que pueda tener contratos inteligentes descentralizados.

Si sus datos están centralizados (provenientes de una fuente) y esa fuente es sobornada, pirateada, rota o depreciada, su contrato ya no funciona.

La solución al problema del oráculo es tener una red descentralizada de oráculos que traiga diferentes fuentes independientes de datos en cadena. Hemos visto a Chainlink resolver este problema.

Blockchain es un jardín amurallado.

También se describe como el problema de poner el estado del mundo real en el estado de la cadena de bloques.

Los datos solo son confiables una vez que se han ingresado en la cadena de bloques.

Sin embargo, todavía tenemos que confiar en los valores que se han puesto en un principio.

Por ejemplo:

  1. Tengo un contrato inteligente que incorpora el tipo de cambio actual eth/usd. Haría una llamada API en el lado del cliente e ingresaría el resultado como un parámetro para mi función de contrato inteligente.
  2. Si la API falla o es incorrecta, mi contrato inteligente también se ejecutará de una manera que quizás no desee.
  3. Por lo tanto, obtendríamos los mismos datos de al menos 3 fuentes diferentes. Si 2/3 están dentro de un mismo rango de error realmente estrecho, es probable que tenga una fuente de datos confiable.

El problema del oráculo establece que "tan pronto como haga que un contrato inteligente se base en un único oráculo central , habrá sacrificado por completo los beneficios de la descentralización". (Ver aquí ). Es una cuestión de centralización, ya que los oráculos son generalmente una única fuente de verdad.

El problema también radica en múltiples capas. La capa de Oracle en sí misma es generalmente una entidad centralizada que proporciona datos a un contrato inteligente. Un solo empleado deshonesto puede tener el poder de falsificar los datos de entrada de un contrato inteligente si lo encuentra económicamente incentivador. La capa de datos también puede ser una capa centralizada. Imagine un contrato inteligente usando Oraclize para obtener un número aleatorio de random.org. Un actor malicioso con acceso al código fuente de random.org podría introducir un número conocido en el sitio, que sería recogido por Oraclize y enviado al contrato inteligente. Este actor ahora puede realizar una transacción en el contacto inteligente del que conoce el resultado.

Se está investigando mucho en esta área para resolver este problema. Una posible solución es utilizar oráculos de consenso que deben estar de acuerdo con un dato para que se propague a la red. Esto se puede amplificar requiriendo que estos miembros apuesten algún token, dándoles un incentivo económico para elegir correctamente (si van en contra de la multitud, pierden su apuesta).