Sistema AMB en Amarok, Actualización.

--

Traducción del artículo “Amarok AMB Update” con fecha Agosto 22, 2022.

A principios de este año, anunciamos el desarrollo y la testnet de Connext Amarok. Esta actualización tiene como objetivo solucionar muchos de los problemas claves que existen actualmente en Connext e introduce la capacidad de transmitir mensajes arbitrarios. Todo esto trae consigo la facilidad para los desarrolladores a la hora de realizar integraciones a nuestra red, ¿el resultado? crear aplicaciones crosschain (xApps) completamente expresivas.

Repaso sobre Amarok

La actualización de Amarok consigue lo anteriormente mencionado modularizando el stack del bridgeo. En lugar de contar con un único sistema para activar todas las funcionalidades necesarias para crear xApps, los desarrolladores recurren a una única función (xCall) que divide las acciones entre una Capa de Liquidez (Connext) y una Capa de Mensajería.

Tras una intensa investigación sobre las ventajas y desventajas de los modelos de seguridad de los puentes, el equipo decidió asociarse estrechamente con Nomad, el equipo que inventó el modelo Optimistic Bridge, un sistema de mensajería que transmite datos a través de redes utilizando pruebas de fraude (fraud proofs) similares a los rollups optimistas.

El exploit de Nomad

Como muchos de ustedes saben, Nomad sufrió recientemente un ataque debido a un error de implementación (no relacionado con su modelo optimista).

El equipo de Connext sigue creyendo firmemente que Nomad es uno de los mejores equipos en el sector dedicado a los Bridges y espera que salgan aún más fortalecidos como resultado de este evento. También queremos dejar dicho que estamos convencidos de que los puentes optimistas serán el estilo dominante de construcción de puentes en el futuro, dada la solidez de su modelo de seguridad.

Sin embargo, siendo realistas, Nomad tardará un tiempo en recuperar los fondos y reiniciar su sistema. Connext no puede permitirse esta espera, ya que tenemos unos 150 Routers aproximadamente, más de una docena de dApps con sus equipos detrás y decenas de miles de usuarios esperando a que se ponga en marcha la actualización Amarok.

Un nuevo sistema de mensajería

Afortunadamente, hemos podido idear un enfoque alternativo que minimiza los retrasos respecto a nuestro plazo original.

En lugar de construir más de nuestra propia infraestructura, el sistema utilizará AMBs existentes para rollups y sidechains para retransmitir mensajes y un sistema de Connectors para vincularlos entre sí. Tengan en cuenta que todo este sistema de mensajería existirá por debajo de la Capa de Liquidez de Amarok existente que habilita el envío y recepción de tokens a través de las distintas redes.

💡 AMBs Sistemas de Mensajes Arbitrarios, son los puentes canónicos utilizados por otras chains (L2s y L1s) para conectarse con una red principal, típicamente Ethereum. Algunos ejemplos son el puente roll-up Arbitrum-Ethereum o el puente PoS Polygon-Ethereum.

Modelo Hub and Spoke: las transacciones creadas en cualquier red se añadirán a una Merkle root. Estas Roots se enviarán periódicamente a Ethereum L1. Al llegar a L1, un bot de Gelato agregará las roots (es decir, se generará una nueva root combinando las roots específicas de cada chain: una chain-specific root) y las propagará (enviándolas a través de AMBs de vuelta a cada chain).

En caso de emergencia, una red puede ser desconectada por el sistema en L1, esto interrumpirá todos los nuevos mensajes que vayan a/desde la red sin afectar al resto de la red.

¿Qué significa esto para los usuarios?

Nuestro principal objetivo de diseño fue asegurarnos de que los cambios para los protocolos, usuarios, routers y desarrolladores afectaran en la menor medida posible. De este modo reduciríamos tanto el tiempo necesario para implementar el sistema como el impacto en nuestra comunidad:

  • Cero cambios en el protocolo: El sistema utiliza la misma interfaz que Nomad para despachar y procesar mensajes. Esto asegura que no se necesitan cambios adicionales en nuestra la infraestructura existente de Amarok y esto significa que nuestros contratos on-chain y nuestros agentes off-chain trabajarán con el nuevo sistema de mensajería con 0 cambios.
  • Cero cambios para los desarrolladores: las interfaces y funcionalidades que los devs están integrando seguirán siendo exactamente las mismas.
  • Cero cambios para los liquidity providers: la experiencia de proporcionar liquidez, ya sea como router (liquidez activa) o como usuario (liquidez pasiva en los AMM de cada red) seguirá siendo exactamente la misma.

