-
El desafío de la propuesta está en evitar bifurcaciones.
-
Las confirmaciones irreversibles en Ethereum 1.0 actualmente toman más de 2 horas.
Ethereum 2.0 (o ETH 2.0) no ha llegado del todo, y ya están pensando en nuevas optimizaciones. Recientemente, Vitalik Buterin, cocreador de Ethereum, junto con un grupo de desarrolladores, lanzó una propuesta con la que pretende establecer transacciones irreversibles en ETH 2.0 en un periodo de 12 segundos.
La propuesta tuvo lugar este 24 de enero. Buterin, en una entrada en el blog de Ethereum.org, publicó los detalles de esta implementación.
Aspectos técnicos de la propuesta
En primer lugar, hay que detallar que la noción de bloque que comúnmente se conoce dentro de Bitcoin o la versión actual de Ethereum, cambia para lo que es Ethereum 2.0. Esto se debe a que se implementan nuevos conceptos como son los slots.
Dentro de la cadena de bloqueS de Bitcoin, un bloque contiene la información de cierta cantidad de transacciones, la cuales, al ser confirmado el bloque, quedan plasmadas en la blockchain, para siempre. Para Ethereum 2.0 se han implementado los slots, periodos de 12 segundos en los que se puede, o no, confirmar un bloque.
En un periodo de entre 64 y 94 slots, se completa lo que puede considerarse otro tipo de «bloque», ya que, en el siguiente ciclo de slots, la cabecera del bloque utiliza el hash del último slot del «bloque» anterior. Este proceso ocurre en redes como la de Bitcoin, en que cada bloque apunta al bloque anterior y forma lo que se conoce como «cadena de bloques».
Debido a estos complejos procesos de confirmación, los tiempos de finalización, en los que una transacción puede considerarse como irreversible dentro de la blockchain de Ethereum 2.0, tardan alrededor de 15 minutos. Este es el tiempo promedio que ocupan completarse los 64 slots.
Si bien 15 minutos podría considerarse un tiempo dentro del promedio, ya que Bitcoin utiliza un tiempo de 10 minutos por bloque, Vitalik Buterin desea bajar esta confirmación (considerada irreversible) a solo un slot. Es decir, solo 12 segundos.
Una mejor experiencia de usuario en Ethereum 2.0
Para Vitalik Buterin, reducir los tiempos de finalización a 12 segundos ofrecerá una mejor experiencia de usuario, fortalecerá la seguridad de la red y reducirá los errores dentro del protocolo. Esto dentro de Ethereum 2.0 con prueba de participación (PoS).
Sobre la experiencia de usuario, en teoría, quienes utilicen Ethereum 2.0, podrán recibir pagos con tiempos de espera de 12 segundos para que la transacción sea irreversible.
El portal HowManyConf mide la cantidad de confirmaciones que una transacción en una determinada blockchain debe tener para que sea tan segura como 6 confirmaciones en Bitcoin (que es un nivel de seguridad aceptable). A Ethereum, actualmente le toma 2 horas y 39 minutos (o 709 confirmaciones). Esto bajo el protocolo de consenso prueba de trabajo (PoW) en la versión 1.0 de la red.
Cómo lograr reducir los tiempos de confirmación
Para Vitalik Buterin, la solución a este tipo de aceleración en los tiempos de confirmación está en crear «super comités». Estos serían un sub grupo de validadores dentro de la red de Ethereum 2.0, con poder para validar las transacciones más rápido.
Cada grupo de «super comités» se encargaría de validar los bloques dentro de un slot, lo que permite que no se deba cumplir con una ronda completa de 64 slots para que un bloque se valide.
Los validadores serían elegidos de forma aleatoria según cada ciclo, de los cuales irán alternándose con el paso de los bloques confirmados.
Con confirmaciones en cada slot, y con validaciones de la red por parte de los «super comités», Vitalik Buterin espera que el coste de algún tipo de ataque sea inviable, debido a que un validador malintencionado deberá quemar su cuota de 32 ETH —monto mínimo para convertirse en validador de Ethereum 2.0— para atacar la red.
Sobre la cantidad de validadores que podrán conformar un «super comité» no es especificada dentro del documento, sin embargo, se detalla que serán «unos pocos miles» dentro de cada comité.
Otra idea es aumentar la cantidad de validadores, asignándole «trozos» de confirmación de la red. Esto debido a que la Beacon Chain (cadena de bloques de Ethereum 2.0) está pensada para funcionar en consonancia con las cadenas laterales. De esta forma se podría operar de un modo más óptimo para acelerar las confirmaciones. Sin embargo, esta implementación requiere un aumento en la cantidad de validadores de Ethereum 2.0, cuyo número actualmente se encuentra sobre los 280 mil.
Desafíos de esta implementación
Según expone Vitalik Buterin en el documento original, para lograr esto se deben afrontar múltiples desafíos. En primer lugar, se encuentra el cambio de protocolo en Casper, cuyo algoritmo se encarga de realizar las finalizaciones cuando se cumple el lapso de mínimo 64 slots.
Otro de los desafíos es encontrar formas de desmotivar ataques de 51% a la red. En esto entraría en juego la cantidad de validadores que se elijan dentro de un «super comité».
Por ahora, según expresa el propio documento, no se ha fijado una hoja de ruta para esta implementación. Actualmente solo se considera una propuesta, esto teniendo en cuenta que Ethereum 2.0 aún no está plenamente operativo y, como ya lo ha reportado CriptoNoticias, parece que podría atrasarse un año más, siendo su fecha de llegada 2023.