Maximizando la modularidad de las pruebas de falla con un oráculo de pre-imagen componible

Esta publicación blog explora el diseño modular del sistema a prueba de fallas del OP Stack, presentando un análisis profundo del oráculo de pre-imagen del sistema.

La última actualización sobre la descentralización técnica y el Sistema a Prueba de Fallas del OP Stack compartió que el sistema mostraría todo el poder de la arquitectura modular del OP Stack. Esta publicación blog explora esta afirmación con mayor profundidad, con un análisis detallado del diseño elegante del oráculo de pre-imagen del sistema como evidencia.

Modularidad y desacoplamiento del Sistema a Prueba de Fallas

La modularidad de OP Stack permitió el diseño de un Sistema a Prueba de Fallas desacoplado, mejorando su flexibilidad y adaptabilidad. Al desacoplar el Programa a Prueba de Fallas (FPP) de la Máquina Virtual a Prueba de Fallas (FPVM), cada componente puede evolucionar y optimizarse de manera independiente, sin restricciones impuestas por el otro. Esta separación no solo agiliza los procesos de desarrollo y depuración, sino que además fortalece la confiabilidad y robustez tanto del FPP como del FPVM.

Esta modularidad también permite la integración de componentes sofisticados. Uno de estos componentes es el oráculo de pre-imagen que aportará una gran flexibilidad y programabilidad al Sistema a Prueba de Fallas del OP Stack.

Descripción funcional del oráculo de pre-imagen

Para comprender el oráculo de preimagen, considere el desafío de una simple Máquina Virtual de Prueba de Fallas (FP-VM): ¿Cómo se puede demostrar de manera consistente la computación sobre diversos datos? Demostrar la computación se vuelve sencillo cuando se reduce a una sola instrucción a través de un juego interactivo de bisección: procesar una instrucción de la Máquina Virtual desde el estado previo al posterior.

Sin embargo, cargar entradas extensas de L1 y un estado previo de L2 en esta Máquina Virtual no es sencillo. Aquí entra en juego el oráculo de pre-imagen. Proporciona valores cuando el programa los solicita mediante claves. Pero es más que un simple almacén de claves y valores; se asegura de que solo se utilicen entradas legítimas, verificando la transición de estado de L2 basada en datos de L1.

Este oráculo hace que la recuperación de entradas sea demostrable en la cadena, similar a leer un archivo o acceder a una API.

El oráculo de pre-imagen encarna un "estado de no memoria": verifica la computación presentando datos esenciales justo a tiempo. A diferencia de la ejecución sin estado en L1, este método no se ve obstaculizado por el ancho de banda de la red. El enfoque optimista del rollup interactivo cambia el juego; todo se gestiona de manera eficiente en la cadena en el EVM.

Qué tiene de especial el oráculo de pre-imagen del OP Stack?

  • Pequeños pasos de entrada y salida : El oráculo de pre-imagen simplifica la prueba al reducir las interacciones con el estado de la Máquina Virtual. Carga los datos de forma eficiente en trozos del tamaño de un byte, asegurando un solo cambio de memoria de forma ordenada por instrucción.

  • Sugerencias de Pre-imagen: El oráculo de pre-imagen puede preparar estas pre-imágenes fuera de la Máquina Virtual, donde se proporcionan indicaciones justo a tiempo antes de las solicitudes de pre-imagen, garantizando una ejecución sin inconvenientes.

  • Arranque: Arrancar una nueva disputa se simplifica al garantizar que el mismo programa de disputa esté incrustado en el estado inicial de la Máquina Virtual, las especificaciones de la disputa se cargan a través del oráculo durante la ejecución.

  • Verificación de Reclamo: El oráculo también puede cargar la reclamación en disputa en la Máquina Virtual, permitiendo que el programa la compare con sus resultados de computación, en lugar de extraer el resultado.

  • Ejecución de Programas Fuera de la Máquina Virtual: Algo realmente único del oráculo de pre-imagen del OP Stack es que le permite ejecutar el programa sin la Máquina Virtual. Siempre que el programa sea atendido por el programa anfitrión, puede funcionar en cualquier plataforma, reduciendo la sobrecarga y proporcionando una depuración y pruebas sin problemas.

Un oráculo de pre-imagen componible

El OP Stack modular puede acomodar varios tipos de Máquinas Virtuales de Prueba de Fallas (FPVM) o programas de transición de estado. La belleza del oráculo de pre-imagen de OP Stack radica en su adaptabilidad: puede utilizarse en diferentes conjuntos de instrucciones y programas distintos. Ya sea un Stack de Go con op-node y op-geth, o un Satck de Rust con Magi y Reth, el mismo oráculo de pre-imagen se adapta a todos.

Además, esta separación entre la Máquina Virtual y el programa permite la utilización de Máquinas Virtuales alternativas, como una versión RISC-V de Cannon o incluso una prueba de conocimiento cero (ZK proof) de MIPS. (!) Las futuras verificaciones de pre-imagen pueden agregarse fácilmente sin realizar cambios drásticos en el FPVM.

¿Cómo afecta esto al Sistema a Prueba de Fallas?

La adaptabilidad del oráculo de pre-imagen asegura que el FPVM y el FPP sigan siendo sencillos, flexibles y eficientes. Al permitir diversas implementaciones del mismo protocolo, actúa como una red de seguridad, asegurando el OP Stack.

¿Interesado en las Pruebas de Fallas? Fíjate este artículo, que comparte más detalles sobre el diseño del completo Sistema a Prueba de Fallas del OP Stack, y este artículo, que profundiza en el diseño de múltiples pruebas de OP Stack.

Subscribe to Optimism Español
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.