Ethereum 2.0 – acerca. La Fundación Ethereum está a la espera del evento más esperado en el mundo para una blockchain pública. Esto a pesar de la pandemia y el consiguiente pánico en los criptogramas. La transición de Etherea a la fase Serenity la llamó Ethereum 2.0.
Hay que esperar la llegada de Serenity / Ethereum 2.0. Disponible inicialmente desde enero de este año, la principal red de pruebas ya lleva un año funcionando. Esto no significa que no se haya trabajado activamente en ella. Tampoco, que su plan para alcanzar un nivel superior para esto tenga que terminar. (Ethereum 2.0 – acerca)
En marzo se produjo una escalada de la pandemia de coronavirus. También una auditoría completa para la especificación de todo el protocolo ETH 2.0. Esto es de la autoridad mínima (Informe de auditoría de seguridad de las especificaciones de Ethereum 2.0). El examen preliminar resultó sorprendentemente bien, a pesar de las importantes preocupaciones. Revela las debilidades y limitaciones del diseño. Pero también, abre el camino a un despliegue agudo. La auditoría culpó a los creadores de la pequeña parte del protocolo con una capa peer-to-peer. Especialmente un sistema de mensajería P2P que podría representar un posible nuevo vector de ataque. Igualmente, un sistema de ENR (Ethereum Node Records). También recuerda una pequeña coartada que, en la práctica, nunca ha probado la prueba de participación. Tampoco el sharding a tal escala. (Ethereum 2.0 – acerca)
Los Prismatic Labs son un equipo técnico que trabaja en la infraestructura técnica de Ethereum 2.0. El 16 de abril, pusieron a disposición de la red la tercera versión de la red de pruebas (Topaz). Si no aparecen problemas significativos en ella, podemos esperar en breve sólo la fase Diamante. No es más que un lanzamiento brusco de la red mainnet de Ethereum 2.0.
Por qué las expectativas de Ethereum 2.0 son tan altas
Ethereum se ve a sí misma como una plataforma descentralizada de código abierto para albergar contratos inteligentes. Por otro lado, la blockchain de Ethereum tiene muchas similitudes con la de bitcoin, pero difiere en aspectos fundamentales. El diseño ejecuta un código de programa y alberga cualquier aplicación descentralizada. Gracias a su popularidad, la red blockchain alcanzó sus límites con relativa rapidez. Hoy en día, muchas cosas no pueden funcionar, independientemente de la voluntad de pagar correctamente por su funcionamiento.
La actual Ethereum es la segunda mayor blockchain pública por la capitalización de mercado de su criptodivisa nativa. Tiene aproximadamente el doble de desarrolladores activos que Bitcoin. También, cuatro veces más que la mayoría de los restantes competidores más grandes (ver los informes Dev del año pasado de Electric Capital). (Ethereum 2.0)
No sólo los pioneros de la criptoindustria han trabajado con Ethereum durante mucho tiempo, sino que cada vez más aplicaciones y extensiones para Ethereum están formadas por empresas del negocio tradicional. Como ejemplo de todo, podemos mencionar las implementaciones independientes de Zero-Knowledge Proof para Ethereum, la primera de EY (parte del marco EY Ops Chain Public Edition), la segunda de ING Bank, ambas abriendo la puerta a un despliegue más masivo de la plataforma en las corporaciones. Ethereum 2.0 – acerca
Ethereum
Acronis, el gigante de las copias de seguridad y la recuperación de desastres, utiliza la blockchain Etherea como capa de respaldo para su servicio Notary Cloud. Su uso es principalmente para la notarización de datos, la firma electrónica y la verificación de archivos a escala empresarial. Existe incluso un consorcio para la estandarización de las aplicaciones empresariales de Ethereum (Enterprise Ethereum Alliance). En la actualidad, cuenta con cientos de miembros, entre los que se encuentran nombres como Microsoft, JPMorgan Chase, Santander, Accenture, ING, Intel y Cisco.
Pero todas las esperanzas y energías que se están depositando en Etherea se basan en un supuesto tácito. Ethereum resolverá su viejo problema de escalabilidad y seguridad. Mientras que la seguridad de Etherea nunca será completamente perfecta en principio, debido a la naturaleza Turing-completa de su lenguaje de programación, creando espacio para un mercado con auditorías y seguros de seguridad profesionales, el escalado de la red es un problema, pero no mientras se mantenga la naturaleza actual de blockchain. Y aquí es donde llega el primer cambio significativo esperado de Etherea 2.0: la fragmentación. Ethereum 2.0 – acerca
Soporte
Gracias a él, y a los cambios relacionados de otras capas, Ethereum debería ser capaz de soportar un orden de magnitud más significativo de tráfico y algunos usuarios durante los próximos años. El Ethereum actual consigue procesar entre 7 y 25 transacciones por segundo. Esto se debe a que no es principalmente un sistema de transferencia de transacciones no realizadas como Bitcoin. La concepción, desde el principio, fue una plataforma. Especialmente para alojar contratos inteligentes y ejecutar aplicaciones descentralizadas (ordenador global descentralizado). Claramente, es desafortunado e insostenible a largo plazo. (Ethereum 2.0)
El principal cambio visible que trae Ethereum 2.0 es el llamado sharding. Debería mejorar masivamente la escalabilidad de la blockchain de Ether. Además de la transición a un algoritmo de consenso distribuido llamado Casper. Se basa en la prueba de participación. Pero es algo por algo. ¿De qué se trata? ¿Cómo funciona? ¿Por qué hay tanta controversia en torno a él? Ethereum 2.0 – acerca
Un pequeño giro hacia el proof of stake
Una de las cosas que despierta curiosidad en todo el mundo que gira en torno a los blockchains públicos y a las criptodivisas es la transición de la red etérea a un consenso de prueba de participación que todavía no se ha desplegado en tal medida (y en un blockchain tan grande y activo), sino más bien, digamos, un prerrequisito necesario para los demás, y no el principal cambio significativo en sí mismo (aunque la economía PoS del sistema ETH 2.0 publica un artículo aparte), por lo que sólo lo discutiremos brevemente aquí.
Los sistemas PoS son a menudo criticados, especialmente por la gente de la comunidad bitcoin, por no comprar su poder de decisión por los costos que tuvo que incurrir fuera del sistema. Aún así, para el depósito que es parte del sistema desde el principio (normalmente un token nativo), por lo que el sistema es menos seguro. La realidad, sin embargo, es que, por ejemplo, las pequeñas blockchains PoS y PoW resultan peligrosas al menos. Sin embargo, PoS aún no se ha probado en la medida en que ahora se planea desplegar Ethereum 2.0.
La diferencia fundamental entre PoW y PoS es que PoW recompensa a los usuarios de la red de votos por hacer lo correcto, mientras que PoS se basa más en castigarte si haces lo incorrecto. Con un sistema PoW, hay que incurrir en altos costes (cuanto más altos, más segura es la red) para obtener la recompensa deseada dentro del sistema. Con PoS, el coste de obtener una bonificación es bajo, pero el sistema lo castiga severamente por intentar un fraude. Ethereum 2.0 – acerca
El diseño del sharding de Ethereum 2.0 en un vistazo
Como el propio nombre, que proviene del mundo de las bases de datos, sugiere, el propósito principal de la fragmentación es dividir una blockchain de rápido crecimiento, que se ha convertido en una garganta estrecha, en varias partes más pequeñas (shards), pero ¿qué consigue eso exactamente? Cuando se fragmenta una base de datos normal, una base de datos extensa se divide en muchas fracciones más pequeñas que luego pueden gestionarse fácilmente, aumentando rápidamente la velocidad de acceso a los elementos individuales. Sin embargo, no es tan sencillo con blockchain. Aunque a menudo se le llama base de datos, tiene una estructura concreta y funciona de forma un poco diferente. En una cadena de bloques se pueden separar dos cosas: el procesamiento de las transacciones y el estado de la cadena de bloques. Ethereum 2.0 se esfuerza por conseguir ambas cosas, lo que resulta en la capacidad de realizar más de 10.000 transacciones (con la ayuda de capas adicionales) por segundo, sin el riesgo de aumentar la centralización de los nodos. (Ethereum 2.0)
Para decirlo de forma muy sencilla hoy en día, cada nodo debe validar cada transacción por turnos. Esto forma parte del diseño de seguridad de la blockchain y garantiza una redundancia suficiente para que la red funcione incluso si una gran parte de la red falla, sin embargo, esto conduce a un considerable desperdicio de recursos (aunque sea intencionado) y crea una condición previa para crear cuellos de botella (lugares donde las transacciones se juntan antes de la extracción). La fragmentación funciona con la idea de que los nodos son más eficientes.
Red
La red se dividirá en un número óptimo de shards, que representa un compromiso razonable entre eficiencia y seguridad (hasta ahora se contempla una propuesta de 1024 shards), y cada uno de ellos verificará una parte diferente de las transacciones pendientes. Como nada cambia en el ordenamiento real de las ventas pendientes en un bloque ni en su tamaño, esta paralelización aumenta el rendimiento de la red más de mil veces. Además, con el despliegue de capas adicionales, como zk-rollups o plasma, el rendimiento global de las transacciones aumentará aún más. (Ethereum 2.0)
Hasta aquí, al menos una teoría muy simplificada en la que todo funciona perfectamente. Por desgracia, fragmentar una cadena de bloques es cualquier cosa menos sencillo. El problema es, por ejemplo, cómo garantizar que el procesamiento simultáneo de subconjuntos de transacciones dé lugar a una actualización correcta del estado de la red y que, al mismo tiempo, se garantice que el estado de la red así obtenido sea válido (recordemos las maniobras que suele hacer la blockchain pública) y definitivo (problema que, por lo general, resuelve la costosa prueba de trabajo acumulativa, que falta por completo en ETH 2.0). Por lo tanto, el sistema debe incluir un mecanismo que, por un lado, comparta las responsabilidades y, por otro, garantice que todos los datos sigan siendo válidos y su estado final, como es el caso de la actual blockchain de Ethereum. Al mismo tiempo, no debe convertirse en un vector más de ataque y en un punto centralizado de posibles fallos de todo el sistema.
Seguridad
En principio, esto debería funcionar de tal manera que todas las cuentas de usuario se asignen siempre a un fragmento específico, y todo se ejecute dentro de ellos de la misma manera que antes (la red se dividirá en varias minicadenas de Ethernet). Sin embargo, esto se complica cuando se crea el estado final. Para poder componerlo del todo, las transacciones tendrán que agruparse inicialmente en algunos paquetes de transacciones. Esto según el proceso de optimización automática. Luego, pasan por un doble proceso de validación, y sólo entonces pueden conectarse a la red principal.
Dado que la prueba de trabajo no funciona aquí, es decir, la verificación no la realiza el minero que adivinó el nonce, aquí funciona el principio de validación de las transacciones mediante la votación de los validadores asignados. La seguridad y la imparcialidad durante este proceso se realiza por varios medios adicionales.
Proceso
En primer lugar, las asignaciones de los validadores a los fragmentos son aleatorias y cambian regularmente. Si el bloqueador de la tapa aprueba el bloque de la transacción, debe ser aprobado por un comité separado. Esto ocurre en la cadena central (llamada faro). Debe ocurrir antes de su inclusión en la cadena de bloques principal. Mediante otra votación, se puede hacer mediante un contrato inteligente con el nombre de “sharding manager”. Sólo si esta votación se aprueba, se establecerá el enlace cruzado entre el shard y la cadena principal. Por lo tanto, el bloque de la transacción se convierte en una parte permanente de la cadena de bloques. Una vez que el mecanismo de verificación detecta que uno de los enlaces no es válido, toda la cadena de bloques queda invalidada. Al igual que la cadena hash de una blockchain no compartida. (Ethereum 2.0)
Si un atacante no sabe dónde nombrar, no puede coordinar un ataque con otros atacantes a tiempo. Esa es la lógica de asignar aleatoriamente validadores a un fragmento. En teoría, debería garantizar una seguridad suficiente. La propia cadena de balizas debería tener más funciones en el futuro. Más que gestionar todo el proceso y garantizar la aleatoriedad en la verificación y la finalidad de las transacciones. Sin embargo, estas son todavía la música del futuro lejano.
Como parte de nuestra descripción de la fragmentación, hasta ahora nos hemos centrado principalmente en la división de la cadena de bloques en fragmentos. También en su comunicación con la cadena principal (beacon chain). Aun así, debe ser capaz de realizar transacciones de forma relativamente rápida y segura directamente. Al menos para que el sistema funcione con la rapidez y eficacia previstas. También para poder referenciar los datos de los demás entre shards. Todo ello manteniendo una perfecta integridad de la red. Hay varios enfoques para este problema, pero ninguno es totalmente universal y práctico para todos los escenarios de la vida real. Sin embargo, la cuestión de la comunicación activa y segura entre fragmentos, manteniendo la integridad de toda la red, es tan compleja que no cabe en este artículo. Tendría que ser al menos el doble de largo.
La fragmentación también conlleva otros problemas. Uno de ellos es el reto de, por ejemplo, proporcionar información precisa sobre el estado de toda la red de blockchain. Esto para algunos clientes en un momento dado. También para la detección oportuna de fraudes. La fragmentación aporta un grado de complejidad mucho mayor al sistema. Ya no tenemos que lidiar con una sola blockchain, sino con todo el sistema de cadenas. Desde el punto de vista de la seguridad, nunca ha sido del todo una buena noticia. También en términos de previsibilidad del comportamiento. (Ethereum 2.0)
También es una paradoja interesante. El objetivo oficial de la transición de la actual Etherea a Ethereum 2.0 era lograr una mayor descentralización. Pero también resiliencia, seguridad, y sostenibilidad y simplicidad a largo plazo. Sobre cada uno de estos puntos, la llegada de la fragmentación señala un pequeño signo de interrogación.
Si quieres leer más sobre el funcionamiento de la red blockchain, entra aquí.