Prueba de fraude y análisis de la implementación de ZK Fraud Proof
La prueba de fraude es una solución técnica ampliamente utilizada en el ámbito de la blockchain, que se originó en la comunidad de Ethereum y fue adoptada por Layer2 como Arbitrum y Optimism. Tras el surgimiento del ecosistema de Bitcoin en 2023, Robin Linus propuso el esquema BitVM, que tiene como idea central la prueba de fraude, proporcionando un nuevo modelo de seguridad para la segunda capa de Bitcoin o puentes.
BitVM ha pasado por varias versiones teóricas, desde la temprana BitVM0 hasta la posterior BitVM2, con rutas tecnológicas relacionadas que han madurado continuamente. Varios proyectos como Bitlayer, Citrea, entre otros, se han implementado sobre la base tecnológica de BitVM.
Este artículo tomará como ejemplo el esquema de prueba de fraude de Optimism, analizando su esquema basado en la máquina virtual MIPS y la prueba de fraude interactiva, así como las principales ideas de la prueba de fraude ZK.
OutputRoot y StateRoot
La infraestructura de Optimism está compuesta por un secuenciador y contratos inteligentes en la cadena de Ethereum. Después de procesar las transacciones, el secuenciador sube los datos a Ethereum. Cualquiera puede ejecutar un nodo de Optimism, descargar estos datos y ejecutarlos localmente para calcular el hash del conjunto de estados actual.
Si el secuenciador sube un hash de conjunto de estado incorrecto, los resultados del cálculo local tendrán diferencias; en este caso, se puede iniciar una disputa a través del sistema de prueba de fraude.
Optimism utiliza el campo StateRoot para reflejar los cambios en el conjunto de estados. El secuenciador sube periódicamente el OutputRoot a Ethereum, el OutputRoot se calcula a partir del StateRoot y otros campos.
Máquina virtual MIPS y árbol Merkle de memoria
Para verificar la corrección de OutputRoot en la cadena, el equipo de desarrollo de Optimism escribió la máquina virtual MIPS en Solidity, implementando parte de las funciones de los nodos OP. Sin embargo, debido a las limitaciones de Gas de Ethereum, no es posible ejecutar completamente todas las transacciones en los bloques OP en la cadena.
Para ello, Optimism ha diseñado un sistema interactivo de prueba de fraude que descompone el proceso de manejo de transacciones en una secuencia de códigos de operación MIPS. El sistema determina si OutputRoot es válido observando qué código de operación falla durante su ejecución.
La información de estado de la máquina virtual MIPS se organiza en un árbol de Merkle. Los contratos relacionados con la prueba de fraude ejecutan una instrucción MIPS en la cadena a través de la función Step, comparando si los resultados son consistentes.
Prueba de fraude interactiva
Optimism desarrolló el protocolo Fault Dispute Game(FDG), que incluye dos roles: retador y defensor. Ambas partes deben construir un GameTree localmente y, a través de múltiples interacciones, localizar los códigos de operación MIPS en disputa.
GameTree está compuesto por dos capas de árboles de Merkle, donde los nodos hoja de la primera capa son los OutputRoot de diferentes bloques, y los nodos hoja de la segunda capa son los hash de estado de la máquina virtual MIPS. Ambas partes interactúan múltiples veces en la cadena, y finalmente determinan el código de operación MIPS único que se debe ejecutar en la cadena.
Prueba de fraude ZK
Las pruebas de fraude tradicionales presentan problemas como la complejidad de la interacción, altos costos de gas y alta dificultad de desarrollo. Por ello, Optimism propuso el concepto de prueba de fraude ZK.
La idea principal es: el retador designa la transacción que necesita ser reproducida, el secuenciador de Rollup proporciona la prueba ZK de esa transacción, que es verificada por un contrato inteligente de Ethereum. Si la verificación es exitosa, se considera que el procesamiento de la transacción es correcto.
En comparación con la prueba de fraude interactiva, la Prueba de Fraude ZK simplifica múltiples interacciones a una sola generación y verificación de prueba ZK, ahorrando tiempo y costos de gas. En comparación con ZK Rollup, solo genera pruebas cuando es desafiada, reduciendo la carga computacional.
BitVM2 también adopta un enfoque similar, implementando la verificación de ZK Proof a través de scripts de Bitcoin, y ha reducido drásticamente el tamaño del programa en la cadena.
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
14 me gusta
Recompensa
14
4
Compartir
Comentar
0/400
not_your_keys
· hace16h
De todos modos, no entiendo, esperaré a que haya una alpha más adelante.
Ver originalesResponder0
metaverse_hermit
· hace16h
确实值得introducir una posiciónOp
Ver originalesResponder0
CommunityJanitor
· hace16h
Todo el día hablando de esta optimización y aquella optimización
Ver originalesResponder0
NftDataDetective
· hace16h
parece que las pruebas de fraude finalmente están creciendo... ya era hora, para ser honesto
Evolución de la tecnología de prueba de fraude: de la interacción a la implementación de ZK Fraud Proof
Prueba de fraude y análisis de la implementación de ZK Fraud Proof
La prueba de fraude es una solución técnica ampliamente utilizada en el ámbito de la blockchain, que se originó en la comunidad de Ethereum y fue adoptada por Layer2 como Arbitrum y Optimism. Tras el surgimiento del ecosistema de Bitcoin en 2023, Robin Linus propuso el esquema BitVM, que tiene como idea central la prueba de fraude, proporcionando un nuevo modelo de seguridad para la segunda capa de Bitcoin o puentes.
BitVM ha pasado por varias versiones teóricas, desde la temprana BitVM0 hasta la posterior BitVM2, con rutas tecnológicas relacionadas que han madurado continuamente. Varios proyectos como Bitlayer, Citrea, entre otros, se han implementado sobre la base tecnológica de BitVM.
Este artículo tomará como ejemplo el esquema de prueba de fraude de Optimism, analizando su esquema basado en la máquina virtual MIPS y la prueba de fraude interactiva, así como las principales ideas de la prueba de fraude ZK.
OutputRoot y StateRoot
La infraestructura de Optimism está compuesta por un secuenciador y contratos inteligentes en la cadena de Ethereum. Después de procesar las transacciones, el secuenciador sube los datos a Ethereum. Cualquiera puede ejecutar un nodo de Optimism, descargar estos datos y ejecutarlos localmente para calcular el hash del conjunto de estados actual.
Si el secuenciador sube un hash de conjunto de estado incorrecto, los resultados del cálculo local tendrán diferencias; en este caso, se puede iniciar una disputa a través del sistema de prueba de fraude.
Optimism utiliza el campo StateRoot para reflejar los cambios en el conjunto de estados. El secuenciador sube periódicamente el OutputRoot a Ethereum, el OutputRoot se calcula a partir del StateRoot y otros campos.
Máquina virtual MIPS y árbol Merkle de memoria
Para verificar la corrección de OutputRoot en la cadena, el equipo de desarrollo de Optimism escribió la máquina virtual MIPS en Solidity, implementando parte de las funciones de los nodos OP. Sin embargo, debido a las limitaciones de Gas de Ethereum, no es posible ejecutar completamente todas las transacciones en los bloques OP en la cadena.
Para ello, Optimism ha diseñado un sistema interactivo de prueba de fraude que descompone el proceso de manejo de transacciones en una secuencia de códigos de operación MIPS. El sistema determina si OutputRoot es válido observando qué código de operación falla durante su ejecución.
La información de estado de la máquina virtual MIPS se organiza en un árbol de Merkle. Los contratos relacionados con la prueba de fraude ejecutan una instrucción MIPS en la cadena a través de la función Step, comparando si los resultados son consistentes.
Prueba de fraude interactiva
Optimism desarrolló el protocolo Fault Dispute Game(FDG), que incluye dos roles: retador y defensor. Ambas partes deben construir un GameTree localmente y, a través de múltiples interacciones, localizar los códigos de operación MIPS en disputa.
GameTree está compuesto por dos capas de árboles de Merkle, donde los nodos hoja de la primera capa son los OutputRoot de diferentes bloques, y los nodos hoja de la segunda capa son los hash de estado de la máquina virtual MIPS. Ambas partes interactúan múltiples veces en la cadena, y finalmente determinan el código de operación MIPS único que se debe ejecutar en la cadena.
Prueba de fraude ZK
Las pruebas de fraude tradicionales presentan problemas como la complejidad de la interacción, altos costos de gas y alta dificultad de desarrollo. Por ello, Optimism propuso el concepto de prueba de fraude ZK.
La idea principal es: el retador designa la transacción que necesita ser reproducida, el secuenciador de Rollup proporciona la prueba ZK de esa transacción, que es verificada por un contrato inteligente de Ethereum. Si la verificación es exitosa, se considera que el procesamiento de la transacción es correcto.
En comparación con la prueba de fraude interactiva, la Prueba de Fraude ZK simplifica múltiples interacciones a una sola generación y verificación de prueba ZK, ahorrando tiempo y costos de gas. En comparación con ZK Rollup, solo genera pruebas cuando es desafiada, reduciendo la carga computacional.
BitVM2 también adopta un enfoque similar, implementando la verificación de ZK Proof a través de scripts de Bitcoin, y ha reducido drásticamente el tamaño del programa en la cadena.