
Las soluciones Layer 2 se han consolidado como una vía eficaz para superar los obstáculos de escalabilidad de Layer 1. Esta serie se centra en las soluciones de pruebas L2, especialmente en los mecanismos de fraud proof. Estos sistemas emplean pruebas criptográficas para validar y verificar transacciones o cálculos en la blockchain, garantizando la integridad y seguridad de las operaciones en el libro mayor distribuido.
El flujo de trabajo de Optimistic Rollup comprende siete pasos fundamentales para la verificación de transacciones. Primero, los usuarios envían transacciones a la red Layer 2 directamente al secuenciador L2. Este ejecuta las transacciones en su copia de la cadena L2 y genera una nueva raíz de estado que refleja el libro mayor actualizado.
Tras la ejecución, el secuenciador transmite tanto las transacciones originales como las nuevas raíces de estado a la blockchain Layer 1. El contrato inteligente L1, al recibirlas, abre una ventana temporal de desafíos, periodo en el que cualquier participante puede impugnar la validez de las transacciones o los resultados provistos por el secuenciador L2. Esta fase resulta clave para preservar la seguridad y evitar conductas maliciosas.
Cuando concluye el periodo de desafíos, la blockchain Layer 1 finaliza el registro de la ejecución L2. Si se demuestra que el secuenciador ha actuado de forma deshonesta, se aplican penalizaciones y se recalculan las raíces de estado, restaurando la precisión y la integridad del sistema.
El sistema de fraud proof y el mecanismo de desafíos son esenciales para mitigar riesgos derivados de secuenciadores deshonestos. Gracias a las pruebas criptográficas, cualquier participante en la blockchain L1 puede verificar de manera independiente la corrección de las transacciones rollup y las raíces de estado, sin reejecutar toda la historia de transacciones.
Optimism incorpora una ventana de desafíos ampliada, durante la cual usuarios y verificadores independientes pueden comprobar la validez de resultados y raíces de estado. Este plazo permite a la comunidad identificar y cuestionar posibles envíos fraudulentos, fortaleciendo un modelo de seguridad basado en incentivos económicos y verificación criptográfica, no en la confianza ciega en una sola entidad.
En el sector blockchain existen dos grandes categorías de pruebas, cada una con su propia filosofía y compensaciones. Los sistemas de validity proof exigen que el secuenciador, al enviar resultados a Layer 1, incluya pruebas criptográficas de validez. Así, cualquier participante en Layer 1 puede validar al instante la corrección de los resultados, sin reejecutar transacciones en L2, aunque esto implica matemáticas complejas y sistemas zero-knowledge proof.
Por su parte, los sistemas de fraud proof (o fault proof) parten de la premisa de honestidad del secuenciador y confían en el mecanismo de desafío para garantizar la corrección. En este modelo, los participantes disponen de una ventana temporal para impugnar envíos fraudulentos, trasladando la carga de la prueba del secuenciador al desafiante. Este sistema resulta eficiente cuando la mayoría de envíos son legítimos.
Las implementaciones de fraud proof se dividen en dos enfoques principales: soluciones no interactivas e interactivas, cada una con implicaciones técnicas y de rendimiento específicas.
Los fraud proof no interactivos reejecutan todas las transacciones de L2 directamente en L1. Este método exige una infraestructura capaz de ejecutar transacciones de L2 en el entorno L1 y verificar los cambios de estado de L2 mediante la capa de verificación de L1. El reto principal reside en dos aspectos: reejecutar correctamente las transacciones de L2 en L1 y resolver inconsistencias de estado entre ambos entornos para garantizar la verificación precisa.
Para solventar las inconsistencias de estado en los fraud proof no interactivos, el protocolo Optimism incorporó diversos mecanismos avanzados. L2 genera compromisos de estado periódicos que producen pruebas criptográficas del estado completo de L2. La disponibilidad de datos queda asegurada cuando los validadores L1 confirman el acceso a la información necesaria en la cadena L1. Los validadores L1 reejecutan transacciones de L2 en su contexto para verificar la ejecución. Se establecen mecanismos de comunicación entre capas para facilitar la interacción L1-L2, y sistemas de incentivos bien diseñados promueven el comportamiento honesto.
El principal avance del OVM fue desarrollar un "contenedor" que hace que la reejecución en L1 resulte funcionalmente equivalente a la ejecución en L2. Esto se logró mediante la precarga de estados de cuenta L2 en L1, la modificación de bytecodes EVM relacionados con almacenamiento y acceso a estado, el despliegue de contratos inteligentes en L1 que alteran el bytecode de usuario para acceder a datos externos y la adaptación del compilador Solidity para generar bytecode OVM en lugar del estándar EVM.
Pese a su carácter innovador, el OVM presenta desventajas relevantes. El enfoque aumenta la complejidad al modificar el compilador original, obligando a los desarrolladores a manejar bytecode no estándar. El tamaño del código se incrementa al sustituir opcodes por llamadas a funciones, lo que eleva los costes de despliegue. El consumo de gas es mayor, ya que las llamadas a funciones suelen requerir más gas que los opcodes individuales, encareciendo las transacciones OVM. Además, el rendimiento se ve limitado por la falta de optimización total, lo que puede generar cuellos de botella en el procesamiento.
Los fraud proof interactivos suponen un cambio de paradigma en la verificación de fraude, empleando un protocolo entre dos partes (defensor y desafiante) para validar las transiciones de estado. Este método es más eficiente que los tradicionales, ya que permite centrar los recursos computacionales en las partes exactas de la transición de estado que generan desacuerdo, evitando la reejecución completa de todas las transacciones.
La versión actual de Optimism en desarrollo, conocida como proyecto Cannon, busca verificar con solo una instrucción MIPS ejecutada en L1, lo que reduce drásticamente el cómputo en cadena.
El proyecto Cannon persigue objetivos ambiciosos: elimina modificaciones de contratos inteligentes a nivel opcode, evitando la complejidad del EVM sobre EVM; simplifica el acceso al estado L2 y reduce sustancialmente los costes de verificación de fraude en cadena.
Para lograrlo, Cannon implementa varias innovaciones clave: acceso unificado a estados a través de preimage oracle, que permite acceder al estado Layer 2 usando valores hash como claves; reproducción a nivel Geth, más cercana a la implementación del cliente; verificación en cadena optimizada que requiere solo una instrucción MIPS, reduciendo la carga computacional; el op-program, que actúa como puente para generar y acceder a datos preimage; y el mecanismo dispute game, que facilita la colaboración entre defensor y desafiante para identificar instrucciones conflictivas.
La arquitectura de Cannon integra varios componentes críticos. El op-program funciona como implementación cliente-servidor para el acceso a datos preimage: el cliente se compila en instrucciones MIPS y el servidor gestiona las consultas y obtención de datos. Cannon es un emulador MIPS capaz de ejecutar instrucciones, con el componente mipsevm y los contratos inteligentes en cadena. MIPS.sol implementa el intérprete en cadena de instrucciones MIPS, mientras que PreimageOracle.sol atiende las solicitudes de MIPS.sol.
El flujo de trabajo se desarrolla de forma secuencial: el cliente op-program MIPS se carga en el emulador Cannon, generando el estado inicial del proceso de fraud proof. La ejecución comienza desde el punto de partida, ejecutando los pasos en mipsevm, registrando accesos y almacenando datos preimage según sea necesario. El dispute game se activa si los desafiantes detectan discrepancias entre el cambio de estado de L2 rollup y el registrado en L1. Defensor y desafiante emplean búsqueda binaria para localizar la instrucción causante de estados divergentes. Finalmente, los materiales de fraud proof se preparan y envían a MIPS.sol para su verificación en cadena.
Pese a sus avances, Cannon enfrenta desafíos importantes. La elección del set de instrucciones MIPS responde al soporte nativo en Golang, la facilidad de implementación y la simplicidad arquitectónica, pero introduce barreras de aprendizaje. Los posibles exploits en el runtime de Golang generan preocupaciones de seguridad, ya que Cannon ha parcheado funciones del runtime, como la desactivación de la recolección de basura, lo que puede provocar errores de memoria en escenarios intensivos.
La ventana de desafíos para los fraud proof es el principal inconveniente para el usuario: obliga a esperar antes de retirar tokens, lo que afecta a aplicaciones sensibles al tiempo. Además, la seguridad de los contratos L1 y componentes off-chain exige vigilancia y revisión constante.
La comunidad blockchain sigue investigando alternativas en fraud proof, con propuestas centradas en mecanismos basados en zero-knowledge. Estas soluciones pretenden reducir o eliminar la fase interactiva de los fraud proof tradicionales, ofreciendo mayor rapidez y menor complejidad, aunque con diferentes compromisos en requisitos computacionales y tiempos de generación de pruebas.
Mientras evolucionan las principales implementaciones L2 basadas en OP Stack, los proyectos impulsan nuevas iniciativas para perfeccionar los mecanismos de fraud proof. Se trabaja en mejorar la eficiencia de la infraestructura off-chain, optimizar los tiempos de desafío para una finalización más ágil, fortalecer los contratos en cadena mediante auditorías rigurosas y explorar soluciones orientadas al negocio que respondan mejor a las necesidades de distintas aplicaciones y comunidades de usuarios.
Este artículo ha examinado la evolución de los sistemas de fraud proof en Layer 2, desde los modelos históricos hasta las innovaciones interactivas actuales con el proyecto Cannon. El análisis abarca los principios arquitectónicos de OVM y su objetivo de crear un entorno compatible con EVM en L1, y profundiza en el diseño e implementación de Cannon, que marca un avance al reducir la verificación en cadena a una sola instrucción MIPS. Estos progresos reflejan la evolución continua de las tecnologías Layer 2 hacia mayor eficiencia, menor coste y mejor experiencia de usuario, sin comprometer la seguridad fundamental para las aplicaciones blockchain.
Los fraud proof son pruebas criptográficas que permiten cuestionar la validez de transacciones en redes blockchain. Garantizan la integridad y resultan esenciales para las soluciones de escalabilidad en blockchain.
Los fraud proof otorgan a los usuarios la capacidad de impugnar estados L2 incorrectos propuestos por los secuenciadores. Los optimistic rollups publican los datos de transacciones y confían en terceros para reconstruir y verificar el estado L2. Si surgen discrepancias, los desafiantes pueden impugnar el estado en L1 mediante un juego de bisección, identificando los pasos erróneos y ejecutando pruebas one-step para demostrar el fraude.
Los fraud proof validan transacciones con un retraso, desafiando aquellas que sean falsas, mientras que los validity proof confirman la validez al instante mediante criptografía zero-knowledge. Los validity proof ofrecen mayor eficiencia y finalización inmediata, mientras que los fraud proof requieren un periodo de espera para eventuales desafíos.









