第1課

Introducción a los Oráculos de Ethereum (Oráculos de Ethereum)

Bienvenido a este curso. Al comenzar este viaje para explorar el mundo de los oráculos de Ethereum, aprenderás cómo las redes blockchain se comunican con el mundo exterior. Los oráculos son como un puente que conecta la certeza de los contratos inteligentes con la realidad siempre cambiante del mundo real. El objetivo de este curso es descifrar las complejidades detrás de los oráculos y hacer que sean más fáciles de entender y abordar.

¿Cuál es el significado de Oráculos (Oráculos)?

La red descentralizada de Ethereum y sus contratos inteligentes están completamente aislados del mundo real. Este aislamiento garantiza consistencia, seguridad e integridad. Sin embargo, esto también plantea una limitación: estos contratos inteligentes no pueden acceder ni validar datos externos por sí mismos. Entonces, ¿qué sucede si la ejecución de un contrato depende del precio actual del oro, las condiciones climáticas en una ciudad en particular o los resultados de una elección?

Los oráculos llenan este vacío. Como mensajeros, recopilan, validan y entregan información del mundo real a contratos inteligentes, ampliando así el rango de posibilidades para aplicaciones descentralizadas.

Imagina la siguiente situación:

Solidity//Un contrato inteligente simulado sigue el contrato de datos externos GoldPriceBet { Oracle OracleInstance;//Una instancia de Oracle de la instancia de tiempo real de oro dirección del apostador; uint256 cantidad de apuesta; Function placeGoldPriceBet (uint PredictedPrice) external payable {        apostador = msg.sender;        cantidad de apuesta = msg.value;        // Aquí, típicamente invocaríamos al oráculo para obtener el precio actual del oro    }}

Comentarios del código:

  • OracleOracleInstance;Este es un marcador para nuestroGoldPriceBetcontrato para interactuar con obtener el precio actual del oro (contrato Oracle).
  • La La función placeGoldPriceBet permite a los usuarios realizar apuestas para predecir el preciode oro. Idealmente, después de realizar una apuesta, se llamaría a los oráculos para obtener el precio en tiempo real del oro y determinar los resultados.

Diversos ecosistemas de oráculos

En términos generales, los oráculos se dividen en dos categorías principales:

Oráculos centralizados

Operados por una sola entidad u organización, los oráculos centralizados son eficientes y pueden obtener datos rápidamente. Su talón de Aquiles, sin embargo, es la confianza. La ejecución de los contratos inteligentes depende de la integridad de esta entidad centralizada. Los datos manipulados o erróneos pueden dar lugar a resultados inesperados.

Oráculos descentralizados

Con el fin de mitiGate.io las deficiencias de los sistemas centralizados, han surgido oráculos descentralizados. Aquí, una red de múltiples oráculos proporciona datos. Un contrato inteligente puede utilizar un método de agregación, como un promedio o una mediana, para llegar a un valor. Al descentralizar las fuentes de datos, estos oráculos reducen el riesgo asociado con la manipulación humana o los puntos únicos de fallo.

Solidity//Un contrato inteligente ilustrativo que aprovecha un marco Oracle flexiblecontract CommodityPriceFeed { Oracle descentralizado [] OracleArray;//Un array de oráculos descentralizados function deriveAveragePrice () external view returns (uint256) { uint256 cumulativeValue = 0; for (uint i = 0; i < oracleArray.length; i++) {            cumulativeValue += oracleArray[i].fetchPrice();        } return cumulativeValue/ oracleArray.length;    }}

Comentarios sobre el código:

  • DecentralizedOracle [] OracleArray; this is an array that stores multiple instances of oráculos descentralizados.
  • ElcalcularPrecioPromedioLa función calcula el precio promedio obtenido de todos los oráculos en OracleArray. Recorre cada uno de los oráculos, obtiene el precio y luego lo divide por el número de oráculos para obtener el promedio.

Aplicaciones de oráculos del mundo real

Las posibles aplicaciones de los oráculos son muy amplias y diversas:

  • Derivados financieros: Los instrumentos financieros, como las opciones, requieren acceso a los precios de los activos del mundo real para ejecutar contratos.
  • Seguro inteligente: Imagina un contrato inteligente de seguro de viaje que compense automáticamente a los usuarios cuando un vuelo se retrasa. Estos datos provienen de un remolque de aviación.
  • Verificación de la cadena de suministro: Al introducir datos externos en la cadena de bloques, es posible realizar un seguimiento de los productos en tiempo real desde la fabricación hasta la entrega al cliente.
  • Juegos descentralizados: Los juegos en línea basados en blockchain pueden utilizar oráculos para influir en los resultados del juego basados en eventos del mundo real, como los resultados de los partidos deportivos.
    Más información sobre los oráculos: ¿Qué es un Oracle en Blockchain?

