El futuro del escalado de Ethereum
A medida que Bitcoin se abría paso en los medios de comunicación en 2017 y más gente se interesaba por la blockchain, todo el mundo comenzó a ser consciente de la principal dificultad asociada a esta tecnología. A medida que la plataforma crecía en popularidad y se realizaban más transacciones, la congestión de la red alcanzó niveles desconocidos hasta entonces.
Ethereum se creó para confirmar las transacciones más rápido que Bitcoin, pero aún necesita mejoras. Su flujo de transacciones -mayor que el de Bitcoin, pero todavía de unas pocas cientos de TPS- es insuficiente para que la red pueda satisfacer a un público más amplio. A menudo está saturada, e incluso las actividades básicas de los contratos inteligentes pueden costar unos cuantos dólares.
Soluciones de escalabilidad de capa 2
El mercado de la escalabilidad ha evolucionado y se ha fragmentado enormemente, con varias empresas trabajando en diferentes soluciones. Es fácil perderse en el océano de estas tecnologías, y determinar cuáles son las más prometedoras puede llevar tiempo y esfuerzo.
Al añadir nuevos protocolos a la blockchain actual, las soluciones de escalabilidad de Capa 2 buscan aumentar el rendimiento máximo de Ethereum (la velocidad a la que se procesan las transacciones) y reducir las comisiones por transacción que pagan los usuarios finales. A diferencia de las soluciones de Capa 1 (como Ethereum 2.0), no intentan modificar el algoritmo de consenso de Ethereum ni ningún otro principio básico, sino que utilizan el protocolo subyacente como una capa de seguridad descentralizada sobre la que se construye otra.
Las soluciones de Capa 2 alivian a Ethereum al reubicar los cálculos fuera de éste, al tiempo que siguen apoyándose en la cadena de bloques para la seguridad. Dado que estos procesos se realizan fuera de la cadena, los datos en la cadena raíz disminuyen considerablemente, lo que se traduce en transacciones más baratas y rápidas.
Las técnicas utilizan criptografía de conocimiento cero para mantener la seguridad de las transacciones y permitir cálculos fuera de la cadena. Por ello, antes de profundizar en las soluciones de escalado, es necesario conocer a fondo la tecnología de conocimiento cero.
El conocimiento-cero (ZK en inglés) es una rama de la criptografía que ha despertado el interés de la comunidad blockchain durante muchos años. Las pruebas de conocimiento-cero permiten que una parte (el verificador) sepa que otra parte (el prover) tiene algún conocimiento sin exponer el conocimiento en sí ni ninguna otra información que pueda utilizarse para reconstruirlo. La única información enviada y mostrada al verificador es que el prover posee dicho conocimiento.
Conocimiento cero y Ethereum
Un rollup de conocimiento cero es un protocolo que se ejecuta en la blockchain de Ethereum y se mantiene mediante contratos inteligentes de Ethereum. Las transacciones se realizan fuera de la cadena, pero los bloques de transacciones se comunican periódicamente con un contrato de rollup dentro de la cadena. Estas transacciones no pueden ser revertidas, formando la cadena de rollup de conocimiento cero, similar a la estructura de la blockchain de Ethereum.
Los datos de las transacciones y la información sobre los saldos de los usuarios pueden almacenarse dentro o fuera de la cadena de bloques, lo que supone un intercambio entre escalabilidad y seguridad.
Mantener los datos en la cadena ofrece las mismas garantías de seguridad que mantener los activos directamente en Ethereum, sin que el usuario tenga que realizar ninguna actividad adicional. Esto hace que se pueda acceder a los datos en cualquier momento, lo que es especialmente importante cuando el servidor de un proveedor de soluciones de escalado se cae o se vuelve hostil.
La disponibilidad de datos en la cadena permite a los usuarios proporcionar pruebas de que poseen una cantidad determinada de tokens y retirarlos directamente del contrato inteligente sin involucrarse con el sistema. Los roullups de conocimiento cero (zkRollups) son soluciones basadas en el conocimiento cero que mantienen los datos en la cadena.
Al añadir el problema de la disponibilidad de los datos, las soluciones de escalado que almacenan datos fuera de la cadena socavan las garantías de seguridad de Ethereum. Cuando un proveedor de soluciones de escalado deja de colaborar con la red, los usuarios normales sólo pueden retirar su dinero si pueden acceder a los datos que contienen sus saldos. A ese tipo de soluciones se les conoce como validiums. Para hacer frente a la cuestión de la disponibilidad de los datos, es posible establecer comités multipartitos encargados de conservar copias de los datos y compartirlas con los usuarios en caso de comportamiento perjudicial o poco colaborador.
La criptografía de conocimiento-cero es el denominador común de las soluciones mencionadas. Lo que las distingue es la disponibilidad de los datos.
Pero una gran ventaja del almacenamiento de datos fuera de la cadena es su mayor escalabilidad. Las limitaciones de la cadena de bloques no limitan a los sistemas que utilizan este tipo de almacenamiento. En consecuencia, el potencial para mejorar el rendimiento de las transacciones es mayor que el que ofrece el almacenamiento dentro de la cadena.
StarkWare ha sugerido un sistema híbrido que permite a los usuarios elegir si sus datos se guardan en la cadena o fuera de ella. Pueden elegirlo para cada transacción, haciendo que la decisión sea dinámica. Las soluciones de escalabilidad de este tipo se conocen como volitions.
Los rollups de conocimiento cero dependen del protocolo central de Ethereum por las siguientes razones:
- Anticensura
La mayoría de los rollups de conocimiento cero utilizan un "supernodo" (el operador) para procesar las transacciones, generar bloques y enviarlos a la Capa 1. Aunque esto aumenta la eficacia, también abre la posibilidad de censura: los operadores de rollups de conocimiento cero sin escrúpulos pueden censurar a los usuarios no incluyendo sus transacciones en los bloques.
- Acceso a los datos
Los rollups de conocimiento cero transmiten información de estado a Ethereum por cada transacción ejecutada fuera de la cadena. Las personas o empresas pueden utilizar estos datos para recrear el estado del rollup y confirmar la cadena.
Dado que las pruebas de validez ya validan la legitimidad de las transiciones de estado, los rollups de conocimiento cero no necesitan revelar muchos datos sobre las transacciones en la cadena. Sin embargo, mantener los datos en la cadena es vital, ya que permite la verificación independiente y sin permisos del estado de la cadena de Capa 2, permitiendo a cualquiera enviar bloques de transacciones e impidiendo a los malos operadores filtrar o congelar la cadena.
Los usuarios deben estar en la cadena para participar en el rollup. Los usuarios sólo pueden consultar los saldos de sus cuentas o realizar operaciones (por ejemplo, retiros) que dependan de datos de estado con acceso a datos de estado.
- Finalidad de la transacción
Ethereum funciona como una capa de liquidación con rollups de conocimiento cero, en la que las transacciones de Capa 2 sólo se procesan y aceptan si el contrato de Capa 1 acepta la prueba de validez. Esto garantiza que los actores maliciosos no puedan dañar la cadena o robar fondos de un rollup. Además, el protocolo de Ethereum también garantiza que las actividades de los usuarios no puedan ser revertidas, proporcionando una capa adicional de seguridad y fiabilidad.
Los rollups de conocimiento cero permiten a los usuarios enviar transacciones directamente al contrato rollup en la red principal (Mainnet) como garantía de seguridad si creen que el operador las está restringiendo. Permite a los usuarios forzar una fuga del rollup de conocimiento cero a Ethereum sin necesidad de la autorización del operador.
Conclusiones
Ethereum es una cadena de bloques computarizada. Permite el desarrollo de aplicaciones y organizaciones descentralizadas, sin permisos y resistentes a la censura. Todo el mundo en la red Ethereum está de acuerdo con el estado de la máquina virtual de Ethereum (EVM). Cada nodo Ethereum almacena el estado de esta máquina. Los participantes también pueden solicitar cómputos arbitrarios a esta máquina. Las solicitudes de difusión son verificadas, validadas y ejecutadas por los miembros de la red. Esta ejecución registra y propaga una actualización del estado de la EVM a través de la red.
Las solicitudes de transacciones y el estado del EVM se guardan en la cadena de bloques, con la que todos los nodos están de acuerdo.
Las tecnologías criptográficas impiden la manipulación una vez que las transacciones se confirman y se publican en la cadena de bloques. Los mismos métodos garantizan que todas las transacciones se realicen y completen con los "permisos" necesarios (sólo Alice puede transferir activos digitales desde su cuenta).