Como los tentáculos extendidos de la cadena de bloques, el oráculo construye un puente creíble entre el interior y el exterior de la cadena y crea una ecología de valor que se integra entre sí.
Título original: "Oracle - Tentacles of the Blockchain" Autor: Li Shijing, Gerente de Producto del Departamento de Plataforma Básica de Tecnología Qulian
En varios escenarios, como los seguros, las finanzas, la predicción aleatoria y el Internet de las cosas, la máquina del oráculo ha demostrado su valor insustituible en la cadena de bloques: como los tentáculos extendidos de la cadena de bloques, ha construido una red confiable entre la cadena y el exterior. Puentes de confianza para construir una ecología de valores que se integre entre sí.
Este artículo presentará el origen, la definición, el principio y el desarrollo de la máquina del oráculo.
Hablando de la función del oráculo, tiene mucha historia y mitología. No tiene nada que ver con Oracle. Se originó a partir del papel de "Oracle" en la mitología griega antigua. El oráculo puede comunicarse con los dioses en el Monte Olimpo, hacer predicciones. sobre el futuro, y transmitir la voluntad de Dios a las personas que rezan por el futuro, por lo que Oracle originalmente tenía el significado de "profeta"; en la teoría de la complejidad computacional y la computabilidad, la máquina oráculo es una especie de computadora abstracta, utilizada para estudiar determinista problemas. Puede verse como una máquina de Turing con una caja negra adjunta (profeta) cuya función es responder preguntas específicas dentro de una sola operación. De acuerdo con lo dado, el oráculo puede dar un "si" o un resultado de decisión de cálculo definitivo.
Creo que todo el mundo ha visto que en diferentes escenarios, la máquina del oráculo hará lo mismo: dar una entrada determinada a un sistema determinado en un momento determinado en el futuro. La máquina del oráculo en la cadena de bloques no es una excepción, e incluso se puede decir que es una combinación hecha en el cielo Su función simplemente resuelve un punto de dolor importante en la cadena de bloques: la certeza de entrada de fuentes de datos externas.
Figura 1: Múltiples significados de los oráculos
El volumen de transacciones de OpenSea superó los 30.000 millones de dólares estadounidenses: según Jinse Finance, según los últimos datos de Dapprader, el volumen de transacciones de OpenSea del mercado NFT superó los 30.000 millones de dólares estadounidenses, que era de 30.210 millones de dólares estadounidenses en el momento de escribir este artículo, y el número total de comerciantes fue 1.689.358. Los datos históricos muestran que el volumen de transacciones de la plataforma OpenSea superará los 10.000 millones de dólares estadounidenses en noviembre de 2021 y los 15.000 millones de dólares estadounidenses en enero de 2022, lo que significa que el volumen de transacciones ha aumentado aproximadamente un 200 % en medio año. [2022/5/20 3:31:20]
¿Por qué la cadena de bloques se preocupa tanto por la certeza de la entrada externa?
Debido a que en un sistema distribuido, es necesario garantizar la consistencia de los resultados finales de ejecución de múltiples nodos, para garantizar la operación estable del sistema, es extremadamente riesgoso para operaciones como números aleatorios y datos en tiempo real, por lo que el sacrificio de la cadena de bloques conducirá a resultados de ejecución inconsistentes Las necesidades de adquisición de datos dinámicos externos se convierten en un entorno de caja de arena cerrado y determinista.
En este entorno, los datos de la cadena se obtienen de forma pasiva (entrada en forma de transacciones), y la cadena de bloques no puede obtener nuevos datos de solicitudes externas durante la operación del contrato inteligente, y solo puede basarse en datos existentes en un nuevo los datos se generan de manera determinista, y los contratos inteligentes o las aplicaciones descentralizadas (DApps) en la cadena de bloques tienen fuertes requisitos de interacción para los datos externos, lo que crea una contradicción con el entorno de ejecución de los contratos inteligentes.
La máquina Oracle nació para resolver esta contradicción, y no se puede recibir una vez que se lanza. A través del middleware de la máquina Oracle, los contratos inteligentes pueden obtener activamente datos externos, y los tentáculos se pueden extender a sistemas comerciales tradicionales, sitios web públicos, dispositivos IoT. , computación fuera de la cadena, en términos de interoperabilidad cadena-cadena, ha logrado muchas cosas que no se podían hacer antes: obtener datos comerciales tradicionales, llamar a la información del sitio web público, seguimiento logístico expreso, compensación automática de seguros, obtener información de otras cadenas. .. Esto abrió la puerta a la imaginación.
Parece que la máquina Oracle no es nada especial, es solo una especie de middleware que llama a datos externos y luego los devuelve a la cadena de bloques, pero el ideal es muy simple y la realidad es muy delgada. encontrará que hay varias dificultades:
HT cayó por debajo de la marca de $4,5 con una caída intradiaria del 2,45 %: según datos de Huobi Global, HT cayó a corto plazo y cayó por debajo de la marca de $4,5, y ahora está en $4,4996, con una caída intradiaria del 2,45 %. en gran medida, por favor haga un buen trabajo en el control de riesgos. [2020/10/16]
¿Cómo garantizar que las fuentes de datos externas obtenidas sean auténticas y creíbles?
¿Cómo garantizar la seguridad de los datos durante la transmisión y el procesamiento?
Puntualidad, costo...?
En respuesta a los problemas anteriores, explicamos de acuerdo con el diagrama de flujo de la arquitectura de la máquina Oracle de la plataforma blockchain QuChain.
Figura 2: Diagrama del modelo de arquitectura de Oracle Machine
En primer lugar, el oráculo generalmente interactúa con el motor de ejecución como un módulo independiente de la cadena de bloques o como un servicio de terceros. La máquina Oracle solo es responsable de la adquisición creíble de datos y no participa directamente en la ejecución de transacciones. En primer lugar, el usuario inicia una solicitud de servicio para la máquina Oracle en forma de llamada de contrato (la solicitud de servicio de la máquina Oracle también se puede iniciar a través de un servicio de interfaz API especial, etc.), llamando a una interfaz de contrato integrada ( interfaz "Oracle Machine Service" en la figura), para informar al motor de ejecución de la cadena de bloques que el usuario desea ejecutar una transacción con el servicio de Oracle.
En segundo lugar, el motor de ejecución detecta una solicitud de servicio para Oracle durante la ejecución y la reenvía al módulo de Oracle a través del componente de comunicación interna. Esta solicitud encapsulará cierta información sobre la solicitud de fuentes de datos externas, como una solicitud de datos web, que contendrá URL común, encabezados HTTP y otra información.
En tercer lugar, después de recibir la solicitud de servicio, la máquina Oracle inicia una solicitud de adquisición de datos a la fuente de datos externa y usa el generador de transacciones para generar una nueva transacción de devolución de llamada interna después de recibir los datos y la firma (este proceso usa TEE, etc. La tecnología de hardware garantiza la seguridad y no puede ser manipulada).
La salida neta de fondos en 24 horas de BUSD es de 86,1105 millones de yuanes: los datos de seguimiento de Jinse Finance muestran que los tres principales en las salidas netas en 24 horas del mercado de criptomonedas son [2020/10/9]
Finalmente, la máquina Oracle envía la transacción de devolución de llamada al motor de ejecución para realizar una serie de operaciones en la organización, administración, almacenamiento, etc. de los datos adquiridos. En este punto, finaliza un proceso completo de ejecución de transacciones de cadena de bloques que incluye el servicio de la máquina Oracle.
De acuerdo con el proceso del ciclo de vida anterior, discutimos las preguntas al principio una por una:
Esta es la pregunta central en el proceso de usar la máquina del oráculo La respuesta es que no hay credibilidad absoluta, solo credibilidad relativa. Durante el proceso de diseño, restringimos principalmente la certificación de la fuente de datos, el proceso estándar de adquisición de datos y el formato de datos unificado:
Selección de fuente de datos y certificación de confianza. El oráculo necesita seleccionar cuidadosamente las fuentes de datos externas. Debe asegurarse de que cada fuente de datos externa seleccionada pueda verificarse para que sea creíble. Por ejemplo, para la adquisición de datos web, la fuente de datos seleccionada debe tener un certificado.
Proceso estándar de adquisición de datos. Los desarrolladores deben ejecutar claramente el proceso de intercambio de datos de motores, usuarios, fuentes de datos externas y oráculos, y deben poder unificar o distinguir claramente el proceso de interacción de datos para diferentes tipos de fuentes de datos para garantizar que el esquema de interacción se pueda ejecutar e implementar.
Definición unificada del formato de interacción de datos. Los diferentes tipos de fuentes de datos tienen diferentes formatos de interacción de datos. Los formatos de datos adquiridos por los sensores como fuentes de datos y la Web como fuentes de datos son diferentes. Para diferentes situaciones, se define una capa unificada de codificación y decodificación de datos para admitir diferentes fuentes de datos. solicitar e interpretar la datos.
El oráculo logra garantías confiables para los datos en curso a través de dos etapas.
Los datos se transfieren desde Internet al área local mediante el protocolo HTTPS (la capa subyacente utiliza el protocolo TLS) para garantizar la exactitud e integridad de la conexión y los datos.
Los datos se transfieren del local a la cadena, y Oracle Machine adopta la tecnología Trusted Execution Environment (TEE) TEE es un área segura en la CPU y funciona independientemente del sistema operativo, lo que puede garantizar la confidencialidad y confiabilidad de los datos. proceso de procesamiento Bloque FunChain La plataforma de la cadena ha desarrollado una implementación TEE basada en SGX y una implementación TEE basada en chips domésticos para proteger la seguridad del oráculo.
El procesamiento de la interacción de datos fuera de la cadena aumentará en términos de credibilidad de la fuente de datos, credibilidad de la máquina de Oracle y complejidad del procesamiento en comparación con la cadena interna. Sin embargo, la diferencia en la credibilidad en escenarios reales afectará seriamente el rendimiento de la máquina de Oracle. y coste de realización. En la cadena pública, el multipartito predeterminado es completamente poco confiable, por lo que el procesamiento de agregación, las reglas de consenso, el mecanismo de recompensa y castigo y el sistema de reputación se realizarán a través del modelo de múltiples oráculos para lograr el efecto de aumentar el costo de hacer el mal. lo que sin duda aumenta la complejidad de la realización de funciones; en el escenario de la cadena del consorcio, el escenario de uso de la máquina oracle es relativamente creíble y cerrado, y la credibilidad de los nodos institucionales es alta. Una sola máquina oracle tiene alta eficiencia y bajo costo, pero hay un problema de un solo punto de mal, por lo que debe adaptarse a las condiciones locales durante el uso Seleccione el método de implementación más adecuado de acuerdo con el escenario específico.
Hay dos tipos de máquinas de Oracle en el mercado: máquinas de Oracle centralizadas y máquinas de Oracle descentralizadas.
Debido a su idea de centralización, la máquina oracle centralizada necesita introducir una institución de confianza de terceros, como un país o una gran empresa que pueda brindar respaldo, y el método de verificación también es a través de la verificación independiente por parte de un tercero.
Tomando como ejemplo el proyecto de oráculo Oraclize, como un oráculo centralizado, la transmisión confiable de datos web se realiza a través del protocolo TLS (Transport Layer Security) y se combina con Intel SGX (Intel Software Guard Extension) para garantizar que los datos no puedan ser manipulado localmente, Oraclize proporciona a los usuarios una interfaz API. Los usuarios solo necesitan llamar a la interfaz de contrato prediseñada para usar el servicio de Oracle para obtener datos externos.
Dado que Oraclize es una máquina Oracle centralizada, como módulo independiente de un solo punto, dicha implementación tiene la ventaja de un alto rendimiento, pero también tiene el riesgo de fallas en un solo punto y dificultad en la expansión, y la idea de centralización y la descentralización de la cadena de bloques Hay algunas ideas que se oponen entre sí. La mayoría de las principales cadenas de alianzas nacionales, la plataforma de cadena de bloques QuChain y AntChain, etc., utilizan principalmente la implementación de máquinas de Oracle centralizadas.
Los oráculos descentralizados se adhieren a los mismos principios de descentralización que las cadenas de bloques y, por lo general, utilizan firmas múltiples o algoritmos distribuidos para garantizar la exactitud y coherencia de los datos. No es necesario introducir organizaciones de terceros, pero será más difícil de implementar. El rendimiento también puede ser un cuello de botella.
Tomando Chainlink como ejemplo, ha establecido una red de datos descentralizada, cada máquina Oracle es un nodo en la red y su arquitectura se divide en componentes dentro y fuera de la cadena. Los componentes de la cadena son responsables de interactuar con los usuarios, recopilar y responder a las solicitudes de los usuarios, mientras que los componentes fuera de la cadena son la red de datos mencionada anteriormente para manejar la adquisición y transmisión de datos.
En esta arquitectura, debido a que Chainlink es una red de datos distribuidos, puede evitar el problema del punto único de falla, pero también, debido a la mayor demanda de coherencia de datos distribuidos, su rendimiento y la dificultad de implementación se han convertido en nuevos problemas.
Por el contrario, la máquina de Oracle centralizada es responsable de la adquisición de datos por parte de una sola máquina, que debe introducir una organización de confianza de terceros, mientras que la máquina de Oracle descentralizada es paralela a varias máquinas, y la consistencia se garantiza a través de la verificación mutua. Por lo tanto, la máquina de Oracle centralizada es adecuada para escenarios con altos requisitos de tiempo real y alta confiabilidad, y la experiencia del usuario es mejor; mientras que la máquina de Oracle descentralizada es todo lo contrario.
Desde un punto de vista funcional, la función de Oracle Machine es relativamente pura, principalmente para resolver el problema de la conexión confiable de datos dentro y fuera de la cadena de bloques. Para diferentes escenarios de confianza, el oráculo también proporciona servicios de dos maneras, centralizados y descentralizados.
Desde la perspectiva de los escenarios de aplicación, los datos fuera de la cadena son una gran ecología, y las máquinas Oracle se pueden aplicar a múltiples escenarios, como información de sitios web públicos, seguimiento de logística, pago automático de seguros y obtención de información entre cadenas. El desarrollo de oráculos depende del desarrollo de la tecnología blockchain/smart contract por un lado, y por otro lado, ayuda a la extensión comercial de blockchain/smart contracts.Con la expansión de la escala ecológica de blockchain en finanzas, seguros, Internet de las cosas y otras industrias, también vale la pena esperar el futuro valor ecológico de la máquina Oracle.
Desde un punto de vista comercial, el modelo de Oracle es similar a un proveedor de servicios de datos. El modelo de negocios del Oracle centralizado es esencialmente una plataforma de servicios de datos, mientras que el Oracle descentralizado es un ecosistema de servicios de datos diverso. La dirección de desarrollo de los dos Cada uno tiene sus propios méritos.
Tags:
La "zambullida 519" vertió agua fría en el feroz mercado de la encriptación.
El argumento a favor de la centralización de ETH ha sido utilizado durante mucho tiempo por inversores de Bitcoin bien informados, como Preston Pysh y Lyn Alden.
Hoy en día, los tokens DeFi se pueden dividir en gran medida en dos categorías: "tokens productivos" y "tokens no productivos". Los tokens DeFi no productivos se refieren a esos típicos "tokens de gobierno sin valor".
Como los tentáculos extendidos de la cadena de bloques.
Después de superar el desafío técnico más difícil.
Cómo explicar racionalmente las enormes fluctuaciones de precios en el mercado de Bitcoin sigue siendo un desafío constante para los inversores e investigadores del mercado de Bitcoin.
Loco dice Estados Unidos y Rusia han iniciado una nueva ronda de competencia económica. Primero, Estados Unidos bloqueó su propia inversión en bonos del gobierno ruso denominados en euros y rublos. Luego.