Principales conclusiones:
- La escalabilidad de la cadena de bloques se refiere al número de transacciones que una red puede gestionar por segundo, siendo las soluciones financieras tradicionales, como Visa y PayPal, el patrón oro actual.
- El rendimiento, la finalidad y el tiempo de confirmación son los tres principales cuellos de botella para la escalabilidad de una cadena de bloques. Todas las soluciones propuestas tienen por objeto hacer frente a estos problemas.
- El trilema de la escalabilidad de la cadena de bloques (escalabilidad, descentralización, seguridad) puede ser un problema difícil de resolver, pero no es algo inamovible.
- Las tres direcciones hacia las que se dirigen las cadenas de bloques para aumentar su escalabilidad incluyen nuevos mecanismos de consenso y soluciones dentro y fuera de la cadena.
Introducción
La escalabilidad de la cadena de bloques es posiblemente el santo grial y el cuello de botella del mundo de las criptomonedas. Se refiere principalmente a la velocidad de las transacciones, ya que los tiempos de transacción actuales de muchas criptomonedas no son comparables a los de otros métodos de pago. Sin embargo, las comunidades de criptomonedas están trabajando con diferentes teorías sobre la mejor manera de superar este obstáculo. En este artículo, nos adentramos en los prometedores desarrollos que podrían finalmente traer velocidades de transacción casi instantáneas a las criptomonedas.
Por qué es importante la escalabilidad: Velocidades de transacción de criptomonedas
Mientras que Visa puede procesar hasta 24.000 transacciones por segundo (TPS), Bitcoin sólo puede procesar siete TPS. Ethereum, el competidor más cercano de Bitcoin, puede manejar entre 20 y 30 TPS. Está claro que las criptomonedas deben ponerse a la altura de las capacidades de transacción de las finanzas tradicionales para lograr una adopción masiva.
Pero, ¿por qué es tan difícil la escalabilidad en una cadena de bloques? ¿Cuáles son algunas de las orientaciones que escuchan los profesionales del sector? Este artículo responde a esas y otras preguntas.
Cuellos de botella: Rendimiento, finalidad y tiempo de confirmación
¿Cómo se relaciona el TPS con la velocidad de procesamiento? ¿Qué significa exactamente cuando se pregunta si una criptomoneda es escalable? Para responder a estas preguntas, primero tenemos que entender los conceptos de rendimiento, finalidad y tiempo de confirmación.
Piensa en esta historia:
Una persona espera un autobús que pasa cada 10 minutos. El autobús tarda 60 minutos en llevarlos a su destino. Sin embargo, esta ruta en concreto es muy popular y siempre hay mucha gente intentando subir al autobús.
Han pasado dos minutos y ha llegado el autobús. Desgraciadamente, hay demasiada gente por delante de esta persona en la cola y el autobús se llena. Ahora tienen que esperar otros 10 minutos antes de poder iniciar su viaje, que puede resumirse así:
Cabe señalar que:
- No basta con medir el rendimiento (TPS): también hay que tener en cuenta el tiempo de confirmación. En pocas palabras, un protocolo que puede procesar hasta 100.000 TPS es genial. Sin embargo, si tiene un tiempo de confirmación de dos días, no será suficiente para el uso diario.
- Cuando hay congestión en la red, el rendimiento no disminuye (ya que el autobús puede seguir transportando siete pasajeros por minuto), pero el tiempo de confirmación aumenta debido al mayor tiempo medio de espera del primer bloque.
- La finalidad es fija: Hay una espera de “confirmación de seis bloques” para garantizar que el bloque no es reversible. El tiempo medio de espera en el primer bloque varía en función de la situación.
El trilema de la escalabilidad de Blockchain
El trilema de la escalabilidad de la cadena de bloques es uno de los mayores obstáculos para las criptomonedas. Afirma que las cadenas de bloques sólo pueden lograr simultáneamente dos de las tres cosas: descentralización, escalabilidad o seguridad, pero nunca las tres. Por lo tanto, los compromisos son inevitables. El trilema fue acuñado originalmente por Vitalik Buterin, fundador de Ethereum.
Sin embargo, el trilema de la escalabilidad no está grabado en piedra, ya que se trata de una observación de las comunidades Buterin y Web3. A pesar de lo difícil que es resolver el trilema, es posible que exista un algoritmo… a menos que alguien haya demostrado que es imposible.
1) Descentralización
La descentralización se refiere al grado de diversificación de la propiedad, la influencia y el valor en una cadena de bloques. En general, las criptomonedas están descentralizadas, ya que ninguna parte puede gobernar toda la red. Sin embargo, la descentralización es un espectro más que un “sí o no” binario, ya que hay diferentes niveles de descentralización en varios proyectos de blockchain, incluidos Bitcoin y Ethereum.
2) Seguridad
La seguridad es el nivel de defensibilidad y resistencia a la manipulación que tiene una cadena de bloques frente a ataques de fuentes externas. Hay muchos vectores de ataque en un sistema blockchain, como el doble gasto, la denegación de servicio distribuida(DDoS) y los ataques al 51%.
En general, una mayor libertad (es decir, libre entrada y salida de la red) se traduce en una mayor descentralización, pero una menor seguridad. Esto se debe a la dificultad de verificar la identidad de los nuevos participantes, que podrían pertenecer a una única entidad maliciosa o confabularse para causar daños a la red.
3) Escalabilidad
La escalabilidad determina la capacidad de la red, incluido el número de nodos que tiene, cuántas transacciones puede procesar y con qué rapidez, entre otros factores.
El término escalabilidad es a veces confuso porque la blockchain de Bitcoin es escalable cuando nuevos participantes se unen a la red. El sistema Proof of Work (PoW) ajusta automáticamente la dificultad de la minería, y la red puede tolerar cualquier número de nodos que existan en ella.
El dicho común de que “Bitcoin no es escalable” se centra en su rendimiento. Recuerda que su TPS es de sólo siete, lo que no es lo suficientemente alto para un uso práctico. La velocidad de finalización de Bitcoin es otra cuestión. Esperar 60 minutos para confirmar que una compra es válida dista mucho de ser lo ideal.
Aumentar la escalabilidad de Blockchain
El escalado de una cadena de bloques es complicado, y existen numerosos esfuerzos de investigadores y empresas para resolver el trilema. En general, creemos que hay tres direcciones para la escalabilidad de blockchain:
- Capa 1 (en cadena)
- Capa 2 (fuera de la cadena)
- Otros mecanismos de consenso
Soluciones de capa 1 (en cadena)
Las soluciones de capa 1 requieren cambiar el código base de la cadena de bloques (de ahí lo de “en la cadena”). Una solución de escalabilidad en la cadena representa un cambio estructural o fundamental para una cadena de bloques. En este artículo analizamos dos soluciones de escalado en la cadena: SegWit y la fragmentación.
Testigo Segregado (SegWit)
SegWit es una actualización del protocolo de Bitcoin que cambia la forma y la estructura de almacenamiento de los datos. La intención original de SegWit era resolver el problema de la maleabilidad de las transacciones, ya que la firma digital que verifica la propiedad y disponibilidad de los fondos del remitente ocupa mucho espacio en una transacción.
Con SegWit, la eliminación de los datos de firma de cada transacción libera más espacio y capacidad para que las transacciones estén contenidas en los bloques de almacenamiento de 1 MB de Bitcoin, lo que permite incluir más transacciones en un bloque. SegWit ya se ha implementado en Litecoin.
Aunque SegWit aumenta el rendimiento y ayuda a Bitcoin a procesar más transacciones, no es una solución de escalado sostenible. No es una solución de escalado genérica, y sólo puede aplicarse a la única blockchain basada en Bitcoin que existe. Aunque SegWit permite a Bitcoin procesar más transacciones, no reduce el tiempo de confirmación de cada transacción.
Fragmentación
La fragmentación es una forma de partición de bases de datos, también conocida como partición horizontal. Se trata de dividir una amplia base de datos en segmentos más pequeños y manejables, con la idea de mejorar el rendimiento y reducir el tiempo de respuesta de las consultas.
Blockchain es una base de datos distribuida, y si aplicamos sharding a una blockchain, entonces la red se divide en diferentes segmentos. Cada segmento se rige por determinados nodos que le han sido asignados. Gracias a ello, el rendimiento del sistema mejora considerablemente, ya que, arbitrariamente, muchos clústeres de nodos funcionan en paralelo para procesar las transacciones.
Soluciones de capa 2 (fuera de la cadena)
Las soluciones de escalabilidad de capa 2, o soluciones fuera de la cadena, añaden una segunda capa a la red principal de blockchain (también conocida como cadena principal) para facilitar transacciones más rápidas. Los protocolos secundarios se construyen sobre la cadena principal, donde las transacciones se “descargan” para ahorrar espacio y reducir la congestión de la red.
Cadenas laterales
Una cadena lateral es una cadena de bloques independiente vinculada a la cadena principal, en la que los activos se negocian entre la cadena principal y las cadenas laterales a precios predeterminados mediante una vinculación bidireccional. Las cadenas laterales se utilizan para descargar la cadena principal trasladando a ellas determinadas aplicaciones; se encuentran entre las soluciones más prometedoras al problema de la escalabilidad si la comunicación entre cadenas de bloques se hace más eficiente.
Se pueden unir varias cadenas laterales a la principal y cada una de ellas puede tener su propia arquitectura. Se puede crear una red de sidechains con una mainchain, donde la mainchain actúa como red de retransmisión y las sidechains representan una red de blockchain. Plasma (Ethereum) y Parachain (Polkadot) son soluciones de escalado populares que utilizan cadenas laterales y relés.
Canales de pago
Un canal de pago es una red fuera de la cadena que funciona en paralelo a la cadena principal. Se trata de establecer un canal entre dos partes que desean realizar una transacción.
Todas las transacciones que tienen lugar dentro del canal están fuera de la cadena, y no se requiere un consenso global. Como resultado, estas transacciones se ejecutan rápidamente a través de un contrato inteligente, generalmente con comisiones más bajas. Un canal de pago típico incluye tres fases:
Primera fase: Establecimiento del canal mediante su firma y financiación.
Segunda fase: Transacciones entre pares (P2P) que se producen en el canal.
Tercera fase: Se cierra el canal y se emite el estado final de la cadena principal.
Existen varios diseños diferentes de canales de pago. Lightning Network (Bitcoin) y Raiden Network (Ethereum) son implementaciones populares de canales de pago.
Mecanismos de consenso y su importancia para la velocidad de las transacciones
La dificultad de escalar una blockchain se debe principalmente a su mecanismo de consenso, ya que requiere que todos los participantes de la red se pongan de acuerdo sobre qué transacciones son válidas. Aunque Bitcoin puede escalar a un gran número de participantes (nodos), no puede escalar a un gran número de transacciones.
Así, han surgido algunos mecanismos de consenso alternativos para intentar resolver el problema. A continuación presentamos tres: Nakamoto, Clásica y Sin Líder.
Mecanismos de consenso de Nakamoto
El mecanismo de consenso PoW de Satoshi Nakamoto abrió una nueva vía para resolver el Problema del General Bizantino en una configuración sin permisos. Tras el desarrollo del mecanismo de consenso PoW, surgieron muchos nuevos algoritmos de consenso. Entre ellas se encuentran Proof of Stake(PoS), Proof of Authority (PoA), Proof of Reputation (PoR) y Proof of Importance (PoI).
En general, se clasifican como mecanismos de consenso Nakamoto.
Mecanismos clásicos de consenso
Los mecanismos de consenso clásicos son los algoritmos tradicionales que se han investigado antes de la invención de Bitcoin. Se centran en conjuntos fijos de pares con múltiples rondas de votación para alcanzar un consenso en toda la red. Algunos ejemplos de redes que utilizan mecanismos de consenso clásicos son Paxos, Raft y pBFT.
Tras la invención de Bitcoin, los mecanismos de consenso clásicos también evolucionaron, con nuevas variantes como el BFT delegado (dBFT), el BFT federado (fBFT), Tendermint, etc. Estos mecanismos se adaptan mejor a un entorno sin permisos.
Mecanismos de consenso sin líderes
Tanto los mecanismos de consenso tradicionales (tipo BFT) como los de Nakamoto (tipo PoW) se basan en el líder, lo que requiere que toda la red elija a un líder para las propuestas de bloques, transacciones, estados del libro mayor, etc. antes de que el resto de la red pueda votar si está de acuerdo o no con la propuesta.
Sin embargo, está surgiendo una dirección que utiliza mecanismos de consenso sin líderes, en los que se permite a todos los participantes de la red plantear transacciones recientes, que luego se difunden como chismes por toda la red. Finalmente, la cadena de bloques decide por consenso qué transacciones incluir. Algunos ejemplos de proyectos que utilizan un mecanismo de consenso sin líder son Avalanche, IOTA y NKN.
Aunque los mecanismos de consenso sin líder parecen ofrecer una vía para resolver el trilema de la escalabilidad, la mayoría son actualmente experimentales.
Para profundizar en los principios subyacentes de los mecanismos de consenso, lea Cómo llegar a un acuerdo: Diferentes tipos de consenso para Blockchain.
Palabras finales sobre la ampliación de soluciones
A pesar de los importantes obstáculos que aún debe superar blockchain, como el trilema de la escalabilidad, existen varias soluciones potenciales para aumentar los tiempos de transacción, como la fragmentación y la red Lightning, además de las propuestas por la comunidad. Para más información, consulte nuestras profundas inmersiones en las cadenas laterales y los mecanismos de consenso.
Diligencia debida e investigación propia
Todos los ejemplos que figuran en este artículo son meramente informativos. No debe interpretar dicha información u otro material como asesoramiento jurídico, fiscal, de inversión, financiero o de otro tipo. Nada de lo aquí contenido constituirá una solicitud, recomendación, aprobación u oferta por parte de Crypto.com para invertir, comprar o vender monedas, tokens u otros criptoactivos.
Los resultados pasados no garantizan ni predicen los resultados futuros. El valor de los criptoactivos puede aumentar o disminuir, y usted podría perder la totalidad o una parte sustancial del precio de compra. Cuando evalúe un criptoactivo, es esencial que investigue y actúe con la diligencia debida para tomar la mejor decisión posible, ya que cualquier compra será de su exclusiva responsabilidad.