La escalabilidad es uno de los mayores desafíos para el crecimiento y la adopción de la tecnología blockchain, pero lograrla tradicionalmente ha implicado concesiones en la descentralización o la seguridad, y a veces en ambas. La gestión de estas compensaciones se conoce como el "trilema de la cadena de bloques" (también llamado "trilema de escalabilidad").
La escalabilidad es uno de los mayores desafíos para el crecimiento y la adopción de la tecnología blockchain, pero lograrla tradicionalmente ha implicado concesiones en la descentralización o la seguridad, y a veces en ambas. La gestión de estas compensaciones se conoce como el "trilema de la cadena de bloques" (también llamado "trilema de escalabilidad").
El término trilema de escalabilidad fue acuñado por primera vez por Vitalik Buterin para describir la tensión inherente entre tres propiedades que debe tener una plataforma blockchain de alto rendimiento: descentralización, seguridad y escalabilidad. El trilema se refiere a la creencia de que las plataformas blockchain solo pueden lograr dos de estos tres objetivos de manera efectiva.
Descentralización y seguridad – principios de diseño primarios
La descentralización es un principio de diseño fundamental de las redes blockchain para ayudar a eliminar la necesidad de confiar en terceros para la actividad financiera y, en su lugar, facilitar las transacciones entre pares. A diferencia del sistema financiero tradicional que depende de entidades como los bancos para mantener registros de cuentas y transacciones, en una blockchain, este papel lo desempeña una red distribuida de computadoras, llamadas nodos.
Los nodos verifican las transacciones y acuerdan el estado actual de la blockchain utilizando un modelo de consenso, como prueba de trabajo (PoW) o prueba de participación (PoS). Una vez que las transacciones se verifican como válidas, se agregan a un bloque (o una agrupación de transacciones) en la blockchain. Una gran red de nodos operados de forma independiente es generalmente un signo de una blockchain saludable y descentralizada.
La descentralización es un elemento clave de la seguridad de la blockchain, ya que la distribución del poder entre muchos nodos hace que la red sea más resistente a los ataques, como un ataque de mayoría (también conocido como ataque del 51%). Sin embargo, otros factores también influyen en la seguridad de la blockchain, asegurando que nadie pueda manipular el libro mayor o la emisión de monedas. Estos difieren dependiendo de si la blockchain utiliza protocolos PoW o PoS.
El protocolo PoW requiere que los mineros gasten recursos informáticos para verificar las transacciones y agregarlas a los bloques en la blockchain, ganando recompensas en criptomonedas por hacerlo. El requisito de que los mineros inviertan recursos en forma de energía y equipos de minería está diseñado para garantizar que tengan suficiente "piel en el juego" para actuar en interés de la red en lugar de atacarla.
El protocolo PoS funciona de manera diferente. En lugar de invertir en energía y recursos externos, PoS requiere que los nodos apuesten una cantidad mínima de la criptomoneda nativa de la plataforma para participar en la validación de bloques y ganar recompensas a cambio. Si un nodo no actúa en interés de la red, entonces parte (o la totalidad) de su participación puede ser confiscada como penalización, disminuyendo las recompensas ganadas. En este caso, los nodos tienen un interés financiero directo en mantener la seguridad de la blockchain.
Efecto en la escalabilidad
La descentralización y la seguridad trabajan juntas para garantizar que la blockchain permanezca resistente contra ataques potencialmente paralizantes. Sin embargo, a menudo esto viene a costa de la escalabilidad, o la capacidad de crecimiento de una blockchain.
Por ejemplo, los sistemas PoW están diseñados para mantener un tiempo de bloque constante (cantidad de tiempo que toma crear un nuevo bloque) independientemente de cuánta potencia de cómputo haya en la red. El proceso no cambia, independientemente del número de personas que utilizan la blockchain, lo que podría afectar la capacidad de la blockchain para soportar el aumento del volumen de transacciones.
Las soluciones de escalabilidad generalmente se centran en formas de aumentar el rendimiento de las transacciones sin comprometer la descentralización o la seguridad. La comunidad Bitcoin ha debatido formas de aumentar la escalabilidad de la red a lo largo de los años, lo que ha resultado en varias bifurcaciones de la blockchain.
Un método propuesto fue aumentar la cantidad de datos que se pueden almacenar en un bloque, pero los intentos de implementar tales cambios en Bitcoin fueron polémicos. En agosto de 2017, la comunidad Bitcoin se dividió por una actualización propuesta llamada SegWit que reduciría el "peso" de las transacciones en un bloque. Algunos se opusieron a la actualización y en su lugar propusieron aumentar el tamaño del bloque del límite de 1MB definido en el código original de Bitcoin. Sin embargo, los bloques más grandes hacen que los nodos completos sean más costosos de operar, aumentando la barrera de entrada para operar un nodo y afectando la descentralización.
El desacuerdo resultó en una división de la blockchain conocida como bifurcación dura, que produjo Bitcoin Cash, una versión de Bitcoin con un tamaño de bloque más grande, y permitió que Bitcoin aceptara la actualización SegWit. En los años siguientes, el debate sobre el tamaño de los bloques continuaría causando más divisiones entre la comunidad de Bitcoin Cash.
La falta de escalabilidad tiene un impacto en la experiencia del usuario, ya que puede resultar en tiempos de transacción largos y altas tarifas durante períodos de actividad máxima de la red cuando el ancho de banda limitado tiene una alta demanda. En última instancia, la falta de escalabilidad compromete la usabilidad y accesibilidad de una red blockchain, limitando las perspectivas de adopción.
Resolviendo el trilema de la blockchain
No hay soluciones rápidas y fáciles para el trilema de la blockchain. Sin embargo, ahora hay varios enfoques que trabajan para mitigar las tensiones entre descentralización, seguridad y escalabilidad. En general, se dividen en dos categorías: soluciones de procesamiento fuera de la cadena y soluciones de fragmentación.
Procesamiento fuera de la cadena utilizando Capa 2
El procesamiento fuera de la cadena se refiere a mover las transacciones fuera de la cadena principal como una forma de aliviar la congestión y la competencia por el espacio limitado de los bloques. Algunos casos de uso de blockchain, como los juegos, involucran transacciones de alta frecuencia para sumas de bajo valor, que pueden realizarse fuera de la cadena principal.
Los protocolos de Capa 2 actúan como una solución escalable al permitir que las aplicaciones agrupen transacciones para un procesamiento de alta velocidad mientras liquidan periódicamente los saldos de las cuentas en la blockchain principal. Algunos ejemplos son Arbitrum u Optimism para Ethereum o la Red Lightning para Bitcoin.
Las plataformas de Capa 2 pueden hacer concesiones en seguridad o descentralización para lograr escalabilidad. Por ejemplo, una Capa 2 que depende de un pequeño grupo de validadores para verificar transacciones introduce el riesgo de un ataque de mayoría a nivel de Capa 2. Como resultado, algunas plataformas de Capa 2 han sido previamente objetivo de hackers.
Fragmentación
La fragmentación implica dividir la blockchain en segmentos como una forma de permitir el procesamiento paralelo y, por lo tanto, un mayor rendimiento de transacciones. La fragmentación es el método de escalado elegido por Ethereum y se está implementando como parte de una hoja de ruta de varios años. Sin embargo, la fragmentación introduce nuevas consideraciones de seguridad, ya que cada segmento, o fragmento, es más vulnerable a un ataque del 51%.
Gracias a su algoritmo de prueba de participación recientemente introducido, Ethereum puede resolver el problema de los validadores que se confabulan para atacar fragmentos individuales. Una vez que la fragmentación esté activa, cuando un validador apuesta su ETH, actuará como un punto de activación para la asignación aleatoria de un fragmento. Este grado de aleatoriedad y la incapacidad de elegir un fragmento para validar hace que coordinar un ataque sea prácticamente imposible.
Aspectos esenciales del trilema de la blockchain
- Al diseñar y desarrollar blockchains descentralizadas y seguras, los desarrolladores a menudo terminan comprometiendo la escalabilidad.
- Esta tensión entre tres aspectos se conoce como el "trilema de la blockchain" y se ha convertido en un problema clásico al que se enfrentan los desarrolladores principales de blockchain.
- Las soluciones y alternativas incluyen el procesamiento fuera de la cadena utilizando protocolos de Capa 2 y el procesamiento paralelo utilizando fragmentación.