La red Ethereum es una de las blockchains más utilizadas del mundo. De hecho, también es uno de los mayores proyectos de código abierto del mundo, siendo go-ethereum uno de los mayores repositorios en Github.
Desde su primer lanzamiento en 2015, Ethereum ha ido avanzando hacia su objetivo final de convertirse en una especie de ordenador global descentralizado que algún día podría sustituir a muchas de las aplicaciones centralizadas que utilizamos en la vida cotidiana. Sin embargo, la comunidad y la red de Ethereum todavía tienen mucho trabajo que hacer antes de que este objetivo se haga realidad.
En este artículo vamos a analizar el progreso de Ethereum hasta el presente y hablaremos del próximo y muy esperado lanzamiento de la red Ethereum 2.0 o Senerity. Será la mayor y más completa actualización jamás realizada por la comunidad de Ethereum.
El desarrollo de Ethereum
Cuando la red Ethereum se lanzó por primera vez en 2015 y su hoja de ruta a largo plazo contenía cuatro fases diferentes. Cada fase está definida por un conjunto de propuestas de mejora de Ethereum (EIP - Ethereum Improvement Proposals). Se trata de propuestas presentadas y aprobadas por la comunidad de Ethereum. Las propuestas crean directrices que deben seguir los distintos clientes y desarrolladores de Ethereum.
- La primera etapa de Ethereum se llamó Frontier. Lanzada en 2015, fue la primera versión viva de la red. Frontier permitió a los usuarios y desarrolladores minar Ether, construir Dapps y herramientas, y experimentar con la nueva plataforma.
- La segunda etapa del desarrollo de Ethereum fue Homestead. Lanzada en marzo de 2016, Homestead fue la primera versión final o en estado de producción de la red Ethereum. Proporcionó muchas mejoras a los protocolos que se convertirían en la base de futuras actualizaciones y aumentó la velocidad de las transacciones.
- La tercera y actual etapa de desarrollo de Ethereum se llama Metrópolis. Metrópolis se ha dividido en dos versiones, Byzantium y Constantinople.
- Byzantium se lanzó en octubre de 2017 y es más ligero, más rápido y más seguro que las versiones anteriores. Algunas actualizaciones específicas incluyen precios de gas más predecibles y una programación más fácil para los desarrolladores. Byzantium también mejora la privacidad al permitir a los desarrolladores de Ethereum realizar una verificación eficiente en la cadena de zk-SNARKs. Se trata de un método que puede demostrar la verdad de un enunciado sin revelar nada más allá de lo que ese enunciado trata de demostrar. Por ejemplo, puedo demostrar a un amigo que conozco la contraseña de mi teléfono móvil, sin revelarle realmente esa contraseña.
- Constantinople pretende seguir desarrollando estas mejoras. Aunque la fecha original de lanzamiento de Constantinople estaba fijada para noviembre de 2018, los líderes y desarrolladores de Ethereum decidieron posponer su lanzamiento hasta 2019. La bifurcación se lanzó finalmente el 28 de febrero de 2019 en el bloque 7.280.000.
- La cuarta y última etapa, en principio, de Ethereum se conoce como Ethereum 2.0 o Serenity. Se trata de la actualización más ambiciosa hasta el momento y se supone que mejorará casi todos los aspectos de la red. Se suponía que Ethereum 2.0 se lanzaría en cuatro fases entre 2019 y 2021, aunque este calendario ha sido modificado por los retrasos.
Problemas actuales de Ethereum
Para comprender plenamente la magnitud e importancia de Eth 2.0, primero tenemos que examinar los principales problemas a los que se enfrenta la red Ethereum actual, los problemas que Eth 2.0 intenta resolver.
Escalabilidad
El problema más importante al que se enfrenta actualmente la red Ethereum es la escalabilidad. La red Ethereum soporta cientos de aplicaciones descentralizadas y necesita procesar un elevado número de transacciones por segundo.
Añadir más nodos no aumenta la escalabilidad de la red porque cada nodo necesita verificar cada transacción. El aumento del uso de la red Ethereum, incluyendo la creación de más Dapps y la ejecución de más transacciones, ha llevado a un aumento continuo del tiempo y el coste de las transacciones. Esto hace que la red Ethereum sea más lenta y menos cómoda de usar. Actualmente, la red alcanza unas 20 transacciones por segundo. En comparación, redes centralizadas como PayPal y Visa realizan regularmente 193 y 1.667 transacciones, respectivamente, y la capacidad máxima de Visa se acerca a las 24.000. Para que la red logre una adopción masiva, es necesario realizar esfuerzos para aumentar masivamente la velocidad de las transacciones.
Tras investigar otras opciones, el equipo de Ethereum se decantó por un proceso llamado sharding como la mejor solución para la escalabilidad de la red. Las soluciones fuera de la cadena, como las cadenas de plasma y los canales de estado, también se utilizarán probablemente para aliviar la carga de la red principal y aumentar aún más la escalabilidad.
Eficiencia y sostenibilidad medioambiental
Al igual que Bitcoin y muchas otras redes blockchain, Ethereum se basa actualmente en un protocolo de consenso de prueba de trabajo (PoW) para garantizar la seguridad de su red. Los sistemas PoW necesitan un número elevado de mineros con un hardware informático muy potente conectado a una red blockchain. Los mineros son recompensados por poner su hardware a disposición de la red. Un algoritmo establece un valor objetivo para cada nuevo bloque, y los mineros compiten para ser los primeros en encontrar este objetivo y añadir el nuevo bloque.
Una de las principales ventajas de los sistemas PoW es que verificar si un nuevo bloque pertenece o no a la cadena es un proceso muy rápido y relativamente sencillo. Sin embargo, para garantizar la seguridad de la red y evitar el fraude, es computacionalmente caro para los mineros encontrar la entrada de hash correcta. Esto se ve agravado por el hecho de que solo un minero encontrará el hash correcto, por lo que el trabajo realizado por todos los demás no se utiliza realmente. Como resultado, el consenso PoW requiere una enorme cantidad de potencia computacional y electricidad y es muy ineficiente.
En estos momentos, cada transacción en la red de Ethereum utiliza cerca de unos 30 kWh (kilovatios hora), electricidad suficiente para alimentar un hogar español durante unos 5 días. De hecho, la minería de Ethereum utiliza anualmente la misma cantidad de energía que el país de Bolivia.
La exorbitante cantidad de energía que necesita el protocolo PoW de Ethereum reduce la rentabilidad de la minería y tiene graves consecuencias negativas para el medio ambiente y la sostenibilidad del sistema a largo plazo.
Descentralización
Los protocolos PoW son importantes porque permitieron la creación de las primeras redes de blockchain, pero son muy ineficientes. También son susceptibles de monopolizar el mercado porque otorgan ventajas injustas a los actores con más recursos. Las personas y organizaciones ricas y poderosas pueden permitirse un mayor número de ordenadores mucho más rápidos y potentes, lo que les da una probabilidad mucho mayor de resolver con éxito cada problema criptográfico y obtener la recompensa.
Los mineros de Bitcoin utilizan costosos y especializados circuitos integrados de aplicación específica (ASIC) que han llevado a la industrialización y la centralización parcial de la minería de Bitcoin. Dado que la minería de Ethereum suele realizarse con tarjetas gráficas o GPU que se encuentran en muchos ordenadores domésticos, el riesgo de la minería centralizada no es tan grande aquí como en Bitcoin. Sin embargo, recientemente se han lanzado ASIC para Ethereum, y la minería de Ether sigue estando en peligro de centralización y monopolización debido al protocolo PoW en el que se basa actualmente.
Esto ha creado una situación en la que Bitcoin, Ethereum y otras redes de blockchain no están tan descentralizadas como se pretendía originalmente, lo que pone en peligro su independencia y utilidad. Eth 2.0 está diseñando la transición de la red de un protocolo de prueba de trabajo a un protocolo de prueba de participación (PoS o proof of stake) llamado Casper, que busca resolver este problema de eficiencia y sostenibilidad.
Esta transición será cada vez más importante debido al ajuste de minería de la bomba de dificultad que se introdujo en 2017 a través de la actualización de Byzantium. La bomba hará que la minería de Ether sea cada vez más difícil hasta que finalmente se vuelva inviable. Este dispositivo se introdujo en previsión de la transición de Serenity de PoW a PoS y es otra razón por la que la actualización es tan importante para la comunidad de Ethereum.
Velocidad y facilidad de uso
Está relacionado con la escalabilidad, pero no es lo mismo. El shardening o fragmentación debería eliminar el cuello de botella más importante para la velocidad y el rendimiento de las transacciones, pero otro cuello de botella es el causado por la propia Máquina Virtual de Ethereum (EVM - Ethereum Virtual Machine).
La EVM es esencialmente la estructura subyacente de Ethereum que ejecuta el código y permite que la red funcione correctamente. La EVM es responsable del estado interno de la red Ethereum y de todos sus cálculos. La EVM también garantiza la exactitud de la información de las cuentas, como los saldos, el precio actual del gas, las direcciones y la información de los bloques.
Además, la máquina debe hacer un seguimiento de los siguientes componentes: información de bloques, estado de almacenamiento, estado de la cuenta e información del entorno de ejecución. La máquina virtual también se ocupa de todos los contratos inteligentes de Ethereum que se escriben en Solidity/Vyper y se compilan en un bytecode único de la EVM. Esto significa que contratos son ejecutados por cada nodo de la red.
Debido a que es responsable de muchos aspectos importantes de la red Ethereum, la velocidad con la que la Máquina Virtual es capaz de realizar las tareas tiene un efecto importante en la velocidad general y la usabilidad de la propia red. La solución a este cuello de botella avanzada por Eth 2.0 se llama Ewasm (Ethereum wasm).
Wasm es un conjunto de instrucciones de estándar abierto del W3C Community Group que actualmente está siendo desarrollado por ingenieros de Google, Mozilla, Microsoft y Apple. Además de aumentar la velocidad y el rendimiento, Ewasm incrementará la seguridad y la facilidad de uso de la red Ethereum, y otorgará otros beneficios.
Otros objetivos adicionales de Eth 2.0
Como ya sabemos, Ethereum 2.0 está diseñado para resolver los principales problemas del Ethereum actual. Sin embargo, la innovación no se detiene aquí. Serenity también se está construyendo para satisfacer varios objetivos de diseño más generales.
Debido a los numerosos sistemas nuevos y complejos que surgirán de la introducción de Casper y Sharding, uno de los principales objetivos de diseño de Eth 2.0 es reducir la complejidad de la red en la medida de lo posible, aunque esto conlleve cierta pérdida de eficiencia. Esto es posible porque el aumento masivo de rendimiento y eficiencia que permiten Sharding, Casper y Ewasm compensará una pequeña reducción de la eficiencia para mitigar la complejidad adicional que requieren estos mismos sistemas.
Otro objetivo de diseño es utilizar criptografía y técnicas de diseño que permitan la participación de un gran conjunto de validadores, tanto en total como por transacción.
Un tercer objetivo adicional es crear un sistema que permita que un ordenador portátil de consumo estándar procese y valide un fragmento individual. Ambos objetivos pretenden garantizar que la red siga siendo segura y descentralizada.
Serenity también cuenta con un diseño de tal manera que la red sea capaz de permanecer online en caso de un porcentaje muy grande de nodos se desconecta simultáneamente.
Por ejemplo, esto también sería importante en situaciones como catástrofes relacionadas con el cambio climático que podrían dejar fuera de servicio a una gran parte de los nodos en cuestión de horas, o una gran potencia como China o Estados Unidos podría decidir prohibir Ethereum y otras redes blockchain, e intentar eliminar los nodos de su país.
La otra contingencia que anticipa Eth 2.0 es la llegada de la computación cuántica. Actualmente existe una carrera tecnológica entre Estados Unidos, China y otras grandes potencias y corporaciones para ser los primeros en inventar un ordenador cuántico de producción. En este momento, la cuestión no es si lo habrá, sino cuándo.
Cuando lleguen, los ordenadores cuánticos serán exponencialmente más potentes que los ordenadores tradicionales más avanzados. Esto hará que la mayor parte de la ciberseguridad existente, incluida la tecnología de encriptación y blockchain, sea relativamente indefensa y fácilmente hackeable. Por lo tanto, es importante que las nuevas y futuras redes de blockchain hagan todo lo posible (dentro de los límites de la computación binaria tradicional) para protegerse contra la eventualidad de los ordenadores cuánticos. El objetivo final del diseño de Eth 2.0, tal y como se expone en el repositorio github de Ethereum, es “seleccionar todos los componentes de manera que sean seguros desde el punto de vista cuántico o que puedan cambiarse fácilmente por sus homólogos seguros desde el punto de vista cuántico cuando estén disponibles”.