Traducido del artículo original en inglés. Leer en inglés

Las blockchains de primera generación como Bitcoin, Ethereum y Solana cargan con las tareas de llevar a cabo el consenso, la liquidación, la ejecución y la disponibilidad de datos en la misma capa, por eso se les ha llamado blockchains monolíticas. Por diseño, las blockchains monolíticas no pueden llevar a cabo todas estas tareas de forma eficaz y esto da lugar al trilema de la blockchain. Entre las características de una blockchain están la descentralización, la escalabilidad y la seguridad. En el caso de las blockchains monolíticas, tienen que ceder en algo porque como mucho pueden cumplir dos y no las tres. Por ejemplo, Bitcoin sacrifica la escalabilidad a cambio de descentralización y seguridad, y Ethereum hace lo mismo. Con la llegada de las blockchains modulares, el trilema de la blockchain se puede resolver. Una blockchain modular es una blockchain que externaliza una o más de las tareas principales de una blockchain. La idea es que, al repartir las tareas centrales de una blockchain entre varias capas, podemos lograr mejoras notables en cada capa por separado, haciendo así que la blockchain sea más escalable y eficiente. Podrías verlo como una división del trabajo.
El trilema de la blockchain es el concepto de que una blockchain no puede ser segura, escalable y descentralizada al mismo tiempo. Los desarrolladores que construyen sus propias blockchains siempre se enfrentan a la molesta necesidad de elegir dos de las tres cualidades posibles.

La descentralización de la blockchain es su principal atractivo. Es la razón por la que la gente elige las criptomonedas por encima del dinero fiat. Para que una blockchain sea descentralizada, los requisitos de hardware no deben ser una limitación para participar, y los recursos necesarios para verificar la red deben ser bajos.
Es la capacidad de una blockchain para manejar un aumento en la cantidad de transacciones procesadas sin aumentar los recursos necesarios para la verificación. El problema de la escalabilidad es uno de los que han impedido la adopción masiva de la blockchain y las cripto. Para poder competir, las blockchains tienen que avanzar hasta un punto en el que puedan manejar cientos de transacciones rápidamente. Las blockchains pueden escalar aumentando el tamaño del bloque, pero esto lleva a un aumento de los requisitos de hardware. Esto afectará a la descentralización.
Es la capacidad de resistir una toma de control hostil. Una buena blockchain tendría una seguridad robusta para que terceros malintencionados no puedan aprovecharse de las vulnerabilidades de la red. Mantener la seguridad requiere mucha potencia de procesamiento, lo que podría afectar a la descentralización y a la escalabilidad. Aunque se han construido soluciones como sidechains, rollups y canales de estado para resolver este problema, en este artículo vamos a ver el enfoque que adoptan las blockchains modulares
Consenso - El consenso es el procedimiento que usan los nodos de una red blockchain concreta para determinar qué transacciones son válidas y cuáles no. Los mecanismos de consenso son las formas que usan los participantes para llegar al consenso, ejemplos populares son Proof-of-Work, Proof-of-Stake, etc. El consenso también proporciona el orden y la finalidad de las transacciones.
Ejecución - La ejecución se refiere a la forma en que los nodos procesan las transacciones enviadas a la red, lo que provoca un cambio de estado en la blockchain.
Disponibilidad de datos - La blockchain se usa para almacenar los datos con los que se verifica la validez de un cambio de estado de la blockchain. Los productores de bloques deben publicar los datos de cada bloque para que los pares de la red los descarguen y almacenen, y los datos deben estar disponibles cuando se soliciten. Las blockchains monolíticas manejan todas estas funcionalidades en una sola capa, mientras que las blockchains modulares se especializan solo en una o dos y externalizan el resto.
Como mencioné antes, una blockchain que intenta llevar a cabo por sí sola las 3 funcionalidades centrales limita su capacidad y su rendimiento, pero una cadena modular separa el sistema en varias partes posibles y trabaja en ellas de forma independiente. En la arquitectura de blockchain modular, la capa de ejecución podría ser independiente de las capas de consenso y de disponibilidad de datos, lo que permite que los nodos se centren solo en procesar transacciones por separado en lugar de ejecutar todas las transacciones para garantizar su validez.
En el diseño arquitectónico de blockchain modular, tres capas funcionan de forma independiente entre sí y se combinan para formar el stack modular.

Una blockchain modular podría diseñarse para especializarse en una o dos de las siguientes capas:
Capa de consenso - Una blockchain modular podría configurarse para especializarse solo en el consenso, proporcionando así un conjunto de reglas y pautas que se usarán para validar y verificar bloques de transacciones. Esto garantizará que los nodos/participantes de la red lleguen a un acuerdo, estableciendo así seguridad y descentralización en el stack.
Capa de ejecución - Un ejemplo típico de blockchain modular que solo se encarga de procesar transacciones son los rollups. En la capa de ejecución, la blockchain se centra solo en procesar transacciones y depende de otra cadena para la liquidación y la finalidad.
Capa de disponibilidad de datos - La capa de disponibilidad de datos se centra en almacenar los datos de las transacciones y proporcionarlos cuando se soliciten, de forma pública para que todos los vean. Un ejemplo es Polygon Avail.
El principio de modularidad o diseño modular subdivide un sistema en partes más pequeñas llamadas módulos, que se pueden crear, modificar, reemplazar o incluso intercambiar con otros módulos o entre distintos sistemas de forma independiente. La modularidad se basa en la especialización, lo que significa que cada módulo solo puede realizar un par de tareas específicas, pero debe hacerlas bien. Este es el principio sobre el que se apoyan las blockchains modulares.

