Article by Matt Henderson of Aurora
El NEAR Rainbow Bridge es único en criptografía como el único puente sin permisos y sin confianza hacia Ethereum. En este artículo, vamos a desmitificar cómo funciona.
El protocolo NEAR creó el Rainbow Bridge, algo que es único y valioso en el espacio criptográfico, un puente completamente “sin confianza” para transferir tokens entre Ethereum y NEAR, y en última instancia, Aurora. Si bien existen descripciones técnicas del puente, este artículo explicará cómo funciona de una manera que, con suerte, sea comprensible para cualquier persona con una familiaridad básica con las criptomonedas.
El concepto
Comencemos imaginando que quiero transferir 20 DAI de Ethereum a NEAR. Dado que la transferencia física de tokens no es posible entre redes, esto significa que debemos sacar 20 DAI de circulación en Ethereum y poner 20 DAI en circulación en NEAR, para que el suministro global de DAI no cambie.
Así es como podría hacer eso de una manera sin confianza y sin permiso:
- Le digo a la red Ethereum que quiero transferir 20 DAI a otro lugar.
- La red Ethereum bloquea mis 20 DAI en una bóveda (un contrato inteligente), para que se retiren de circulación.
- Una vez que estoy seguro de que esos 20 DAI se han bloqueado en Ethereum, le digo a NEAR que cree 20 nuevos DAI para mí allí.
- NEAR no confía en mí, por supuesto, por lo que me pide que demuestre que he bloqueado 20 DAI en Ethereum.
- Proporciono a NEAR pruebas de que he bloqueado esos DAI en Ethereum.
- NEAR verifica de forma independiente mi prueba y luego crea 20 DAI nuevos para que los use en NEAR.
Más tarde, si deseo mover mi DAI de NEAR a Ethereum, simplemente invierto el procedimiento anterior. Limpio, ¿eh?
Los actores
Así que ahora veamos cómo sucede todo eso en la práctica, usando el Puente Arcoíris. La historia involucrará una serie de componentes técnicos que conforman el puente:
La interfaz de usuario de Rainbow Bridge: este es el sitio web donde usted, como usuario, interactúa con el puente para transferir sus activos entre redes.
LiteNode: es como un nodo de cadena de bloques, excepto que solo almacena encabezados de bloque, lo que reduce drásticamente el espacio de almacenamiento necesario. El LiteNode se implementa como un contrato inteligente, y tenemos dos de ellos: uno implementado en la red Ethereum, que almacena NEAR encabezados de bloque, y otro implementado en NEAR, que almacena encabezados de bloque Ethereum.
(Solo para su información, el LiteNode en realidad se conoce como el “cliente ligero” en otros artículos, por razones históricas. Si me pregunta, “¿Qué almacena datos de blockchain?”, Mi primer pensamiento es “un nodo”, y así en este artículo, para ayudar con los modelos mentales, lo llamo LiteNode).
Relayers: dado que los LiteNodes son contratos inteligentes, no pueden ejecutarse ni actualizarse por sí mismos. Los retransmisores son scripts que se ejecutan en servidores tradicionales, que leen bloques periódicamente de una cadena de bloques y los comunican al LiteNode que se ejecuta en la otra. Entonces, los retransmisores mantienen los LiteNodes actualizados.
Dado que hay un costo de transacción, es decir. tarifas de gas: cada vez que un retransmisor actualiza un LiteNode, el de NEAR (que contiene los bloques de Ethereum) se actualiza en cada bloque de Ethereum (ya que las tarifas de gas de NEAR son baratas), mientras que la frecuencia de actualización en Ethereum (que contiene los bloques de NEAR) es configurable y determinado por un presupuesto económico (actualmente alrededor de 12 a 16 horas).
Conectores: los conectores son contratos inteligentes responsables de toda la lógica asociada con la gestión de cadenas cruzadas de un tipo de activo determinado. Al igual que los LiteNodes, existen en pares: uno que se ejecuta en Ethereum y otro que se ejecuta en NEAR. Por ejemplo, hay un par de “conectores ETH” responsables de transferir ETH entre las dos redes. Y hay un par de “Conector ERC-20” responsable de transferir tokens ERC-20. Alguien podría escribir un conector “NFT”, un conector de “Predicción de resultados de mercado” o un conector de “Resultados de votación DAO” si lo deseara. ¡Cualquier activo o dato se puede transferir a través de Rainbow Bridge, si existen conectores relevantes!
Poniendo las piezas juntas
Para comprender cómo todos estos elementos funcionan juntos para permitirme transferir tokens sin permiso y sin confianza entre Ethereum y NEAR, repasemos nuestro ejemplo original nuevamente:
- Usando la interfaz de usuario de Rainbow Bridge, comienzo una transferencia de 20 DAI de Ethereum a NEAR.
- Cuando confirmo la primera de las dos transacciones en MetaMask, Rainbow Bridge se comunica con el conector ERC-20 en Ethereum (ya que DAI es un token ERC-20), que transfiere y bloquea 20 DAI en su bóveda. Estos DAI ya no están en circulación en la red Ethereum.
- Según los datos del encabezado en mi bloque de transacciones, la interfaz de usuario de Rainbow Bridge calcula una “prueba” criptográfica de que realmente bloqueé 20 DAI.
- Dado que a continuación vamos a pedirle a la red NEAR que cree un DAI basado en lo que acaba de suceder en Ethereum, primero esperamos a que el Relayer envíe alrededor de 20 encabezados de bloques Ethereum al LiteNode que se ejecuta en NEAR. Esto es por seguridad, de la misma manera que su intercambio de criptomonedas lo hace esperar algunas confirmaciones antes de usar sus fondos depositados.
- Después de esta espera, la interfaz de usuario de Rainbow Bridge nos permite dar el paso dos en el proceso: pedirle al conector ERC-20 en NEAR que cree 20 DAI nuevos para nosotros en la red NEAR.
- Cuando hacemos esta solicitud al conector ERC-20, proporcionamos nuestra prueba criptográfica que recibimos anteriormente, “probando” que bloqueamos 20 DAI en Ethereum.
- El conector ERC-20 en NEAR buscará nuestro encabezado de bloque Ethereum en el LiteNode que se ejecuta en NEAR y hará su propio cálculo independiente de la prueba criptográfica.
- Si la prueba que proporcionamos coincide con la prueba que calcula el conector ERC-20, entonces sabe que esos 20 DAI están bloqueados de forma segura en Ethereum, ¡y que fui yo quien lo bloqueó! CERCA y las entrega a mi billetera.
Cuando queremos transferir DAI de NEAR de nuevo a Ethereum, el proceso ocurre a la inversa, es decir, en lugar de bloquear 20 DAI en NEAR, los destruimos, lo que se conoce como “quema”, y luego proporcionamos la “prueba” de esa quema al Conector que se ejecuta en Ethereum. Al tener acceso a los bloques NEAR en el LiteNode que se ejecuta en Ethereum, valida nuestra prueba, libera 20 DAI de su bóveda y los envía a nuestra billetera.
¡Y así, en pocas palabras, es cómo funciona el Puente Arcoíris! Actualmente, es el único puente Ethereum en criptografía que funciona de esta manera, lo que le permite transferir activos sin permiso entre Ethereum, NEAR, y pronto, Aurora, sin tener que confiar en terceros. ¡Muy genial!
Otros pedazos y piezas
Here’s some interesting notes to go along with that overview:
-
- Aquí hay algunas notas interesantes que acompañan a esa descripción general:
- Dado que NEAR-to-Ethereum Relayer solo envía NEAR encabezados de bloque al Ethereum LiteNode cada 16 horas, hay un retraso de 16 horas entre los pasos uno y dos cuando se mueven los tokens en esa dirección. (Recuerde, esto se debe a que las tarifas de gas de Ethereum hacen que sea prohibitivamente costoso para el Relayer actualizar el LiteNode en cada bloque). Hay una serie de enfoques que nos permitirían reducir este retraso, y el equipo está trabajando activamente en eso.
- En NEAR, LiteNode almacena todos los encabezados de bloques de Ethereum anteriores. Para que el espacio de almacenamiento no se salga de control, LiteNode “poda” (elimina) los bloques que tengan más de dos semanas. Esto significa que si inicia una transferencia de Ethereum a NEAR y se va de vacaciones durante tres semanas entre los pasos uno y dos, no podrá completar su transferencia, porque los datos de Ethereum almacenados CERCA de la necesidad de verificar su “prueba” han sido eliminados!
- Una propiedad interesante del diseño de encabezado de bloque NEAR es que con un solo encabezado de bloque, podemos calcular el historial de bloques pasados durante un período bastante largo. Entonces, en teoría, LiteNode en Ethereum solo necesita un bloque NEAR; sin embargo, los conservamos porque los costos de gas necesarios para realizar la poda serían básicamente un desperdicio de recursos.
- El equipo que creó el Puente Arcoíris es el mismo que creó Aurora, el NEAR EVM. Dado que ese equipo se ha convertido en su propia entidad, el Puente Arcoíris pasará a estar bajo su administración para operaciones, mantenimiento y evolución futura.
- El equipo de Aurora está trabajando en la “finalización automática” del Rainbow Bridge, por lo que ya no tendrá que iniciar manualmente el paso dos de estas transferencias. Esto será muy conveniente para los usuarios (y significa que puede comenzar su transferencia de Ethereum a CERCA y luego irse de vacaciones).
- Las transferencias entre Ethereum y Aurora las realiza el Puente Aurora, que utiliza la misma tecnología central que el Puente Arcoíris, pero aumentada para manejar el paso oculto NEAR / Aurora en las transferencias.
- La interfaz de usuario y la experiencia de Aurora Bridge son diferentes a las de Rainbow Bridge y, en algún momento en el futuro, se armonizarán.
Aunque se han simplificado algunos detalles técnicos, ¡ahora tiene una comprensión fundamental de cómo funciona el Puente Arcoíris!
Para obtener una descripción detallada del Puente Arcoíris, puede leer este artículo y, para mantenerse al día con todo lo relacionado con Aurora, ¡asegúrese de seguir a Aurora en Twitter!