Derivados financieros y plataformas de trading

Las plataformas financieras requieren información en tiempo real sobre los precios de los activos, las tasas de interés u otros indicadores económicos. Las plataformas descentralizadas de derivados utilizan oráculos para garantizar que los contratos, como futuros y opciones, se liquiden en función de datos de mercado precisos y a prueba de manipulaciones.

SoliditySolidityCódigo de copia//Un ejemplo de contrato inteligente para una opción convenientecontrato DecentralizedOption { Oracle PriceOracle; uint256 strikePrice = 1000;//Valor de ejemplo función exerciseOption () externa { uint256 currentPrice = priceOracle.fetchCurrentPrice (); if (currentPrice strikePrice>) { // Lógica para ejercer la opción }}}

Comentarios de código:

  • La Opción Descentralizadael contrato interactúa con los oráculos para obtener el precio actual.
  • Cuando un usuario ejerce una opción, el contrato verifica el precio actual frente a un precio de ejecución predefinido para determinar el resultado.

Seguro inteligente

Los oráculos han promovido el desarrollo de plataformas de seguros descentralizadas, proporcionando datos como los patrones climáticos requeridos para el seguro de cosechas, las condiciones de vuelo requeridas para el seguro de viaje o la actividad sísmica requerida para el seguro contra terremotos.