Escalabilidad - Los problemas de escalabilidad surgen cuando una blockchain intenta llevar a cabo todas las actividades en una sola capa. El trilema de la blockchain dice que una blockchain solo puede tener dos de las tres cualidades posibles, pero cuando las tareas se reparten entre varias blockchains modulares, se vuelve posible mejorar la escalabilidad.
Crear nuevas - Blockchains: Cuando los desarrolladores se enfocan por completo en que una blockchain realice una sola tarea concreta, lanzar esa blockchain resulta relativamente más rápido que lanzar blockchains monolíticas diseñadas para hacerlo todo. Como los desarrolladores pueden centrarse en una función específica como la ejecución, otras blockchains modulares que se encargan de la seguridad y la disponibilidad de datos se pueden conectar fácilmente.
Flexibilidad - Una blockchain modular es más flexible que una monolítica porque puede aprovechar la fortaleza de otra cadena. Por ejemplo, una capa de ejecución puede beneficiarse de la seguridad de la cadena principal, y la cadena principal disfruta de la escalabilidad de la capa de ejecución. Esta es la relación entre los rollups y Ethereum.
Seguridad - Las blockchains monolíticas pueden imponer su propia seguridad porque los nodos toman nota de las transacciones y tienen que llegar a un consenso entre ellos para validarlas.
Utilidad - Como una blockchain monolítica se encarga de la ejecución, entre otras tareas, su moneda o token nativo puede revalorizarse a largo plazo.
** Seguridad** - A diferencia de las blockchains monolíticas, las blockchains modulares dependen de otras capas para su seguridad, lo que las hace dependientes de la eficiencia de esas cadenas. Si la capa de seguridad, es decir, la cadena encargada del consenso y de la disponibilidad de datos, se ve comprometida, todo el stack modular corre el riesgo de fallar.
** Utilidad del token** - Debido a sus casos de uso limitados, algunas blockchains modulares podrían no ser capaces de hacer subir el valor de su token nativo, un ejemplo sería la capa encargada de la disponibilidad de datos.
** Complejidad** - Las blockchains modulares tienen un diseño bastante complejo que requiere la participación de desarrolladores con conocimientos expertos.
Rígidas - En comparación con las blockchains modulares, las monolíticas no son tan flexibles porque no pueden externalizar funciones ni siquiera cuando la red sufre una caída.
Escalabilidad - Las blockchains monolíticas que no son escalables pueden intentar aumentar el tamaño y el tiempo de los bloques, pero esto aumenta los requisitos de hardware que necesitan los nodos de la red, lo que lleva a la centralización.
Ejecución ineficiente - Para garantizar la validez de las transacciones, los nodos vuelven a ejecutarlas, y esto provoca retrasos.
Rollups - Los rollups están diseñados para funcionar como blockchains modulares centradas en la ejecución. Los rollups, que pueden ser rollups optimistas o rollups de conocimiento cero, actúan ahora como la capa de ejecución, ejecutando contratos inteligentes y transacciones. Ethereum actúa como la capa de liquidación, y ahí se publican y almacenan los datos de las transacciones.
Validiums - Los validiums también funcionan como los rollups de conocimiento cero, ejecutan las transacciones por su cuenta y luego las envían a la cadena principal junto con la prueba de validez, pero no almacenan los datos en la cadena principal, sino que usan comités de disponibilidad de datos o redes de disponibilidad de datos como Polygon Avail.
Polygon Avail - Mientras que los rollups y los validiums actúan como capas de ejecución, Polygon Avail es una blockchain modular que actúa como capa de disponibilidad de datos y de consenso. Aquí los nodos se encargan de ordenar, almacenar y publicar los datos de las transacciones cuando se soliciten.

En sus inicios, Ethereum funcionaba como una blockchain monolítica, llevando a cabo la ejecución, el consenso y la disponibilidad de datos por sí sola. Más adelante se introdujeron los rollups, y desde entonces Ethereum pudo externalizar algunas tareas de ejecución a las soluciones L2 mientras se encargaba del consenso y la disponibilidad de datos. Aunque Ethereum todavía ejecuta transacciones, va camino de convertirse en una cadena modular mediante la implementación de sharding. El sharding es un proceso en el que un sistema se divide para trabajar por partes. Al repartir la carga de trabajo entre sus componentes puede aumentar la eficiencia y la producción. En el contexto de Ethereum, se dividirá en 64 shard chains (subcadenas) que trabajarán en paralelo, y cada cadena se encargará de una parte distinta de la actividad de la red.
Uno se puede preguntar cuándo elegir una blockchain monolítica o una modular, viendo que ambas tienen sus beneficios y desventajas. Elegir entre las dos opciones requiere entender bien las necesidades del proyecto. Si la seguridad es lo más importante en el esquema general, una blockchain monolítica parece la opción a elegir, pero si lo más importante es la velocidad, la blockchain modular sería una mejor opción.
Recibe los últimos artículos en tu bandeja de entrada.