La red ETH 2.0 y Testnet: explicación sencilla

A principios de este mes, el equipo de Prysmatic Labs lanzó la red de prueba pública más completa para la primera fase de la red Ethereum 2.0 que utiliza el cliente Prysm. El lanzamiento fue bien recibido por la comunidad Ethereum. Muchos comenzaron inmediatamente a ejecutar el software y a informar problemas al equipo de Prysmatic Lab. La cantidad de nodos de validación en la red de prueba Ethereum 2.0 superó rápidamente los 800 nodos. Esto simplemente muestra el exuberante deseo de la comunidad de Ethereum de contribuir al progreso de Ethereum en la tan esperada actualización de la red Ethereum 2.0.

Para llevar esta emoción aún más lejos, es necesario educar a la comunidad Ethereum en general sobre la red de prueba Ethereum 2.0, por qué su lanzamiento es un hito crucial y por qué tomó mucho tiempo alcanzar este hito. Este artículo es un esfuerzo por cumplir este papel desmitificando los detalles técnicos y articulándolos en un lenguaje simple. Comienza discutiendo en qué se diferencia Ethereum 2.0 de la red Ethereum actual y luego pasa a una explicación de alto nivel de la funcionalidad de la red de prueba.

¿Por qué la actualización de Ethereum 2.0 está tardando tanto?

Para responder a esta pregunta, comencemos con un hecho simple pero importante:

Ethereum 2.0 no es una actualización de la red Ethereum actual. En cambio, es una revisión y un rediseño completo de Ethereum.

Muchos desconocen este hecho, o incluso pueden estar en desacuerdo con esta caracterización. Por eso es importante aclarar.

Si bien existen muchas diferencias entre Ethereum 1.0 y 2.0, las que se discuten son los puntos principales. Esto ejemplifica la cantidad de trabajo que se necesita para entregar Ethereum 2.0.

¿Por qué es importante el lanzamiento de Ethereum 2.0 Testnet?

Como se puede ver en las diferencias discutidas, el diseño de Ethereum 2.0 tiene muchas piezas móviles que deben combinarse y ajustarse para que la máquina funcione. Muchos aspectos y conceptos de Ethereum 2.0 son completamente nuevos y no se han probado en ninguna cadena de bloques pública antes, como el mecanismo de consenso de Casper.

Los protocolos que intentan alcanzar objetivos similares como Cosmos y Polkadot requirieron más de 2 años para llegar a un diseño funcional y, al mismo tiempo, tener la flexibilidad de comenzar desde cero. Estos proyectos no tenían que preocuparse por transferir activos como ETH y otros tokens ERC-20 de la cadena anterior a la nueva cadena o preocuparse por reducir el impacto de los cambios en los desarrolladores de dApp. La comunidad de Ethereum necesitaba ver los pasos reales en el proceso de migración de Ethereum para ganar confianza en la ejecución de la hoja de ruta.

¿Qué se implementa en Ethereum 2.0 Sapphire testnet?

Volviendo a las cuatro diferencias mencionadas anteriormente entre Ethereum 1.0 y 2.0, testnet implementa # 1, # 2 y # 4 y parcialmente # 3. Específicamente, Sapphire testnet ha implementado el mecanismo de consenso de Casper PoS con nuevas reglas de selección de bifurcaciones, ha implementado la cadena de balizas maser y, finalmente, ha implementado un mecanismo para transferir tokens ETH 1.0 a tokens ETH 2.0 para su uso en la red de prueba. La red de prueba aún no ha implementado los 1024 fragmentos o el mecanismo para que los fragmentos se comuniquen a través de (Comunicación entre fragmentos).

Otra pieza notable que falta en la red de prueba es la implementación de la funcionalidad de contrato inteligente Ethereum, que está programada para la fase 2 de la hoja de ruta. Los contratos inteligentes requieren la migración de la máquina virtual Ethereum (EVM) o la implementación de una alternativa sugerida (WASM) en el protocolo Ethereum 2.0.

¿Cómo funciona la red de prueba Ethereum 2.0?

Ethereum 2.0 es una red de PoS que tiene validadores que apuestan tokens para operar y producir bloques para la red. Por lo tanto, la primera pieza del rompecabezas es asignar tokens a los validadores para que puedan operar.

