La red de Ethereum fue lanzada en 2015 con el objetivo de ser una «computadora de blockchain». Durante los últimos tres años, la Fundación Ethereum ha trabajado para lograr convertirse en «la computadora del mundo», como argumenta su comunidad.
Durante estos años se procesaron más de 240.000.000 de transacciones; 1.552 aplicaciones descentralizadas fueron lanzadas en la red y la comunidad creó más de 35.000.000 de direcciones de carteras, pues, a pesar de estar concebida principalmente como una blockchain para aplicaciones, su criptomoneda es la segunda por capitalización del criptomercado.
Planteando convertirse en la computadora blockchain del mundo, los retos que debe sortear el proyecto de Ethereum son numerosos. Cada vez es más evidente la necesidad de procesar un mayor número de transacciones por segundo para evitar congestionamientos en la red, por ello el foco de los desarrolladores de Ethereum está en crear soluciones al respecto.
Las soluciones de escalabilidad
La escalabilidad es un término referido a la adaptación deseable de la red a un gran número de usuarios sin perder su calidad, es decir, manejar de forma tal su crecimiento que ninguno de los atributos de la misma se vea afectado. En el caso de la blockchain de Ethereum, ahora mismo la red solo puede procesar entre 7 y 15 transacciones por segundo, mientras que la compañía financiera Visa tiene la capacidad de procesar hasta 24.000 transacciones en la misma cantidad de tiempo. Esto quiere decir que, al momento, la blockchain de Ethereum no es lo suficientemente competitiva para equipararse a esa plataforma en número de usuarios, pero podría.
Para combatir este problema, están siendo desarrollados varios proyectos. Entre ellos, podemos destacar cuatro: Sharding, Plasma, Casper y Raiden.
Sharding
Sharding es un protocolo que parte de una estrategia para escalar la red de Ethereum en los próximos tres años, según declaró Vitalik Buterin, cofundador de la red, en 2017.
La propuesta es solucionar el congestionamiento de la red modificando su segmentación y dividiendo la validación entre distintos grupos de nodos para regresar la “eficiencia” a la red. La distribución que propone el protocolo Sharding funciona de forma tal que cada nodo validará solo una parte de las transacciones. Al redistribuir la forma de validación, la red de Ethereum estaría en la capacidad de procesar nuevos bloques entre cada 2 y 8 segundos.
Implementando Sharding en la cadena principal Ethereum, esta estaría funcionando con una cadena secundaria. Los nodos de esta cadena secundaria funcionarán como notarios, y luego de una cierta cantidad de bloques agregarán su firma a la cadena principal.
De esta manera, la red principal seguirá conteniendo toda la información, pero los nodos de la cadena secundaria no necesitan almacenar la blockchain completa. Esto quiere decir que los equipos de usuarios interesados en participar en la minería no necesitan almacenar la totalidad de la cadena de bloques, por lo que se prevé que será más económica la validación de transacciones.
Buterin anunció pruebas de concepto con este protocolo a finales de abril de este año y aseguró que una vez el protocolo Casper sea implementado completamente, esta cadena secundaria será implementada gradualmente. Esto, debido a que Sharding funciona con el algoritmo de Prueba de Participación (PoS) en lugar de Prueba de Trabajo (PoW).
Casper
Casper es un algoritmo de consenso que cambiará cómo funciona la minería de Ethereum, pues implementa la migración de la PoW a PoS, en principio de forma híbrida.
Antes de explicar el avance de Casper, hay que definir que la Prueba de Trabajo (PoW) consiste en la resolución de problemas criptográficos mediante la ejecución de difíciles cómputos que generan un fuerte gasto eléctrico, lo que se traduce a un gran costo operacional. Este es el protocolo con el que se minan la mayoría de las criptomonedas.
Por su parte, la Prueba de Participación (PoS) pretende disminuir los costos eléctricos y de los equipos aplicando un nuevo algoritmo de minería que incluye la figura del validador. Dicha figura debe contar con algunos ether que serán usados como garantía para el procesamiento del bloque, utilizando zk-SNARKs se determinará la veracidad de los mismos y el validador recibirá una recompensa proporcional a la garantía realizada.
Casper está planteado como algoritmo de consenso para un sistema híbrido entre el PoW y el PoS al comienzo La propuesta es aplicar una prueba de participación cada 100 transacciones para evaluar progresivamente el desempeño de los parámetros de trabajo. Siendo un mecanismo creado para revisar la emisión maliciosa de transacciones, una vez se procesen las 100 transacciones será necesaria una firma que valide la veracidad de ese bloque por parte de los participantes en el pool de los validadores. Dicha firma es sinónimo de garantía.
Cabe destacar que el pasado 8 de mayo los desarrolladores de Ethereum publicaron en el repositorio de código GitHub la versión 0.1.0 de Casper. Esta publicación dio a conocer algunos aspectos sobre la nueva figura del validador, destacando que el monto mínimo para participar como validador en el protocolo Casper será de 1.500 ETH, una elevada suma que responde a la poca cantidad de nodos que se utilizarán en la prueba. Sin embargo, luego de la implementación completa, en conjunto con sharding, el monto se reducirá a unos 32 ETH.
Asimismo, introdujeron la función del slashing o denuncia de transacciones maliciosas. Esta función premiará a la comunidad, incentivándola a mantener una red segura, pues el creador del primer reporte de una transacción maliciosa recibirá una recompensa del 4% de la transacción.
El estimado para la aplicación de Casper y PoS es de dos años, cuando la red de Ethereum se encuentre en su etapa final, Serenity. A pesar de ello, desde enero de 2018 el equipo desarrollador realiza pruebas en su testnet.
Plasma
Otra de las soluciones potenciales a la escalabilidad de Ethereum es Plasma, una técnica de segunda capa creada para mejorar para los contratos inteligentes de la red.
La solución fue anunciada en agosto del 2017 como un marco de trabajo para la generación de contratos inteligentes autónomos, llamados Plasma Contracts (Contratos Plasma). La idea inicial desarrollada por Vitalik Buterin y Joseph Poon planteaba la reducción de datos incluidos en la cadena principal, haciendo uso de una cadena hija (similar al Sharding) con contratos inteligentes para transmitir los datos de forma más rápida y eficiente.
Plasma es un marco para la construcción de cadenas laterales que dependen de la cadena de bloques principal para su máxima seguridad; esto permite tomar gran parte del volumen de transacción y moverlo a cadenas laterales específicas de aplicación con poco compromiso de seguridad o fungibilidad.
Nick Johnson
Desarrollador
Además, Plasma Cash se conoció en marzo cuando Buterin aseguró que con esta solución los usuarios de la red no estarían en la necesidad de descargar y autenticar cada bloque, sino que podrían enfocarse solo en aquellos bloques que contengan fondos sobre los cuales exista un interés de hacer seguimiento. Esto, sin confundir la técnica con la fragmentación en “cadenas laterales homogéneas” del Sharding.
Nick Johnson, desarrollador de Ethereum Foundation, comentó a ETHNews que Plasma es actualmente la solución de escalabilidad más viable, por ser menos compleja que Sharding, aun cuando esta última brindaría más escalabilidad.
Por su parte, Vitalik Buterin comentó a través de un tuit que Plasma podría ayudar a soportar un «banco central» de moneda digital ERC20, un panorama que facilita el ritmo de procesamiento de criptomonedas nacionales como de Islas Marshall, Venezuela, Irán e incluso India.
Plasma implementations being almost ready 🙂
The base layer for a central bank currency having $5 txfees is ok; it is after all only a settlement layer
— Vitalik Non-giver of Ether (@VitalikButerin) 11 de julio de 2018
Hay que tener en cuenta que el proyecto Plasma introdujo el Plasma MVP (producto mínimo viable de Plasma), que funcionará en la cadena lateral con tokens ERC20, nombrados acá como PETH. Dichos PETH se pueden intercambiar por ethers utilizando un contrato plasma en la cadena secundaria, a través de una Prueba de Autoridad (PoA) donde solo el “operador plasma” podrá aprobar la transacción.
La Prueba de Autoridad constituye un mecanismo más centralizado que el de la cadena principal de Ethereum, que aún se encuentra en fase de pruebas y que compagina con los principios poco descentralizados que manifiestan las criptomonedas nacionales. Por ello, se puede decir que constituye un nuevo riesgo para la comunidad de Ethereum, que actualmente ya enfrenta problemas de centralización.
Raiden Network
Raiden es una propuesta de escalabilidad concentrada en los micropagos de Ethereum, que tiene más de dos años en pruebas. La red de micropagos de Ethereum funciona con tokens ERC20 basada en una red de pagos bidireccional donde se transfieren datos a una cadena secundaria. De esta forma, resulta bastante similar a Lightning Network en Bitcoin.
Al momento, se han realizado varias pruebas con Raiden, siendo la más reciente iniciada hace 10 días para resolver “problemas menores” y detectar posibles errores con los “canales estado” antes de la redirección.
La red Raiden funciona con canales estatales a los que ambas partes del intercambio deben ingresar y realizar una serie de transacciones privadas. Al finalizar, saldrían del canal y solo se agregarían a la cadena principal los balances finales. La primera prueba en Raiden ocurrió en noviembre de 2017, cuando intentaron probar una estructura de seguridad externa para la solución.
Hay que mencionar que las propuestas de escalabilidad de Ethereum no acaban con estas cuatro, pues aún falta un gran trayecto para lograr una solución que simplifique la complejidad de esta blockchain. Sin embargo, el proyecto de Ethereum se ha ganado la confianza de diferentes actores del ecosistema desde sus inicios.
Imagen Destacada por monsitj / stock.adobe.com
4