El problema de Escala de Bitcoin, Explicado

  • 02 MAR 2017
El problema de Escala de Bitcoin, Explicado
1.

¿Tiene Bitcoin un problema de escala?

Sí, lo tiene. Ha estado sin resolver por un tiempo y está empeorando con el tiempo.

Bitcoin se ejecuta en el software creado por un programador o un grupo de programadores conocido como Satoshi Nakamoto en 2007-09. A pesar de las muchas mejoras que se han hecho aportando a los desarrolladores en el curso de la existencia de Bitcoin, la base de código sigue siendo bastante similar a lo que era hace ocho años y algunas de las limitaciones siguen ahí.

El problema es que el panorama actual del ecosistema Bitcoin es muy diferente de lo que solía ser a los inicios 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 es acompañada, 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 creciente intensidad de la transacciones cada vez mayor.

En primer lugar, una introducción muy rápida y básica de 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 "The Blockchain".

Como dice su nombre, Blockchain es una secuencia de bloques. Cada bloque, a su vez, es una colección criptográficamente sellada 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 paralizarla.

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 se 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 la red, las proporciones actuales ya no son suficientes. Y sólo está empeorando a medida que la base de usuarios crece.

3.

¿Qué es lo que implica el límite insuficiente de tamaño de bloque?

El aumento en el promedio de los tiempos de transacción y lascomisiones que se pagarían por éstos. 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 llega a alcanzar las cargas máximas y es ahí 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 probable a la que los mineros de Bitcoin procesan cualquier transacción en particular depende directamente del monto de la comisión de los mineros, 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 eran medidas 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 cuanto el monto de las comisiones 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 criptomoneda: si tenemos una alternativa más popular y extendida que Bitcoin, ¿por qué incluso usarla en absoluto?

4.

¿Hay una solución al problema de las escalas?

Ha habido muchas formas propuestas para solucionarlo, ninguno de los cuales se han realizado hasta hoy.

El problema de escala ha estado bajo escrutinio durante bastante tiempo. Podría decirse que los dos primeros intentos serios de arreglarlo fueron BIP 100 y BIP 101, donde BIP representa Bitcoin Improvement Proposal. Fueron introducidos 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 bifurcación dura, lo que significa que si se implementaban, las versiones anteriores del software Bitcoin serían incompatibles con la nueva red. La diferencia entre ellos era que BIP 100 era hacer que el límite de tamaño de bloque fuera ajustable por la decisión de los mineros, mientras que BIP 101 era un simple aumento de 1mb a 8mb.

En lo que respecta a qué propuesta debe implementarse, hubo debates acalorados en toda la comunidad de Bitcoin durante la mayor parte de 2015. Aún así, resultó infructuoso. Ni BIP 100 ni BIP 101 se han implementado 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 y 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 desarrollar 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. SegWit ofrece un aumento moderado del tamaño de bloque hasta 4 megabytes moviendo algunos datos no críticos fuera de los bloques.

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, la 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 ofrece otra solución. Originalmente se creó para solucionar un problema no relacionado: maleabilidad de las transacciones. Para decirlo en breve, deshacerse de la maleabilidad de las transacciones requiere mover algunos datos no críticos, llamados "datos de testigos", fuera de las transacciones y fuera de Blockchain.

Esto permite un aumento en los tamaños de bloque de hasta 4MB, aunque la mayoría de los expertos cercanos al proceso de desarrollo dicen que la red es más probable que se establezca en unos 2 MB de tamaño de bloque después de lanzar SegWit.

También hay otra forma en que SegWit podría aumentar la capacidad de transacción, aunque no directamente. La solución a la maleabilidad de las transacciones hace que la red de Bitcoin sea lo suficientemente segura como para construir soluciones fuera de bloque, por ejemplo, la Lightning Network. Eso podría hacer que las transacciones de Bitcoin fueran mucho más baratas y rápidas que nunca.

6.

¿Por qué BU no se ha implementado hasta ahora?

Se enfrenta a una gran oposición, el argumento principal es que la BU hará Bitcoin más centralizado.

Algunas personas esperan la abolición del límite de tamaño de bloque propuesto por  Bitcoin Unlimited para dar paso a un incontrolado crecimiento de Blockchain. En la actualidad, el tamaño de todo Blockchain supera los 100 gigabytes y eso es con tres a siete transacciones por segundo. Compare eso con el límite de 24,000 transacciones por segundo de Visa y entenderá cuál es el problema aquí.

Se ha calculado que si el límite de tamaño del 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 se ha implementado SegWit?

Lo mismo que arriba, en su mayoría.

SegWit tampoco es una solución perfectamente descentralizada. Por sí solo, aumenta la capacidad del bloque a alrededor de 2 megabytes en el corto plazo, y hasta 4 megabytes en general. Dependiendo de la velocidad futura del crecimiento de la red, puede ser suficiente para varios años o incluso décadas.

Sin embargo, tarde o temprano, se alcanzará de nuevo el límite, y habrá que aumentar la capacidad. El valor, a largo plazo, de SegWit radica en la reparació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 la Lightning Network y esa es la centralización.

La 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 de criptomonedas, no hay una verdadera distinción entre "un sistema de mutuo acuerdo mantenido por un tercero de confianza" y los bancos que, se supone, son los puntos centrales de autoridad que Bitcoin debía hacer obsoletos.

8.

¿Esta crisis va a ser resuelta pronto?

Bitcoin se está convirtiendo en menos utilizable todos los días - para un ecosistema por valor de más de $ 17 mil millones, esta no es una situación que puede continuar durante mucho tiempo. Tiene que ser resuelta 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 información, secretamente financiado por el dinero grande (Blockstream para SegWit y Roger Ver para BU). Naturalmente, ambas partes quieren hacerte creer que su historia es la más "verdadera".

Mirando los números duros, toda la situación parece tener terreno a un punto muerto. La decisión final será tomada por la mayoría de los mineros de la red Bitcoin. Hasta el momento, la distribución de su apoyo no indica un líder claro. SegWit parece el favorito en la carrera, pero Bitcoin Unlimited ha logrado adelantar 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 llegue a tomar un lado. Sin embargo, pueden permanecer en silencio hasta que las soluciones de la competencia 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 potencialmente puede ser la más beneficiosa para la red, esto es un aumento del límite del tamaño de bloque y la implementación de SegWit simultáneamente. Ya hay un sentimiento creciente en la comunidad de que un compromiso entre las dos soluciones podría ser la mejor solución.

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 del tamaño de bloque a 2mb, al mismo tiempo.

Desafortunadamente, el acuerdo de Hong Kong no ha permanecido - los desarrolladores de Bitcoin Core no han añadido 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 con esto, veríamos aa Bitcoin crecer más que nunca.

UPDATE: este artículo fue actualizado para corregir una declaración errónea que SegWit no aumentó el límite de tamaño de bloque directamente.