En una cadena de bloques, todos los participantes de la cadena establecen un sistema de confianza con la ayuda del mecanismo de consenso de la cadena de bloques. Entonces, la pregunta es, en el escenario de cadenas cruzadas de múltiples cadenas de bloques, ¿cómo transferir la confianza entre cadenas? ¿Cuál es la confianza entre las cadenas? ¿Cómo establecer este tipo de confianza entre cadenas?
Permítanme hablar sobre la conclusión primero: la confianza entre cadenas se basa en confiar en el mecanismo de ejecución de la otra cadena, y la confianza es el resultado de la ejecución que se ajusta al mecanismo de ejecución.
La razón de esto tiene que empezar con el funcionamiento básico de la cadena cruzada.
La operación básica de la cadena cruzada es: la cadena local puede realizar otra operación solo después de que la cadena de la contraparte complete una operación. Como se muestra en la siguiente figura: después de que la cadena de bloques A ejecuta con éxito la operación X, la cadena de bloques B ejecuta la operación Y. La operación X es un requisito previo para la ejecución de la operación Y.
En la operación anterior, se firma una solicitud X y se convierte en una transacción enviada a la cadena de bloques A, y se genera un bloque a través del consenso de la cadena de bloques A. El bloque contiene información como el encabezado del bloque y la lista de transacciones, y el encabezado del bloque contiene la información del resultado del consenso. La información anterior se puede denominar colectivamente como el resultado de la ejecución de la cadena de bloques, y el proceso específico se muestra en la siguiente figura:
El protocolo de enrutamiento de cadena cruzada Multichain ahora ha integrado Coinbase Wallet: el 5 de febrero, el protocolo de enrutamiento de cadena cruzada Multichain ahora ha integrado Coinbase Wallet. Los usuarios pueden encadenar activos principales a través de Coinbase Wallet entre Ethereum, BSC, Fantom, Arbitrum, Optimism, Avalanche, Polygon y xDAI. Actualmente, Multichain admite una variedad de billeteras, incluidas MetaMask, OKEx, Coin98, BitKeep y CoinbaseWallet. [2022/2/7 9:34:40]
El resultado de la ejecución de la cadena de bloques A se envía a la cadena de bloques B. Antes de que blockchain B ejecute la solicitud Y, primero debe determinar si X está en la cadena.
El método de juicio consiste en verificar si los resultados de ejecución relacionados con la cadena de bloques A y X son válidos en el entorno operativo de la cadena de bloques B. Si se pasa la verificación, significa que X se ha cargado en la cadena y la cadena de bloques B puede continuar realizando los siguientes pasos: enviar una solicitud Y para que se cargue en la cadena en la cadena de bloques B.
Cabe señalar que esta operación se basa en la premisa de que la cadena de bloques B debe confiar en el mecanismo de ejecución de la cadena de bloques A. El resultado de ejecución correcto en la cadena de bloques A representa los deseos de todas las partes en la cadena de bloques A. Para verificar si una determinada transacción en la cadena de bloques A es válida, la cadena de bloques B debe confiar en el mecanismo de ejecución de la cadena de bloques A y verificar el resultado de la ejecución de la cadena de bloques A de acuerdo con el mecanismo de ejecución de la cadena de bloques A antes de juzgar la cadena de bloques. A se ha subido a la cadena.
Ren Protocol y Varen Finance anunciaron que desarrollarán conjuntamente una infraestructura de cadena cruzada: el 18 de enero, según noticias oficiales, Ren Protocol, un protocolo de activos de cadena cruzada, anunció que desarrollará una infraestructura de cadena cruzada conjuntamente con Varen Finance, una protocolo DeFi de cadena cruzada. Los dos equipos cooperarán en profundidad y compartirán recursos. Varen será el primero en obtener el nuevo código RenJS; y asumirá parte de la responsabilidad de desarrollo front-end de los productos Ren, y formulará una estrategia de liquidez entre cadenas centrada en Ren.
El objetivo de esta colaboración es crear herramientas e infraestructura para cadenas cruzadas y, en el futuro, desarrollar una capa de interoperabilidad que permita el acceso a la liquidez entre cadenas. [2022/1/18 8:56:23]
Se puede ver que en todo el proceso, el paso central es establecer la confianza entre cadenas al verificar el resultado de la ejecución de la cadena de la otra parte para determinar si la solicitud está en la cadena. Por tanto, la confianza entre cadenas se basa en la premisa de confiar en el mecanismo de ejecución de la otra cadena, y la confianza es el resultado de la ejecución que se ajusta al mecanismo de ejecución.
Aunque los resultados de ejecución se implementan de diferentes maneras en diferentes cadenas de bloques, siempre son los mismos. La estructura de datos central de la cadena de bloques es una estructura de cadena con bloques como unidad, y las transacciones existen en los bloques (este artículo no analiza el DAG formar cadena de bloques).
Por lo tanto, podemos dividir la verificación de los resultados de ejecución en las siguientes cuatro capas:
El protocolo descentralizado de transacciones entre cadenas Anyswap multi-chain router v3 fue atacado, y el grupo de fondos entre cadenas perdió alrededor de 8 millones de dólares estadounidenses: según noticias oficiales, el protocolo descentralizado de transacciones entre cadenas Anyswap anunció que el Anyswap multi-chain Se lanzó la versión v3 del enrutador en Beijing. Fue atacado a las 4 am del 11 de julio y el grupo de fondos de cadena cruzada v3 se vio afectado, con una pérdida de 2.4 millones de USDC y 5.5 millones de MIM, por un total de aproximadamente 8 millones de dólares estadounidenses. El equipo de Anyswap declaró que las versiones Anyswapv1 y v2 no se ven afectadas por el ataque, y el puente de cadena cruzada no se ve afectado. El equipo de Anyswap compensará la pérdida. Después de que el grupo de capital de cadena cruzada v3 reinyecta liquidez, los usuarios puede retirar dinero de ella. [2021/7/12 0:43:53]
Verificar la continuidad del bloque: al comienzo de la verificación, es necesario confirmar la fuente de los datos.Basándose en la continuidad de la cadena de bloques, verifique si el bloque pertenece a la cadena de bloques especificada, para evitar que los atacantes falsifiquen con bloques de cualquier cadena de bloques.
Verificar el consenso del bloque: después de confirmar la fuente, es necesario verificar si el bloque representa la voluntad general de la otra cadena. Este paso verifica si la información de consenso del bloque cumple con los requisitos, evitando que los atacantes falsifiquen con bloques sin consenso.
Verificar la existencia de transacciones: Después de verificar que el bloque es legal, es necesario verificar si la transacción especificada pertenece a este bloque. Las diferentes cadenas tienen diferentes métodos de verificación, que se describirán en la siguiente sección.
Verifique que la transacción sea correcta: después de verificar la existencia de la transacción, no significa que la transacción sea realmente la operación esperada en el escenario de cadena cruzada. También es necesario combinar el escenario comercial para juzgar si el contenido específico de la transacción cumple con las expectativas.
STP2.0 lanzará Polkadot Moonbeam y traerá el índice de cadenas cruzadas: la versión 2.0 del Protocolo de tokenización estándar (STP) lanzará Polkadot Moonbeam, centrándose en el campo de los activos sintéticos, promoviendo la tokenización de cadenas cruzadas y el índice de cadenas múltiples. (Cryptobriefing) [2021/1/28 14:15:53]
Solo a través de las cuatro capas anteriores se puede pasar la verificación. Una vez que se pasa la verificación, significa que la operación se cargó en la otra cadena y la cadena local puede realizar los siguientes pasos.
La verificación de cuatro capas mencionada en la sección anterior tiene diferentes métodos de implementación en diferentes cadenas de bloques. El marco de complemento de WeCross define una interfaz de programación general y los desarrolladores solo necesitan implementar cuatro niveles de lógica de verificación según el tipo de cadena.
A continuación, echemos un vistazo a los esquemas de implementación específicos en cada nivel.
Comprobar la continuidad del bloque
La implementación en diferentes cadenas de bloques es similar. El valor hash del bloque anterior se registra en el bloque actual, y el valor hash del bloque actual se registra en el siguiente bloque, y varios bloques se conectan a su vez para formar una cadena de bloques. Las diferentes cadenas de bloques difieren solo en el algoritmo hash y los campos utilizados para calcular el hash del bloque.
En WeCross, para verificar la continuidad de la cadena de bloques, solo es necesario conectar los bloques de verificación para formar una cadena de acuerdo con la realización de la cadena correspondiente.
Voz | Di Gang: Blockchain está formando una nueva isla de datos, y la cadena cruzada es la dirección: El 11 de diciembre, se llevó a cabo la 4ta "Cumbre Global de Tecnología Financiera de China (Shenzhen) 2019", Director Adjunto del Instituto de Investigación de Moneda Digital de el Banco Popular de China, Chang Digang, pronunció un discurso de apertura sobre "Innovación y práctica de Blockchain en el campo financiero". Di Gang habló sobre el estado de desarrollo actual de la cadena de bloques y señaló que la arquitectura es diversa y compatible, y que la cadena cruzada es la dirección del desarrollo. En la actualidad, los proyectos de blockchain son sistemas independientes y cerrados que no se pueden conectar entre sí. Las antiguas "islas" han desaparecido y se han creado nuevas "islas", actualmente, las cadenas homogéneas son principalmente cadenas cruzadas, y la industria aún necesita ser cadena cruzada en cadenas heterogéneas Avances e innovaciones en la interoperabilidad de la cadena, el campo de la cadena de bloques carece de estándares técnicos reconocidos y soluciones de cadena cruzada, y el costo de la adaptación y adaptación de la aplicación es enorme. En cuanto al statu quo de los problemas estándar, el Instituto de Investigación de Moneda Digital del Banco Popular de China ha tomado la iniciativa y está a punto de completar la primera especificación estándar de seguridad de cadena de bloques de la industria. [2019/12/11]
Verificar el consenso de bloqueo
Verificar el consenso del bloque, es decir, verificar si la información de consenso del bloque cumple con las condiciones del algoritmo correspondiente. Diferentes algoritmos tienen diferentes implementaciones. Aquí se dan los dos algoritmos de consenso más representativos: POW (Prueba de trabajo) y PBFT (Tolerancia práctica a fallas bizantinas).
POW pertenece al algoritmo de consenso de consenso final, y los resultados de consenso convergen gradualmente a través de la cadena más larga y la confirmación retrasada. WeCross proporciona los pasos necesarios para la verificación POW:
Dificultad de verificación: verificar si el nonce del bloque cumple con las condiciones de prueba de trabajo
Retraso de verificación: verifique si el bloque actual es más bajo que el bloque más alto conocido N bloques (N puede tomarse como 10, indicando el bloque hace 1 hora)
Verifique la cadena más larga: presente varias partes para verificar que el bloque actual está en la cadena más larga, evitando el fraude unilateral de la altura más alta del bloque y forjando cadenas bifurcadas para hacer el mal.
El algoritmo PBFT llega a un consenso inmediatamente después del consenso multipartidista, y no hay posibilidad de bifurcaciones ni retrocesos en la cadena de bloques. En el algoritmo, los nodos llegan a un consenso mediante la transmisión de firmas entre sí varias veces.
En un bloque, un número suficiente de firmas representa la legitimidad del bloque. Por tanto, la verificación de PBFT en WeCross es relativamente sencilla:
Configure la clave pública: configure la clave pública del nodo de consenso de la cadena de pares por adelantado
Verificación de firma: use la clave pública preconfigurada para verificar la validez de la firma en el bloque y juzgue si la cantidad de firmas válidas cumple con las condiciones de consenso de PBFT
Verificar que la transacción existe
La existencia de transacciones de verificación también debe juzgarse de acuerdo con diferentes implementaciones, las más representativas son SPV (Verificación de pago simple) y las estrategias de endoso.
La intención original de SPV es implementar clientes ligeros, que se han implementado en la mayoría de las cadenas de bloques. Con el auge de la tecnología de cadenas cruzadas, esta tecnología también se utiliza para verificar la existencia de ciertos datos en el bloque.
Tomando la transacción como ejemplo, el encabezado del bloque registra la raíz del árbol de Merkle compuesto por todos los hashes de transacción en el bloque actual, es decir, la "raíz de la transacción". Cualquier transacción corresponde únicamente a una ruta de Merkle que conduce a la raíz de la transacción. Las transacciones que no existen en el bloque no pueden falsificar el Merkle Path que conduce a la raíz de la transacción.
Por lo tanto, en WeCross, solo es necesario verificar el Merkle Path de una determinada transacción para determinar si una determinada transacción pertenece a un determinado bloque.
La estrategia de respaldo es adoptada por Hyperledger Fabric. En Fabric, cada transacción debe satisfacer una política de aprobación predefinida.
Cuando se ejecuta la transacción, será firmada por múltiples nodos de respaldo. Cuando las firmas de todas las partes cumplan con la política de respaldo, la transacción se considerará válida. Fabric almacena la información de la firma del nodo de respaldo en el bloque como parte de la transacción. Múltiples transacciones componen la lista de transacciones en un bloque. La lista de transacciones calcula el valor hash en forma binaria, y este valor hash se registra en el encabezado del bloque.
Por lo tanto, en la implementación actual de WeCross, solo es necesario juzgar si la transacción está en la lista de transacciones (y el indicador correspondiente es válido) y verificar el valor hash de la lista de transacciones para determinar preliminarmente la existencia de la transacción.
En el futuro, WeCross combinará la estrategia de respaldo para verificar la firma del nodo de respaldo de la transacción para mejorar aún más la efectividad de la verificación de la existencia de la transacción.
Verifica que la transacción sea correcta
Verificar que la transacción es correcta es juzgar si el hash de transacción (o binario) de los primeros tres pasos de verificación es la operación esperada por el negocio de acuerdo con los parámetros esperados del negocio.
Por ejemplo, si la operación esperada es transferir (a, b, 100), el contenido de la transacción correspondiente no se puede obtener (a). Al verificar, es necesario verificar si los parámetros esperados del negocio corresponden al hash de la transacción (o binario) según el método de codificación y el algoritmo hash de la transacción. La diferencia entre las diferentes implementaciones de blockchain solo se refleja en la codificación de transacciones y el algoritmo hash, y el método correspondiente se puede usar para la verificación de acuerdo con la implementación de la cadena.
Los complementos de diferentes cadenas en WeCross implementan una lógica de verificación diferente. El complemento FISCO BCOS usa la codificación RLP y el algoritmo hash SHA-256 para verificar si el hash de la transacción es correcto, mientras que el complemento Fabric usa la codificación ProtoBuf para verificar si el binario de la transacción es correcto.
Para una explicación más intuitiva, la siguiente figura muestra el proceso completo de verificación de FISCO BCOS.
Cuando una cadena obtiene el resultado de ejecución de la otra cadena, puede verificar localmente.
Al verificar la continuidad del bloque, FISCO BCOS verifica que este bloque sea un bloque de la cadena de la otra parte al comparar el hash del bloque principal en el encabezado del bloque con el hash del bloque principal real.
En el consenso del bloque de verificación, al verificar la lista de firmas del bloque actual, se juzga si el número de firmas legales cumple con las condiciones del consenso PBFT, y se confirma que el bloque actual representa la voluntad general de la otra cadena.
Al verificar la corrección de Merkle Path desde el hash de la transacción hasta la raíz de la transacción, se puede juzgar que la transacción ya existe en la cadena de bloques.
Al verificar la relación correspondiente entre las expectativas comerciales, el binario de transacción y el hash de transacción, se puede juzgar que la transacción es la operación esperada por el negocio. Después de pasar los cuatro niveles de verificación, significa que las operaciones esperadas por el negocio se han cargado en la otra cadena y la verificación está completa.
La confianza entre cadenas se basa en la premisa de confiar en el mecanismo de ejecución de la otra cadena, y la confianza es el resultado de la ejecución que se ajusta al mecanismo de ejecución. Que el resultado de la ejecución sea correcto o no depende de cuatro niveles de datos. El mecanismo de verificación tiene diferentes implementaciones en diferentes cadenas, y WeCross brinda soporte en forma de complemento.
Tags:
Una inversión masiva en bitcoins parece estar alimentando la demanda institucional de bitcoins.MicroStrategy.
El 20 de septiembre, se llevó a cabo con éxito en Xiamen la "Gran comunidad Defi llena de sangre, no esperes".
"El chico bueno" Li Chunle Cada rincón del norte de Jiangsu en la década de 1990 está lleno de historias, al igual que Li Chunle hoy.Li Chunle.
En una cadena de bloques, todos los participantes de la cadena establecen un sistema de confianza con la ayuda del mecanismo de consenso de la cadena de bloques. Entonces, la pregunta es.
Wu Jihan finalmente recuperó el estatus de persona jurídica de "Beijing Bit".El 15 de septiembre.
Golden Finance Blockchain News, 21 de septiembre Chef Nomi, el desarrollador central anónimo de "Sushi" (Sushiswap), de repente intercambió los millones de tokens SUSHI que tenía por ETH.
Polkadot es un sistema multicadena heterogéneo desarrollado en base al marco de desarrollo de blockchain de Substrate.