El trilema de escalabilidad

Jeisson Niño
Bancolombia Tech
Published in
4 min readApr 21, 2023

Si lo describimos de una forma simple, podemos pensar en una blockchain como una base de datos digital y descentralizada. Existe una promesa de seguridad ofrecida en este tipo de tecnologías que está cambiando la forma en que podemos interactuar en un mundo globalizado. La posibilidad de prescindir de intermediarios y la transparencia obtenida son características atractivas en estas redes. Sin embargo, estas redes presentan un desafío importante en su búsqueda de adopción masiva.

El “trilema de la blockchain” es un concepto presentado inicialmente por el fundador de Ethereum, Vitalik Buterin. Este desafío se basa en la dificultad de conseguir los tres elementos deseables en una blockchain: descentralización, seguridad y escalabilidad. El trilema sugiere que es difícil alcanzar estos tres elementos simultáneamente, ya que al mejorar en dos de ellos se sacrifica el restante. Para comprender mejor esta dificultad, es necesario entender cada uno de estos elementos que componen una blockchain.

Seguridad:

Este componente hace referencia a la capacidad de garantizar que los datos almacenados se hagan de una manera íntegra y privada. Comúnmente, esto se resuelve usando diferentes técnicas criptográficas, como los algoritmos de hash, las firmas digitales y la criptografía asimétrica. También en este componente, es importante un proceso que asegure este atributo fundamental para la red, y es el “consenso”; quien garantiza que todos los nodos de la red estén sincronizados sobre el estado actual de la red.

También, parte de la seguridad en una blockchain es dada por un número mayor de nodos que participen en la red. A mayor cantidad de nodos, mayor seguridad habrá. Si una sola entidad o un grupo logra controlar más del 50% del poder de cómputo en la red, podrían manipular los datos de la cadena para su beneficio en un ataque conocido como “ataque del 51%”.

Descentralización:

En este componente se busca la distribución del poder y la toma de decisiones entre múltiples actores o nodos en la red. La red es abierta para que cualquier persona pueda participar. El propósito de esto es que el control esté completamente distribuido en lugar de reposar en pocos actores. Este concepto es lo que hace posible el concepto de Web3, donde se busca que los usuarios en la internet puedan controlar y ser los dueños de sus datos y su vida en línea.

Todos estos conceptos y propiedades siempre deben fundamentarse en que estas redes son seguras. Si una blockchain no garantiza la seguridad, cualquier persona podría manipular o tomar el control de la red.

Escalabilidad:

El propósito de estas redes es la masificación de su uso, con el objetivo de llegar a millones de usuarios que interactúen con estas tecnologías. Por ejemplo, el proyecto Ethereum nace con la premisa de convertirse en la computadora del mundo. El componente de escalabilidad hace referencia a la capacidad de la red para procesar un número creciente de transacciones a medida que aumenta el número de usuarios que usan la red.

Dada la arquitectura descentralizada de estas redes, se requiere que todos los nodos participantes validen cada transacción. Esto puede llegar a ser un gran desafío, ya que el aumento de los nodos implicaría tiempos de verificación más largos y una disminución en la velocidad de la red.

Y es con este desafío que nace el trilema.

Una forma evidente de resolver este problema es reducir el número de nodos de la red. De esta manera, aumentaría la velocidad de la red. Pero, en contraprestación, se disminuiría la descentralización de la red y también afectaría la seguridad de la red, dado que al tener menos participantes se aumenta la vulnerabilidad a ataques.

Estas propiedades altamente valoradas y relacionadas, como lo son la seguridad y la descentralización, hacen que sea realmente difícil escalar la red. Si se aumenta una propiedad, la otra se ve afectada. Entonces, ¿cómo se puede aumentar la escalabilidad sin comprometer la descentralización, la seguridad o ambas?

No existe una única solución al trilema, pero dada la importancia se han realizado avances desde diferentes enfoques. Bastante resumido serían las siguientes:

Cambiar el mecanismo de consenso:

Un sistema con mineros, algoritmos criptográficos y grandes cantidades de potencia de cómputo descentralizada aumenta la seguridad de una red, pero la hace lenta. Este enfoque es el llamado prueba de trabajo (PoW). Redes como Bitcoin lo implementan en este momento. Ethereum antes lo ocupaba, pero hizo la transición a un consenso de prueba de participación, en donde no es necesario maquinas especializadas que minen y validen, de esta manera, bloqueando depósitos (PoS) se puede agregar de manera más simple y accesible nuevos validadores. Este un de muchos mecanismos de consenso que apuntan a la escalabilidad.

Capas 2:

Estas soluciones buscan trasladar algunas operaciones o cálculos fuera de la red principal. Utilizan canales de estado, redes paralelas, rollups y otras técnicas para procesar transacciones de forma paralela o fuera de la cadena principal. Algunas de estas soluciones son los zkRollups, optimistic rollups y sidechains como Polygon. Desde diferentes enfoques, estas soluciones han demostrado ser capaces y eficientes en el manejo de un gran volumen de transacciones.

En resumen, la blockchain es una base de datos digital y descentralizada que promete seguridad, transparencia y prescindir de intermediarios en las transacciones. Sin embargo, el trilema de la blockchain, que se refiere a la dificultad de lograr simultáneamente la descentralización, seguridad y escalabilidad, es un desafío importante para su adopción masiva.

Aumentar la escalabilidad sin comprometer la seguridad y la descentralización es un todo un reto, pero se han realizado avances importantes desde diferentes enfoques… ¿cuál crees que es el panorama para este trilema en el futuro? 🤔

--

--