Un Rollup es una técnica de escalabilidad para blockchains que procesa transacciones fuera de la cadena principal (off-chain) y luego "enrolla" o agrupa un gran número de estas transacciones en una única prueba o resumen criptográfico. Esta prueba se publica en la cadena principal (Capa 1), donde se verifica su validez. El objetivo principal es aumentar drásticamente el rendimiento de las transacciones (TPS) y reducir los costos de gas al mover la mayor parte del cómputo y almacenamiento de datos de la Capa 1 a la Capa 2, mientras se mantiene la seguridad y descentralización de la Capa 1. Existen dos tipos principales: Optimistic Rollups y ZK-Rollups, diferenciándose en cómo garantizan la validez de las transacciones agrupadas.
En el mundo real, los Rollups son una piedra angular en la estrategia de escalabilidad de Ethereum. Proyectos como Arbitrum y Optimism implementan Optimistic Rollups, donde las transacciones se asumen válidas por defecto y existe un período de desafío durante el cual cualquiera puede presentar una prueba de fraude (fraud proof) si detecta una transacción inválida. Por otro lado, ZK-Rollups, utilizados por proyectos como zkSync y StarkNet, generan pruebas criptográficas de validez (zero-knowledge proofs) para cada lote de transacciones, que son verificadas instantáneamente por la Capa 1, eliminando la necesidad de un período de desafío. Estos sistemas ya están procesando un volumen significativo de transacciones para aplicaciones DeFi y NFTs, aliviando la congestión de la red principal de Ethereum.
Para un arquitecto de sistemas, la elección y diseño con Rollups es crucial para construir aplicaciones descentralizadas escalables y eficientes. La decisión entre Optimistic Rollups y ZK-Rollups implica un trade-off fundamental: los Optimistic Rollups son más fáciles de implementar y compatibles con EVM, pero tienen un período de espera para la finalización de transacciones (finality) debido al mecanismo de desafío. Los ZK-Rollups ofrecen finalización instantánea y mayor seguridad criptográfica, pero son más complejos de implementar y computacionalmente intensivos para generar las pruebas. Un arquitecto debe considerar la latencia deseada, el costo, la complejidad de desarrollo, la seguridad y la compatibilidad con la infraestructura existente al integrar Rollups, evaluando cómo impactan la experiencia del usuario y la economía del protocolo. Además, la elección del Rollup puede influir en la soberanía de los datos, la gobernanza y la interoperabilidad con otros componentes del ecosistema blockchain.