contrato de seguro de retraso de vuelo Solidity { Oracle FlightStatusOracle; función claimInsurance (string flightNumber) externa { string status = flightstatusOracle.getFlightStatus (flightNumber);        if (strcmp (status, " Delayed") == 0) {            // Lógica para compensar al asegurado        }    }}

Comentarios de código:

  • Seguro de retraso de vuelolos contratos utilizan oráculos para obtener el estado de vuelo.
  • Dependiendo del estado del vuelo, indemnizará al asegurado si el vuelo se retrasa.

Verificación de la cadena de suministro

Para soluciones descentralizadas de cadena de suministro, los oráculos pueden proporcionar datos verificables en cada etapa, desde la adquisición de materias primas hasta la entrega del producto, para garantizar la autenticidad del producto y la adquisición ética.

contrato de SoliditysupplyChainTracker { Oráculo LocationOracle; dirección ProductOwner; función verifyProductLocation (dirección ProductID) externa vista devuelve (cadena memoria) {        return locationOracle.fetchProductLocation(productID);    }}

Comentarios de código:

  • Este contrato utiliza oráculos para obtener la ubicación de los productos en cualquier etapa de la cadena de suministro.
  • Se puede utilizar para hacer un seguimiento de productos y verificar su origen y ruta.

Juegos descentralizados

Los juegos que integran eventos del mundo real, como los resultados de eventos deportivos o los movimientos del mercado de valores, se pueden construir de manera descentralizada mediante el uso de oráculos para obtener los datos necesarios.

SolidityContract SportsBet { Oracle SportsResultOracle; Function placeBet (string teamName) external payable {        // Lógica para realizar una apuesta    } function resolveBet () external {        string winningTeam = sportsResultOracle.getMatchResult();        // Lógica para recompensar a los ganadores basada en el resultado    }}

Comentarios de código:

  • SportsBetpermite a los usuarios realizar apuestas sobre los resultados de eventos deportivos.
  • Luego interactúa con los oráculos para obtener los resultados del partido y resolver las apuestas en consecuencia.
    Ahora tenemos una exploración preliminar del mundo de los oráculos de Ethereum. En cursos posteriores, nos adentraremos en las complejidades de integrar oráculos con contratos inteligentes. Si el contenido te hace sentir muy emocionado, mantén tu entusiasmo por aprender. ¡Porque el mundo de los datos descentralizados nos está llamando!
免責聲明
* 投資有風險,入市須謹慎。本課程不作為投資理財建議。
* 本課程由入駐Gate Learn的作者創作,觀點僅代表作者本人,絕不代表Gate Learn讚同其觀點或證實其描述。
目錄
第1課

Introducción a los Oráculos de Ethereum (Oráculos de Ethereum)

Bienvenido a este curso. Al comenzar este viaje para explorar el mundo de los oráculos de Ethereum, aprenderás cómo las redes blockchain se comunican con el mundo exterior. Los oráculos son como un puente que conecta la certeza de los contratos inteligentes con la realidad siempre cambiante del mundo real. El objetivo de este curso es descifrar las complejidades detrás de los oráculos y hacer que sean más fáciles de entender y abordar.

¿Cuál es el significado de Oráculos (Oráculos)?

La red descentralizada de Ethereum y sus contratos inteligentes están completamente aislados del mundo real. Este aislamiento garantiza consistencia, seguridad e integridad. Sin embargo, esto también plantea una limitación: estos contratos inteligentes no pueden acceder ni validar datos externos por sí mismos. Entonces, ¿qué sucede si la ejecución de un contrato depende del precio actual del oro, las condiciones climáticas en una ciudad en particular o los resultados de una elección?

Los oráculos llenan este vacío. Como mensajeros, recopilan, validan y entregan información del mundo real a contratos inteligentes, ampliando así el rango de posibilidades para aplicaciones descentralizadas.

Imagina la siguiente situación:

Solidity//Un contrato inteligente simulado sigue el contrato de datos externos GoldPriceBet { Oracle OracleInstance;//Una instancia de Oracle de la instancia de tiempo real de oro dirección del apostador; uint256 cantidad de apuesta; Function placeGoldPriceBet (uint PredictedPrice) external payable {        apostador = msg.sender;        cantidad de apuesta = msg.value;        // Aquí, típicamente invocaríamos al oráculo para obtener el precio actual del oro    }}

Comentarios del código:

  • OracleOracleInstance;Este es un marcador para nuestroGoldPriceBetcontrato para interactuar con obtener el precio actual del oro (contrato Oracle).
  • La La función placeGoldPriceBet permite a los usuarios realizar apuestas para predecir el preciode oro. Idealmente, después de realizar una apuesta, se llamaría a los oráculos para obtener el precio en tiempo real del oro y determinar los resultados.

Diversos ecosistemas de oráculos

En términos generales, los oráculos se dividen en dos categorías principales:

Oráculos centralizados

Operados por una sola entidad u organización, los oráculos centralizados son eficientes y pueden obtener datos rápidamente. Su talón de Aquiles, sin embargo, es la confianza. La ejecución de los contratos inteligentes depende de la integridad de esta entidad centralizada. Los datos manipulados o erróneos pueden dar lugar a resultados inesperados.

Oráculos descentralizados

Con el fin de mitiGate.io las deficiencias de los sistemas centralizados, han surgido oráculos descentralizados. Aquí, una red de múltiples oráculos proporciona datos. Un contrato inteligente puede utilizar un método de agregación, como un promedio o una mediana, para llegar a un valor. Al descentralizar las fuentes de datos, estos oráculos reducen el riesgo asociado con la manipulación humana o los puntos únicos de fallo.

Solidity//Un contrato inteligente ilustrativo que aprovecha un marco Oracle flexiblecontract CommodityPriceFeed { Oracle descentralizado [] OracleArray;//Un array de oráculos descentralizados function deriveAveragePrice () external view returns (uint256) { uint256 cumulativeValue = 0; for (uint i = 0; i < oracleArray.length; i++) {            cumulativeValue += oracleArray[i].fetchPrice();        } return cumulativeValue/ oracleArray.length;    }}

Comentarios sobre el código:

  • DecentralizedOracle [] OracleArray; this is an array that stores multiple instances of oráculos descentralizados.
  • ElcalcularPrecioPromedioLa función calcula el precio promedio obtenido de todos los oráculos en OracleArray. Recorre cada uno de los oráculos, obtiene el precio y luego lo divide por el número de oráculos para obtener el promedio.

Aplicaciones de oráculos del mundo real

Las posibles aplicaciones de los oráculos son muy amplias y diversas:

  • Derivados financieros: Los instrumentos financieros, como las opciones, requieren acceso a los precios de los activos del mundo real para ejecutar contratos.
  • Seguro inteligente: Imagina un contrato inteligente de seguro de viaje que compense automáticamente a los usuarios cuando un vuelo se retrasa. Estos datos provienen de un remolque de aviación.
  • Verificación de la cadena de suministro: Al introducir datos externos en la cadena de bloques, es posible realizar un seguimiento de los productos en tiempo real desde la fabricación hasta la entrega al cliente.
  • Juegos descentralizados: Los juegos en línea basados en blockchain pueden utilizar oráculos para influir en los resultados del juego basados en eventos del mundo real, como los resultados de los partidos deportivos.
    Más información sobre los oráculos: ¿Qué es un Oracle en Blockchain?

Derivados financieros y plataformas de trading

Las plataformas financieras requieren información en tiempo real sobre los precios de los activos, las tasas de interés u otros indicadores económicos. Las plataformas descentralizadas de derivados utilizan oráculos para garantizar que los contratos, como futuros y opciones, se liquiden en función de datos de mercado precisos y a prueba de manipulaciones.

SoliditySolidityCódigo de copia//Un ejemplo de contrato inteligente para una opción convenientecontrato DecentralizedOption { Oracle PriceOracle; uint256 strikePrice = 1000;//Valor de ejemplo función exerciseOption () externa { uint256 currentPrice = priceOracle.fetchCurrentPrice (); if (currentPrice strikePrice>) { // Lógica para ejercer la opción }}}

Comentarios de código:

  • La Opción Descentralizadael contrato interactúa con los oráculos para obtener el precio actual.
  • Cuando un usuario ejerce una opción, el contrato verifica el precio actual frente a un precio de ejecución predefinido para determinar el resultado.

Seguro inteligente

Los oráculos han promovido el desarrollo de plataformas de seguros descentralizadas, proporcionando datos como los patrones climáticos requeridos para el seguro de cosechas, las condiciones de vuelo requeridas para el seguro de viaje o la actividad sísmica requerida para el seguro contra terremotos.

contrato de seguro de retraso de vuelo Solidity { Oracle FlightStatusOracle; función claimInsurance (string flightNumber) externa { string status = flightstatusOracle.getFlightStatus (flightNumber);        if (strcmp (status, " Delayed") == 0) {            // Lógica para compensar al asegurado        }    }}

Comentarios de código:

  • Seguro de retraso de vuelolos contratos utilizan oráculos para obtener el estado de vuelo.
  • Dependiendo del estado del vuelo, indemnizará al asegurado si el vuelo se retrasa.

Verificación de la cadena de suministro

Para soluciones descentralizadas de cadena de suministro, los oráculos pueden proporcionar datos verificables en cada etapa, desde la adquisición de materias primas hasta la entrega del producto, para garantizar la autenticidad del producto y la adquisición ética.

contrato de SoliditysupplyChainTracker { Oráculo LocationOracle; dirección ProductOwner; función verifyProductLocation (dirección ProductID) externa vista devuelve (cadena memoria) {        return locationOracle.fetchProductLocation(productID);    }}

Comentarios de código:

  • Este contrato utiliza oráculos para obtener la ubicación de los productos en cualquier etapa de la cadena de suministro.
  • Se puede utilizar para hacer un seguimiento de productos y verificar su origen y ruta.

Juegos descentralizados

Los juegos que integran eventos del mundo real, como los resultados de eventos deportivos o los movimientos del mercado de valores, se pueden construir de manera descentralizada mediante el uso de oráculos para obtener los datos necesarios.

SolidityContract SportsBet { Oracle SportsResultOracle; Function placeBet (string teamName) external payable {        // Lógica para realizar una apuesta    } function resolveBet () external {        string winningTeam = sportsResultOracle.getMatchResult();        // Lógica para recompensar a los ganadores basada en el resultado    }}

Comentarios de código:

  • SportsBetpermite a los usuarios realizar apuestas sobre los resultados de eventos deportivos.
  • Luego interactúa con los oráculos para obtener los resultados del partido y resolver las apuestas en consecuencia.
    Ahora tenemos una exploración preliminar del mundo de los oráculos de Ethereum. En cursos posteriores, nos adentraremos en las complejidades de integrar oráculos con contratos inteligentes. Si el contenido te hace sentir muy emocionado, mantén tu entusiasmo por aprender. ¡Porque el mundo de los datos descentralizados nos está llamando!
免責聲明
* 投資有風險,入市須謹慎。本課程不作為投資理財建議。
* 本課程由入駐Gate Learn的作者創作,觀點僅代表作者本人,絕不代表Gate Learn讚同其觀點或證實其描述。