La red Ethereum 2.0 eventualmente usará los mismos tokens ETH valiosos que tenemos hoy, estos tokens deben transferirse a la nueva red Ethereum 2.0. Para probar esta funcionalidad de transferencia, los desarrolladores de Prysmatic Labs han utilizado la red de prueba Ethereum 1.0 falsa llamada Goerli, donde cualquiera puede obtener tantos ETH falsos como quiera, y ha desarrollado un contrato inteligente (llamado contrato de depósito) que retiene indefinidamente cualquier token ETH depositado en él. Una vez que se completa el depósito, Beacon Chain emite la misma cantidad de ETH que los tokens ETH 2.0. Para simplificar, llamaremos tokens ETH 2.0: Beacon Chain ETH (bETH).

El movimiento de ETH 1.0 a bETH se realiza siguiendo los siguientes pasos:

3. En la red Ethereum 1.0 Goerli, el usuario envía 3.2 ETH (en realidad será 32 ETH) al Contrato de depósito para participar en la validación de Ethereum 2.0. Esto efectivamente quema los tokens ETH 1.0.

4. La cadena de balizas Ethereum 2.0 observa la deposición de tokens en el contrato de depósito y emite la misma cantidad de tokens bETH a la cuenta de validación recién creada. Ahora, el validador está listo para participar en el proceso de validación una vez que pase un retraso de tiempo de seguridad. Este retraso se utiliza para preservar la seguridad de Beacon Chain.

5. El cliente del validador comienza a participar en la operación de consenso y gana recompensas de validación por su trabajo o se reduce si no sigue las reglas del protocolo.

¿Cuál es exactamente el trabajo de los validadores?

En Eth 2.0, los bloqueos ocurren cada 6 segundos (en comparación con ~ 15 segundos en la red PoW actual). En cada bloque, un validador del grupo de validadores propone un bloque. Varios otros validadores verifican el bloque propuesto y dan fe de su exactitud. Para cada bloque siguiente, un validador diferente propone el bloque y un grupo diferente de validadores da fe de la corrección del bloque.

Cada período de 64 bloques (llamado época), todos los validadores se mezclan para cambiar los proponentes de bloques seleccionados y los atestiguadores para cada bloque. Asistido con la generación de números aleatorios para la selección de validadores, esta mezcla esencialmente evita la colusión de validadores y mejora la seguridad del protocolo.

Los validadores deben estar en línea todo el tiempo para ejecutar las tareas que se les asignan. Cuando hacen estas tareas de manera honesta, son recompensados ​​con tokens BETH recién acuñados. Si los validadores se portan mal, se confabulan o se desconectan, sus tokens apostados se reducen o se filtran. Cuando el saldo de un validador disminuye por debajo del umbral de validación (3,2 bETH en la red de prueba), lo expulsan del grupo de validadores y no pueden participar en el proceso de validación.

¿Qué sigue?

La red de prueba Sapphire es solo un paso en el largo camino para llegar al destino de Ethereum 2.0. Implementa la Fase 0 de la hoja de ruta Ethereum 2.0. Hay dos fases más que deben completarse antes de que Ethereum 2.0 sea completamente funcional.

Pero incluso para la fase 0 de la red de prueba, todavía queda mucho trabajo por delante antes de que la fase 0 se lance en la red principal. En primer lugar, estos son los primeros días de la red de prueba y hay muchos problemas y errores que deben solucionarse. En segundo lugar, esta es una red de prueba de un solo cliente. Otros equipos están trabajando para implementar otros clientes en la red Ethereum 2.0, es decir, Nimbus y Lighthouse, para lograr una red de prueba multicliente. En tercer lugar, las especificaciones de la Fase 0 permiten la transferencia de BETH entre diferentes cuentas, esta funcionalidad aún no está disponible. Finalmente, todavía hay cambios menores en curso en las especificaciones de la Fase 0 por parte del equipo de investigación de la Fundación Ethereum. Estas especificaciones deben finalizarse, implementarse por completo y auditarse en los múltiples clientes de Ethereum 2.0 antes del lanzamiento de la red principal de fase 0, con suerte antes de finales de 2019.

En conclusión, el lanzamiento de testnest fue un paso crucial en la hoja de ruta para entregar Ethereum 2.0. Su importancia proviene de la participación pública de la comunidad Ethereum para probar la red, identificar los problemas y los cuellos de botella y, por lo tanto, guiar a los desarrolladores de Ethereum 2.0 para abordarlos. El lanzamiento ha aumentado significativamente la confianza de la comunidad en la hoja de ruta de Ethereum 2.0. Además, la Fundación Ethereum ha anunciado que están asignando $ 19 millones para respaldar el desarrollo de Ethereum 2.0 y otras soluciones de escalabilidad de Ethereum. Estos recursos permitirían un progreso más rápido de los esfuerzos de desarrollo y prueba.