La integración de múltiples cadenas de bloques en una sola red ha generado la necesidad de nuevas soluciones para garantizar la cripto seguridad. Polygon ha introducido la «prueba pesimista», una herramienta que trata todas las cadenas con alta sospecha para proteger la integridad del sistema.
Conexión de cadenas en un puente unificado
Cuando una cadena de bloques se conecta a AggLayer, se une a un puente unificado que también enlaza otras cadenas a Ethereum. Este sistema ya es utilizado en plataformas como X Layer, Astar zkEVM y Polygon zkEVM de OKX, con más cadenas por añadirse pronto. El puente compartido permite a los usuarios transferir activos fungibles entre diferentes Layer 2 (L2) de manera fluida, en comparación con los puentes de terceros o los múltiples puentes nativos, que podrían causar retrasos, especialmente en acumulaciones optimistas.
Con la expansión de AggLayer para soportar diversos probadores y mecanismos de consenso, surge un problema notable: la posibilidad de errores de solidez aumenta. Sin un robusto mecanismo de seguridad, un actor malintencionado en una cadena podría comprometer todo el puente. La prueba pesimista soluciona este problema al asumir que ninguna cadena es confiable y podría actuar de manera perjudicial.
Funcionamiento de la Prueba Pesimista
La prueba pesimista es una novedosa prueba de conocimiento cero que proporciona seguridad criptográfica para las transacciones entre cadenas. La premisa básica es que cada cadena conectada es tratada con desconfianza, asegurando que los problemas en una cadena no afecten a las demás.
AggLayer supervisa todas las transferencias de activos y mensajes a través de las cadenas para garantizar que ninguna cadena retire más de lo que ha depositado. Esto se realiza mediante:
- Las actualizaciones de la cadena se han realizado correctamente.
- Las cadenas han llevado a cabo su contabilidad interna correctamente, sin intentar retirar tokens no disponibles.
- La contabilidad interna de todas las cadenas es correcta en conjunto.
Árboles Merkle y Pruebas ZK
Cada cadena conectada a AggLayer mantiene un árbol de salida local que rastrea todos los retiros. AggLayer utiliza la raíz de estos árboles locales para crear una vista global de todos los retiros, formando el «árbol de salida global».
Antes de enviar una nueva raíz de salida global a L1, AggLayer verifica que ninguna cadena haya retirado más tokens de los que ha depositado. Esto implica la generación de una prueba pesimista, que requiere:
- El árbol de salidas locales de la cadena.
- La lista de nuevos retiros incluidos en la actualización actual.
- La esperada nueva raíz de salida local.
Mediante estas entradas, AggLayer puede calcular y comparar la nueva raíz de salida local para asegurarse de que la actualización se realizó correctamente.
Si se detecta que una cadena intenta retirar más tokens de los depositados, se invalida la actualización de la cadena, evitando que su estado se refleje en Ethereum.