No hay que olvidar, sin embargo, que el nuevo sistema tiene algunas desventajas frente al uso de un puente optimista:

  1. Costo: habrá un pequeño aumento del gasto, ya que los estados de los Roots deben propagarse a través de Ethereum L1. Por ahora, este coste será subvencionado por Connext; esperamos que esto sea factible a corto y medio plazo.
  2. Latencia: el tiempo necesario para las transacciones y las llamadas xChain a contrato seguirá siendo el mismo: 2 minutos aproximadamente. Sin embargo, las xcalls autenticadas a contratos (es decir, aquellas que requieren algún permiso de acceso a llamar a una función) tardarán un poco más. Anteriormente, la latencia de esto era de 30 minutos. Ahora, estimamos que puede llegar a ser de 2 o 3 horas.
  3. Trust-minimization: lo bueno de este sistema es que utiliza los AMB existentes de cada red, lo que minimiza los supuestos de confianza adicionales, ya que estos AMB ya son la fuente de confianza para todos los activos de una red/rollup determinado. Sin embargo, en el caso concreto de los rollups optimistas, tendremos que reducir significativamente la latencia de las salidas de la “slow path” de 1 semana (de forma similar a como funciona Across). Esperamos que, por el momento, se trate de un compromiso de confianza aceptable, ya que los rollups siguen dependiendo en gran medida de un enfoque de seguridad vigilado + el sistema podrá desconectar un rollup si el secuenciador del rollup detecta que se ha producido un fraude.
  4. Soporte limitado de cadenas: como estamos utilizando los AMB existentes, sólo podremos dar soporte a un puñado de redes como parte del lanzamiento inicial. Tenemos algunas ideas sobre cómo ampliar el sistema a otras chains después de la puesta en marcha, pero el primer día sólo seremos compatibles con las siguientes: Optimism, Arbitrum, Gnosischain, Polygon, BNB Chain e Ethereum.

La importancia de estas ventajas y desventajas hace que este sistema de mensajería se conciba específicamente como una solución temporal que pueda implementarse rápidamente y con cambios mínimos.

💡Tan pronto como sea posible, intentaremos actualizar el sistema para que se convierta en un puente optimista completo que construyamos nosotros mismos o conectar por debajo la Capa de Mensajería del puente optimista de Nomad (si/cuando puedan recuperarse).

Timeline

Como el sistema utiliza una infraestructura existente (AMBs) y ya es probada su eficacia y no hay absolutamente ningún cambio en el funcionamiento de Connext al implentarlo, los cambios requeridos serán únicamente:

  1. Un conjunto de contratos para crear y validar Merkle roots/proofs. En el ecosistema ya existen versiones robustas y listas para usar.
  2. Conectores para cada red.
  3. Un bot de Gelato en cada chain para enviar periódicamente roots a través de los AMBs. Un bot de Gelato en Ethereum L1 para combinar y propagarlos luego.

Ya hemos deployado en Ethereum Göerli y Optimism Göerli, y nuestro objetivo es tener una nueva testnet activa para la próxima semana. También completamos el desarrollo de un conector para Sokol (Gnosischain testnet) con otras testnet (Polygon, Arbitrum, y la BNB chain) que en breve estarán disponibles.

Estamos programando dos auditorías para el nuevo sistema lo antes posible.

En Connext, nuestra filosofía es colaborar activa y cercanamente con los usuarios para mejorar la experiencia, la seguridad y las pruebas y, en general, ofrecer el máximo valor con cada versión. Los animamos a que nos hagan llegar sus comentarios o preguntas mientras seguimos trabajando juntos.

Acerca de Connext

Connext es una red para comunicación rápida y trustless entre redes y rollups. Es el único sistema de interoperabilidad de su especie que hace esto de forma económica y rápida sin introducir nuevos supuestos de confianza. Connext está apuntado a desarrolladores que están buscando construir puentes y otras aplicaciones nativamente crosschain (xApps). Hasta la fecha más de $1500 millones de USD en transacciones han cruzado la red.

Website | Docs | Twitter | Discord | Github | Telegram | Crosschain Bridge

--

--