El trilema de la cadena de bloques: ¿Alguna vez se puede resolver?
El mundo que nos rodea gira en torno a las compensaciones que hacemos para lograr ciertos resultados. El trilema de la cadena de bloques no es diferente, por lo que es crucial comprender si los problemas asociados con las cadenas de bloques pueden resolverse alguna vez. Los desarrolladores están dedicando tiempo y energía a resolver este problema, y veremos cómo la escalabilidad, la seguridad y la descentralización de la cadena de bloques pueden funcionar juntas. Estas tres funciones son fundamentales para el funcionamiento de las cadenas de bloques, con un reconocimiento cada vez mayor de que solo se pueden obtener dos de los tres. Eso significa que cada cadena de bloques debe sacrificar algo para funcionar de la manera más eficiente posible.
¿Qué es el trilema de la cadena de bloques?
El trilema de la cadena de bloques es el concepto de que la descentralización, la seguridad y la escalabilidad no pueden representarse en una cadena de bloques.
El término trilema de blockchain fue acuñado por Vitalik Buterin, cofundador de Ethereum. Propuso este término debido a su experiencia trabajando en Ethereum , la segunda criptomoneda más popular en Internet, que sufre problemas similares a los de la red de Bitcoin. El principal problema con el Bitcoin es que su red no es tan escalable como a mucha gente le gustaría. El trilema de la cadena de bloques se trata de las tres cosas que los desarrolladores quieren: descentralización, escalabilidad y seguridad, y la necesidad vejante de elegir dos de los tres.
Ejemplo del trilema de la cadena de bloques: Escalabilidad del Bitcoin
El Bitcoin es una gran innovación, pero su plataforma no es la más escalable. Sin embargo, Bitcoin tiene una de las plataformas más seguras y descentralizadas de Internet. En términos de escalabilidad, lamentablemente se ha ganado una mala reputación gracias a sus velocidades de transacción menos ideales. Esto hace que sea subóptimo si intentas usarlo como moneda. Cuando se compara con procesadores de tarjetas como Visa y Mastercard, el Bitcoin se retrasa porque la competencia procesa transacciones en milisegundos. Aunque esta situación se ha resuelto gracias a Lightning Network , esta solución de escalado de capa 2 presenta su parte justa de problemas. En última instancia, cualquier criptomoneda que desee utilizarse como moneda fiduciaria debe ser capaz de escalarse lo suficiente.
El problema del que estaba hablando Vitalik Buterin es si es posible o no lograr estas tres funciones en una sola red. Muchos desarrolladores han llegado a la conclusión de que lograr las tres funciones es imposible, y que se trata de hacer relación con lo que es posible con la tecnología actual, y averiguar cómo hacer la compensación en un entorno del mundo real. Por mucho que cada proyecto intente optimizar su red, habrá algunas deficiencias con cada diseño de cadena de bloques. Por lo tanto, la clave para los desarrolladores es averiguar cuánto de cada característica están dispuestos a sacrificar para lograr un rendimiento óptimo.
Descentralización en una cadena de bloques
La descentralización de la cadena de bloques es una de las principales razones por las que las personas prefieren las criptomonedas a las monedas fiduciarias actuales . Cuando una persona o entidad controla tu moneda, siempre estás a su merced. Un ejemplo es el gobierno de EE. UU. y su monopolio sobre el dólar estadounidense. Si estás en una lista negra o sancionado, tus activos en dólares podrían congelarse. Nunca tienes un control total sobre tu moneda. La descentralización de la cadena de bloques resuelve este problema al garantizar que ninguna persona o entidad controle el activo. El Bitcoin es el ejemplo más famoso. En esencia, nadie controla tu acceso al Bitcoin, y puedes poseer y transportar libremente tu Bitcoin en todas las situaciones.
Desafortunadamente, un problema importante con la descentralización de la cadena de bloques a gran escala es averiguar cómo lograrlo. Un obstáculo es la gestión de la red. La red Visa es un ejemplo de cómo se ve cuando una moneda virtual no está descentralizada. Cada transacción realizada a través de VisaNet debe ser procesada por uno de los muchos servidores que Visa tiene en todo el mundo. Visa es responsable de garantizar que la red sea resiliente y siempre funcione sin tiempos de inactividad.
Sin embargo, debido a esto, controlan todo para que los tiempos de transacción sean inferiores a un segundo. Además, las tarifas de transacción son relativamente bajas en comparación con muchas otras redes. Por este motivo, muchas personas se mueven hacia una sociedad sin efectivo que eliminará la necesidad de llevar dinero físico.
Como puedes ver, la descentralización de la cadena de bloques afecta negativamente a la seguridad y escalabilidad de una red. La descentralización de la cadena de bloques es crucial, porque requiere que sacrifiques otra función para tener la red más óptima posible. En última instancia, la descentralización de la cadena de bloques es mejor cuando una entidad o persona no controla toda la red. Sin embargo, la escalabilidad o la seguridad de la cadena de bloques se sacrifican al priorizar la descentralización de la cadena de bloques.
Escalabilidad en una cadena de bloques
Desafortunadamente, la escalabilidad de la cadena de bloques es un problema significativo que ha evitado que muchas criptomonedas se utilicen a escala masiva. Para que una cadena de bloques sea práctica, debe progresar a una etapa en la que esté sujeta a miles de solicitudes de transacciones y sea capaz de procesarlas rápidamente.
Lo ideal es que los proyectos deseen que su cadena de bloques pueda escalarse a millones de transacciones por segundo (TPS). Esta es una de las muchas razones por las que Visa y MasterCard se utilizan en todo el mundo. Después de todo, nadie usaría estas tarjetas si tuvieras que esperar 20 minutos o más para que se procesara tu transacción, y ninguna tienda querría usar esta red si tuviera líneas largas porque tardara tanto en procesar las transacciones. La escalabilidad de la cadena de bloques debe estar integrada porque los desarrolladores deben averiguar cómo hacer que funcione para casos de uso específicos, en lugar de solo mirar transacciones por segundo.
Seguridad en una cadena de bloques
La seguridad de la cadena de bloques es la tercera función que muchas redes pueden elegir para relajarse cuando se trata del trilema de la cadena de bloques. Una buena seguridad de la cadena de bloques significa que todo debe ser sólido para que nadie pueda hacerse cargo de la red, por ejemplo, aprovechar las vulnerabilidades de la red para insertar transacciones en una red.
El principal inconveniente de mantener la seguridad de la cadena de bloques es que se necesita mucha potencia del procesador para lograrlo. Esto puede ser un problema si también entra en vigor la descentralización de la cadena de bloques. Cuando combinas esta necesidad con las realidades de la descentralización y escalabilidad de la cadena de bloques, significa que tienes que ampliar enormemente el poder de procesamiento para lograr una pequeña mejora en tu calificación de TPS. Estas son las cosas que los desarrolladores de blockchain deben equilibrar cuando intentan crear una red. Tienen que averiguar cuál de los tres quieren sacrificar.
Con la descentralización de la cadena de bloques, otro problema es el consenso. ¿Cuál es la transacción correcta para cada libro mayor? Cuando escribes una transacción en el libro mayor de la cadena de bloques, ¿cómo te aseguras de que la transacción se actualice correctamente en todos los nodos? Esto requiere mucha potencia de procesamiento, por lo que es importante comprender cómo equilibrar la seguridad con otras funciones dentro de una red de cadena de bloques. La seguridad de la cadena de bloques solo será más importante a medida que aumente su utilidad. Un ejemplo de seguridad incorrecta es con cadenas de bloques que utilizan contratos inteligentes.
Seguridad vs. escalabilidad
La idea general con la seguridad de la cadena de bloques es que funciona de forma retrógrada a la escalabilidad de la cadena de bloques. La seguridad de la cadena de bloques requiere que utilices potencia de procesamiento adicional para garantizar que nadie explote la red. Sin embargo, el principal problema con esto es que, como consecuencia, ahora hay menos poder para procesar transacciones. Los desarrolladores deben decidir entre procesar más transacciones o mantener una mayor seguridad. Además, cuanto más descentralizada esté una red, más tiempo tardará en llegar a un consenso, lo que dificulta aún más lograr una descentralización y seguridad simultáneas ideales de la cadena de bloques. Actualmente, muchas personas están intentando averiguar cómo hacer que ambos conceptos funcionen correctamente, sin grandes desventajas para la red.
Un ejemplo de red segura es Visa, mencionado anteriormente. Ofrece una red de procesamiento de tarjetas de crédito que ofrece millones de TPS. A pesar de esto, la seguridad de la cadena de bloques nunca es un problema para ellos. Casi nunca oímos hablar de nada que se esté explotando. Sin embargo, cuando sucede algo, normalmente se debe a que el proveedor ha hecho algo prohibido. Nunca se ha aprovechado el problema de la empresa de procesamiento de tarjetas de crédito.
La mayoría de las cadenas de bloques son bastante seguras y las infracciones de seguridad no son un problema continuo para la mayoría de las redes. Sin embargo, como se ha mencionado, la seguridad está al precio de la escalabilidad. Esto hace que muchas personas piensen en varias formas de mejorar la seguridad y la capacidad de procesamiento de transacciones, sin destruir la esencia de la red.
Diferentes enfoques del Trilema de la cadena de bloques
Solana (SOL)
Polkadot (DOT)
Cardano (ADA)
Fantom (FTM)
Avalanche (AVAX)
La red Avalanche tiene otro enfoque exitoso para frenar las limitaciones del trilema de la cadena de bloques. Su descentralización de la cadena de bloques se logra principalmente ofreciendo recompensas a las personas que hacen staking y ejecutan un nodo validador. Estas recompensas son bastante impresionantes, lo que significa que los posibles validadores no tienen que poner muchos tokens para empezar.
Además, los requisitos mínimos de hardware de Avalanche son impresionantes. Se puede empezar como validador con hardware barato por menos de 1/10 del precio del hardware necesario para convertirse en validador en la red Solana.
Está claro que ser un validador es importante tanto para la descentralización como para la escalabilidad de la cadena de bloques. Sin embargo, no se incentiva a muchas personas a convertirse en validadores. Hacerlo a menudo es demasiado caro o complicado para que funcione, limitando sus beneficios a solo unos pocos
Posibles soluciones para el trilema de la cadena de bloques
Hay algunas soluciones potenciales para el trilema de la cadena de bloques, que se implementarán de forma independiente. Muchos desarrolladores también están averiguando cómo lograr el trilema de la cadena de bloques en cada parte de una red.
Capa 0
Cadenas de relés
Relay Chain de Polkadot permite que múltiples redes de cadena de bloques se conecten entre sí bastante fácilmente porque pueden conectarse a muchas redes sin los inconvenientes inherentes al trilema de la cadena de bloques. Las parachains funcionan en paralelo a la blockchain de Polkadot. Utilizan Polkadot Relay Chain para lograr la máxima escalabilidad, seguridad y gobernanza.
Capa 1
La principal consideración para la capa 1 es averiguar cómo escalar. Eso significa modificar el mecanismo de consenso u otros aspectos de la cadena de bloques que pueden aumentar la escalabilidad. La capa 1 proporciona la base necesaria para garantizar que la red funcione a su capacidad adecuada. Las redes que no tienen una capa 1 sólida siempre terminan teniendo problemas en el futuro.
Mejoras del protocolo de consenso
Hay muchas formas de alcanzar el consenso en una cadena de bloques, pero cuanto más rápido se haga, mejor podrá resolver el trilema de la cadena de bloques. El principal problema es garantizar que se alcance el consenso de forma correcta y completa. Varios algoritmos toman atajos, pero generalmente terminan donde deben estar. Solana ofrece una prueba de consenso histórico, que garantiza que las transacciones se realicen en la secuencia actual y del líder adecuado. Los líderes se eligen con anticipación, lo que ahorra tiempo en lograr el consenso de la red.
Raspado
El sharding divide la cadena de bloques y la separa entre varios validadores. Es una forma arriesgada de hacer las cosas debido a la posibilidad teórica de que todos los validadores que tienen un cierto fragmento puedan caer. En este caso, se perdería toda la parte de la cadena de bloques. Hay varios algoritmos para evitar que esto ocurra, que es una de las muchas formas de mejorar el proceso que Ethereum ofrece a las cadenas de fragmentos como forma de mejorar la escalabilidad. Este método divide toda la cadena de bloques horizontalmente, colocando la carga en múltiples servidores y haciendo posible que la participación en la red y la potencia de procesamiento aumenten geométricamente.
Capa 2
Cadenas de bloques anidadas
Existe una cadena de bloques anidada dentro de otra cadena de bloques. Las cadenas de bloques de capa 1 delegan el procesamiento a una cadena de bloques anidada, lo que significa que las soluciones de procesamiento personalizadas se pueden crear relativamente fácilmente. Esta es una de las mejores y más fáciles formas de resolver el trilema de la cadena de bloques sin demasiada dificultad. El mayor ejemplo de esto es Ethereum Plasma, que utiliza una cadena de bloques independiente anclada a la cadena principal, capaz de ofrecer pruebas de fraude para arbitrar disputas.
Canales de estado
Un canal de estado ha delegado esencialmente el procesamiento y la capacidad de las transacciones. Sus nodos no requieren validación, lo que significa que es como un recurso adyacente que hace lo que necesita. La red de capa 1 solo requiere que el estado final del canal se registre en la cadena de bloques.
Cadenas laterales
Una cadena lateral es esencialmente una cadena de bloques independiente que se conecta a la cadena de bloques principal utilizando una clavija bidireccional. Aumenta la interoperabilidad y la potencia de procesamiento de la cadena de bloques existente. Por ejemplo, la red de Bitcoin puede utilizar cadenas laterales para procesar transacciones aún más rápido. Esta es una de las muchas formas en que las personas obtienen más rendimiento del Bitcoin, incluso cuando técnicamente no debería ser posible.
Rollups
Básicamente, los rollups procesan transacciones fuera de la cadena de bloques de capa 1 y la publican más tarde cuando se alcanza el consenso. Esto separa gran parte del proceso que entra en el rendimiento de capa 1. Una gran parte del rompecabezas es Zero-Knowledge Rollup (ZK-Rollup), que procesa cientos de transferencias de la cadena de bloques actual y las publica en una fecha posterior. Acelera todo y, por lo tanto, es una de las mejores formas de mejorar el rendimiento.
¿Puede resolverse el trilema de la cadena de bloques?
No hay una solución al analizar cómo se puede resolver el trilema de la cadena de bloques. Teóricamente, es imposible lograr el Santo Grial. Lo mejor que podemos hacer hasta el momento es optimizar cada cadena de bloques lo máximo posible para alcanzar su objetivo establecido. Podríamos experimentar un futuro con una potencia informática virtualmente infinita y velocidades de transferencia de red geométricamente más rápidas. En ese entorno, el trilema de la cadena de bloques podría resolverse relativamente fácilmente. Dejaría de ser un problema porque las velocidades de transacción se impulsarían “a la luna”.
En resumen
El trilema de la cadena de bloques es actualmente un problema importante para la mayoría de los desarrolladores. Sin embargo, como cualquier otra cosa, una vez que entendemos la naturaleza del problema, tenemos muchas más posibilidades de encontrar una solución. Muchos desarrolladores están trabajando en las complejidades del trilema de la cadena de bloques y son bastante optimistas, por lo que nosotros también deberíamos hacerlo.