¿Qué son las Rollups? La solución de escalabilidad de Ethereum

Tiempo de lectura: 4 minutos

Desde los primerísimos inicios de las criptomonedas, con Bitcoin, una pregunta resonó en las discusiones de los escépticos, y también de los apasionados: «¿Cómo vamos a escalar la blockchain

Como la blockchain consiste en un registro distribuido de transacciones, no puede permitir muchas transacciones o acabará centralizándose (pocos podrían mantener el registro por su alto coste). La posibilidad de no depender de terceros (correr un nodo) es mermada si la blockchain crece en exceso. Como dato curioso, ¡la primera de todas las críticas que recibió Bitcoin (en 2008) fue por la escalabilidad!

Después de muchos años hemos llegado a un punto avanzado en la investigación de la escalabilidad. En este panorama podemos distinguir 3 grandes soluciones (llamadas de segunda capa) con sus propios «tradeoffs» o desventajas. Estas son las redes de canales de pago (como Lightning Network), Plasma (como Polygon) y Rollups.

En este artículo trataremos las Rollups, soluciones de escalabilidad para plataformas de contratos inteligentes, como Ethereum, que son extremadamente prometedoras.

¿Qué son las Rollups? Comprende su funcionamiento

Las Rollups son contratos inteligentes que mantienen un determinado estado de forma comprimida. Por ej. el estado puede ser que Juan tiene 3 ETH y Alberto 5 ETH. Cuando los usuarios de la Rollup hacen transacciones, estas se agrupan en lotes y se procesan cambiando el estado. Si Juan hace una transferencia de 1 ETH a Alberto, el nuevo estado será: Juan, 2 ETH y Alberto, 6 ETH.

Como con todas las soluciones de segunda capa, lo que buscamos es realizar transacciones off-chain, fuera de la blockchain. Esto se hace para alcanzar mucho más rendimiento de transacciones (no estamos tan limitados por la blockchain) y reducir las comisiones.

Por ello el estado de la Rollup es calculado, no por los mineros y nodos de la blockchain, sino por otros usuarios off-chain. En otras palabras, la computación (transacciones y ejecuciones de contratos inteligentes) se realiza off-chain, y en la blockchain solo queda un resumen del estado actual y lotes de transacciones comprimidas.

Y aquí está el quid de la cuestión. ¿Cómo puede verificar la blockchain que, si Juan saca dinero de la Rollup, sacará su balance actual? Tened en cuenta que no puede calcular ese balance para comprobarlo (la computación es off-chain).

Resulta que tenemos dos formas de hacerlo, que diferencian los 2 tipos de Rollup: Optimistic Rollups y ZK-Rollups.

Qué son las Rolllups

Optimistic Rollups

En las Optimistic Rollups, los procesadores de la Rollup ponen su dinero en juego, y retirar fondos de una Rollup tarda una semana.

Si Juan se ha puesto de acuerdo con el procesador de la Rollup y trata de retirar 3 ETH (en vez de 2, lo que tendría según nuestro ejemplo) tendrá que esperar una semana. Este tiempo es suficiente para que otro procesador honesto, de la misma Rollup, identifique la transacción tramposa y gane todo el dinero del procesador atacante (que se puso de acuerdo con Juan, o que podría ser el mismo Juan).

Este modelo se llama «optimista» porque necesitas que exista al menos un procesador honesto online (que haya calculado el estado actual y pueda identificar transacciones tramposas). La honestidad está recompensada ganando dinero, y la deshonestidad castigada perdiéndolo.

En corto, esto significa: «La blockchain confía en la Rollup por defecto, pero si alguien demuestra lo contrario se revierte ese estado».

Zero Knowledge Rollups

Las Zero Knowledge Rollups (ZK-Rollups) no requieren de los previos incentivos. Su funcionamiento se basa en una tecnología criptográfica llamada ZK-SNARKS. Esta técnica matemática, muy compleja, permite probar criptográficamente que una computación se ha llevado a cabo.

Además, el costo de verificar la prueba es muy bajo. Este bloque lego encaja perfectamente con nuestro propósito, realizar computación off-chain que pueda ser verificada on-chain (en la blockchain).

A diferencia de las Rollups Optimistas, cada lote de transacciones (y estado por consiguiente) es verificado por la blockchain gracias a la prueba matemática (en vez de solamente aquellos que sean desafiados por procesadores honestos).

Qué son las Rolllups

Ventajas y desventajas

Cada modelo tiene sus propias ventajas y desventajas. En las Rollups Optimistas se pueden publicar lotes de transacciones más rápido ya que la blockchain confía en ella por defecto. Los gastos en gas son menores porque, en la mayoría de los casos, la blockchain no verifica una prueba criptográfica.

A eso hay que añadir que su tecnología es más simple, es mucho más fácil implementar una Rollup Optimista de propósito general (que implementa la EVM entera) y la computación off-chain es menos costosa porque no hay que crear una prueba criptográfica.

Como lado negativo, hay que registrar más información on-chain por cada transacción de Rollup (aunque sigue siendo muy reducida en comparación con una transacción on-chain) y los retiros tardan una semana.

Por el lado de Zk-Rollups tenemos retiros de fondos instantáneos, aunque actualmente no son de uso general (no implementan la EVM entera) por la prematurez de la tecnología.

Lo que nos depara el futuro

Sin embargo, aunque las Rollups Optimistas parecen mejores, muchos desarrolladores, como el propio Vitalik, creen que las ZK-Rollups, una vez desarrolladas, serán superiores.

Estas permitirán retiros instantáneos, serán de propósito generalno dependerán de procesadores honestos y serán más eficientes en cuanto a información on-chain.

El problema fundamental de las Rollups es que requieren dejar información on-chain (entre 10 y 15 bytes por transacción). Esto significa que las Rollups no pueden escalar infinitamente ya que la blockchain actúa como cuello de botella.

Sin embargo, Ethereum va de camino al sharding con Ethereum 2.0 (pese a sus riesgos y desventajas por ser escalabilidad de capa uno). Al escalar así la capa uno o blockchain, podrá mejorar mucho su rendimiento con las Rollups llegando a decenas de miles de transacciones por segundo.

Probablemente Bitcoin también implementará la tecnología de ZK-SNARKS cuando haya madurado, quizá entre 5 y 10 años. En este caso Bitcoin escalará solamente en la capa dos para mantenerse, acorde con su filosofía, lo más descentralizado posible.

Muy posiblemente, las Rollups, especialmente las Zero Knowledge, marcarán un nuevo capítulo en la escalabilidad de las blockchains. Aunque estamos a años de contemplar el máximo esplendor de la blockchain, su desarrollo está siendo mucho más acelerado que el de Internet y ya hemos dado con las soluciones necesarias para escalar su uso. ¡Satoshi estaría orgulloso!


Deja un comentario
La dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *