El problema de escalabilidad en Bitcoin, explicado
Te explicamos la realidad actual de los problemas de escalabilidad que provocan demoras en las transacciones Bitcoin.
1.- ¿Tiene Bitcoin un problema de escalabilidad?
Sí, lo tiene. Ha estado sin resolver por un tiempo y está empeorando con el paso de los días.
Bitcoin se ejecuta en el software creado por un programador o un grupo de programadores conocido como Satoshi Nakamoto entre 2007 y 2009. A pesar de las muchas mejoras que se han hecho gracias a aportes de muchos desarrolladores en el curso de la existencia de Bitcoin, la base de código sigue siendo bastante similar a lo que era hace once años y algunas de las limitaciones siguen ahí.
El problema es que el paisaje actual del ecosistema Bitcoin es muy diferente de lo que solía ser en el inicio de la criptomoneda. El número de personas involucradas ha crecido de unas pocas docenas de entusiastas apasionados a más de 10 millones de usuarios diarios.
La creciente base de usuarios se acompaña naturalmente de un número cada vez mayor de transacciones diarias, que ahora son contadas por cientos de miles. La desafortunada realidad es que la red de Bitcoin, en su estado actual, es incapaz de procesar todas esas transacciones lo suficientemente rápido.
2.- ¿Por qué Bitcoin no puede hacer frente a todas las transacciones?
El problema reside en un parámetro específico llamado “límite de tamaño de bloque”. El límite actual es insuficiente para la cada vez mayor intensidad en el volumen de transacciones.
En primer lugar, una introducción muy rápida y básica a cómo funciona Bitcoin para aquellos que no saben. Todas las transacciones que alguna vez han tenido lugar en la red Bitcoin o se llevarán a cabo, se registran en un libro mayor público e inmutable llamado Blockchain.
Como indica la traducción literal de su nombre, Blockchain es una secuencia de bloques. Cada bloque, a su vez, es una colección criptográficamente cerrada de todas las transacciones que han ocurrido en la red durante los últimos diez minutos. Cada bloque nuevo se agrega permanentemente al final de la Blockchain para que cada usuario pueda comprobar siempre que cada transacción específica realmente ha tenido lugar.
En 2010, Nakamoto introdujo un límite de tamaño de bloque de 1 MB, lo que significa que los bloques de más de 1 megabyte serían automáticamente rechazados por la red como no válidos. Se trataba de una medida de seguridad diseñada para prevenir ataques potenciales de DoS por parte de piratas informáticos que creaban bloques de tamaño enorme o incluso infinito y los transmitían a través de la red para paralizarlo.
Sin embargo, esa decisión ha tenido un efecto adverso a largo plazo sobre la capacidad de transacción de la red.
Cada transacción consta de datos importantes: el remitente, el destinatario, la cantidad de Bitcoins en la transferencia, etc. Estos datos ocupan un espacio, lo cual es bastante insignificante cuando se habla de una sola transacción. Pero suma cuando hay cientos de transacciones que tienen lugar cada minuto.
El límite de tamaño actual de un megabyte por bloque puede soportar de forma realista de tres a siete transacciones de Bitcoin por segundo. El problema aquí es que para una red con proporciones como las actuales esto ya no es suficiente. Y sólo está empeorando a medida que la base de usuarios sigue creciendo.
3.- ¿Cuáles son las consecuencias del límite de tamaño de bloque insuficiente?
El aumento en el promedio de tiempos de transacción y tasas. Básicamente, Bitcoin se está convirtiendo poco a poco en un análogo funcional de transferencias electrónicas.
En un día normal, la red Bitcoin todavía puede funcionar normalmente. Sin embargo, a veces se las arregla para alcanzar las cargas máximas y eso es cuando las cosas se ponen difíciles. Muchos usuarios han estado reportando tiempos de espera de varias horas o incluso días en sus transacciones.
Además, la velocidad a la que los mineros de Bitcoin probablemente procesarán cualquier transacción en particular depende directamente del monto de la cuota de los mineros (comúnmente llamado Fee), establecida por el remitente para cada transacción. Esto crea un mercado de comisiones de transacción: para que sus transferencias se procesen más rápido, los usuarios tienen que competir entre sí estableciendo tarifas cada vez mayores.
En los primeros días, las comisiones se medían en simples fracciones de un centavo. Hoy en día, sin embargo, si desea enviar las monedas rápido, tendrá que pagar una cuota de varios centavos o incluso dólares.
Tanto los tiempos de transacción como los de tarifas han ido aumentando gradualmente durante los últimos meses, haciendo que Bitcoin se parezca más a una contrapartida funcional a las transferencias bancarias. Esa es una amenaza existencial para la criptografía: si tenemos una alternativa más popular y extendida que Bitcoin, ¿por qué usarlo en absoluto?
4.- ¿Hay una solución al problema de escalabilidad?
Ha habido muchas formas propuestas para solucionarlo, ninguna de ellas siendo implementada a la fecha.
El problema de escalabilidad ha estado bajo escrutinio durante bastante tiempo. Podría decirse que los dos primeros intentos serios de arreglarlo fueron BIP 100 y BIP 101, BIP es la sigla de Bitcoin Improvement Proposal. Fueron presentados en 2015 por los desarrolladores principales de Bitcoin, Jeff Garzik y Gavin Andresen, respectivamente.
Ambos estaban dirigidos a aumentar el límite de tamaño de bloque y ambos eran soluciones de tipo Hard Fork, lo que significa que si se implementaron, las versiones anteriores del software Bitcoin serían incompatibles con la nueva red. La diferencia entre ellos era que BIP 100 propone hacer que el límite de tamaño de bloque fuera ajustable por decisión de los mineros, mientras que BIP 101 era un simple incremento de una sola vez de 1mb a 8mb.
En lo que respecta a la propuesta que se debe aplicar, hubo debates acalorados en toda la comunidad de Bitcoin durante la mayor parte de 2015. Sin embargo, resultó infructuoso. Ni BIP 100 ni BIP 101 se han realizado de forma notable en la red hoy.
La historia parece repetirse y hoy hay nuevamente dos soluciones diferentes compitiendo por la aprobación de la comunidad: **Bitcoin Unlimited (BU) **y Segregated Witness (SegWit). El problema de la insuficiente capacidad de Bitcoin es ahora mucho más crítico que lo que solía ser en 2015, y aún así, no hay un líder claro en la acalorada y altamente politizada competencia entre las dos propuestas.
5.- ¿Cómo BU y SegWit proponen escalar a Bitcoin?
Bitcoin Unlimited tiene como objetivo eliminar el límite de tamaño de bloque por completo, lo que permite a los mineros llegar a un consenso por su cuenta. Por otro lado, SegWit aumenta la capacidad de los bloques sin cambiar su límite de tamaño.
Bitcoin Unlimited es una evolución directa de los anteriores intentos fallidos de resolver el debate de tamaño de bloque. Al ver cómo las ideas de aumentar el límite, o hacerlo incrementalmente ajustable, no han logrado reunir suficiente apoyo, BU tiene como objetivo abolir el límite por completo. En su lugar, hace que los mineros puedan crear bloques de tamaños arbitrarios y difundirlos a través de la red, compitiendo entre sí por un lugar en Blockchain.
SegWit, por otro lado, no se ocupa del límite de tamaño de bloque en absoluto. En su lugar, se creó originalmente para solucionar un problema no relacionado: la maleabilidad de las transacciones. En pocas palabras, para solucionar la maleabilidad, SegWit tuvo que mover los datos no críticos de las transacciones y dejarlos fuera de Blockchain.
Eliminar los datos disminuye el tamaño de cada transacción individual, haciendo posible empaquetar más transacciones en un bloque del mismo tamaño. Puede conducir a un aumento del 60–70 por ciento en el rendimiento de la red, es decir, suficiente para resolver el problema de la escala en el corto plazo.
Lo que es más importante, sin embargo, es que el deshacerse de la maleabilidad de las transacciones hace que la red de Bitcoin sea lo suficientemente segura como para construir soluciones* Off-the-Blockchain* encima de ella, como la Lightning Network, por ejemplo, haciendo transacciones mucho más baratas y más rápidas que nunca antes.
6. ¿Por qué no se ha implementado la BU hasta ahora?
Se enfrenta a una gran oposición, el argumento principal es que la BU hará a Bitcoin más centralizado.
Algunas personas esperan que la abolición del límite de tamaño de bloque propuesto por el Bitcoin Unlimited puede conducir una incontrolable inflamación en la red Blockchain completa. En la actualidad, el tamaño de todo Blockchain supera los 100 gigabytes y eso es con tres a siete transacciones por segundo. Comparemos eso con el límite de 24.000 transacciones por segundo de Visa y entenderemos cuál es el problema aquí.
Se ha calculado que si el límite de tamaño de bloque se incrementara hasta el punto suficiente para una audiencia global, Blockchain podría crecer a varios petabytes, si no más.
Eso conduciría a una mayor centralización de Bitcoin; Sólo las grandes empresas podrían permitirse el espacio de almacenamiento, la potencia de cálculo y el ancho de banda necesarios para procesar grandes cantidades de datos, eliminando a los operadores de nodos en pequeña escala de la red. Eso va en contra de la idea misma de Bitcoin como el dinero gobernado por cada uno de sus usuarios.
7.- ¿Por qué no ha hecho SegWit?
Por lo mismo que arriba, en su mayoría.
Pero SegWit tampoco es una solución perfectamente descentralizada. Por sí solo, aumenta la capacidad del bloque en aproximadamente un 60 por ciento y sólo es suficiente como solución a corto plazo. Su valor a largo plazo radica en la fijación del error de maleabilidad de la transacción. Eso hace posible aumentar el rendimiento de la red mediante la ejecución de soluciones de cadena lateral como Lightning Network y esa es la centralización.
Lightning Network puede describirse más o menos como un sistema de acuerdo mutuo construido sobre la Blockchain. En primer lugar, los Bitcoins de múltiples usuarios se depositan en un canal de pago independiente a través de una transacción regular de Bitcoin, la cual tarda unos 10 minutos en confirmar, o más, dependiendo de la congestión de la red. Después de eso, todos los pagos dentro de ese canal de pago se realizan fuera de Blockchain y se procesan de forma instantánea y muy barata, o de forma gratuita — por un tercero de confianza.
En el momento en que todos los miembros de un canal de pago acuerden la distribución final de Bitcoins, pueden devolver el saldo neto a Blockchain, permitiendo que la red Bitcoin confirme la validez de todas las transacciones.
El problema aquí es que para muchos miembros de la comunidad criptomonetaria, no hay una verdadera distinción entre “un sistema de mutuo acuerdo mantenido por un tercero de confianza” y los bancos, que son los puntos centrales de autoridad que Bitcoin debía hacer obsoletos.
8.- ¿Esta crisis va a ser resuelta pronto?
Bitcoin se está volviendo menos utilizable todos los días — para un ecosistema con un valor de más de $17 mil millones de dólares, esto no es una situación que puede continuar durante mucho tiempo. Tiene que ser resuelto pronto, de una forma u otra.
Ambos lados de la confrontación SegWit vs. BU tienen argumentos que describen la otra solución como aparentemente irreconciliable con los valores centrales de Bitcoin.
El conflicto no sólo tiene una base tecnológica sino también política. Ambas facciones están afirmando que el otro está tratando de evitar el crecimiento de Bitcoin o tomarlo bajo control. Hay también teorías alrededor que insisten el lado opuesto está librando una guerra de la información, secretamente financiado por el dinero grande (Blockstream para SegWit y Roger Ver para la BU). Naturalmente, ambas partes intentan mostrar que su historia es la más “verdadera”.
Mirando los números duros, toda la situación parece entrar al terreno de punto muerto. La decisión final será tomada por la mayoría de los mineros de la red Bitcoin. Al momento de revisar la distribución de su apoyo, éste no indica un líder claro. SegWit parece el favorito en la carrera, pero Bitcoin Unlimited ha logrado tomar ventaja varias veces en el pasado.
Por el momento, hay una gran parte de la red —un poco menos del 50 por ciento— que no ha expresado apoyo explícito a ninguna de las propuestas. Es posible que la perspectiva final les obligue a tomar un lado. Sin embargo, pueden permanecer en silencio hasta que las soluciones que compiten resuelvan su disputa.
9.- ¿Qué pasa si nadie retrocede y el estancamiento persiste?
Si ninguna parte toma una ventaja decisiva, existe la posibilidad de llegar a un compromiso.
Hay una tercera vía, que no es imposible y que potencialmente puede ser la más beneficiosa para la red. Un aumento de límite de tamaño de bloque y la implementación de SegWit no son mutuamente excluyentes por defecto, y hay un creciente sentimiento en la comunidad de que un compromiso entre las dos soluciones podría ser una manera de proceder.
De hecho, ya se ha llegado a un acuerdo de compromiso, al menos una vez. Hubo una mesa redonda celebrada en febrero de 2016 en Hong Kong con representantes de Bitcoin Core, los autores de SegWit y varias compañías mineras importantes, la mayoría de las cuales querían un mayor tamaño de bloques. Ambas partes parecían haber llegado a un acuerdo: avanzar con SegWit, e implementar un modesto aumento al límite de tamaño de bloque, 2mb, al mismo tiempo.
Desafortunadamente, el acuerdo de Hong Kong no ha sido seguido —los desarrolladores de Bitcoin Core no han agregado un aumento de tamaño de bloque a la última versión de SegWit, y los mineros se han negado por lo tanto a adoptarlo.
Pero la práctica ha demostrado que un consenso entre los lados en conflicto es posible y hay una solución que podría satisfacer a todos. Todavía existe la esperanza de que la confrontación política dé lugar a la cooperación, y que veremos a Bitcoin crecer más poderoso que nunca.
Fuente: CoinTelegraph, Bitcoin Scaling Problem, Explained