¿Te gustaría poder escuchar este artículo?
Sí es posible. Suscríbete y ten acceso a reproductor de audio de las noticias, contenido exclusivo, sin anuncios y más. Saber más
La escalabilidad de Bitcoin ha sido uno de los temas más álgidos que ha vivido el ecosistema desde que la criptomoneda madre fuera lanzada en el año 2009. Cómo dar cabida a la creciente base de usuarios que cada día adopta Bitcoin, sin modificar las bases fundamentales sobre las que se sostienen el código y los principios éticos de la moneda, al tiempo que se resguarda la seguridad y confianza en la red; ha supuesto un largo e ininterrumpido debate.
Más de dos años han transcurrido en medio de propuestas, críticas, mesas redondas y conversaciones infructuosas entre desarrolladores, mineros, empresarios y usuarios de Bitcoin –si bien la necesidad de escalar la red se hizo evidente mucho antes, al ver que los bloques de la blockchain comenzaban a trabajar a máxima capacidad. Contra todo pronóstico en un debate que parecía interminable, durante la reciente semana, en los espacios dispuestos por el evento Consensus 2017, como si el nombre del evento lo hubiera vaticinado, la comunidad Bitcoin, por fin, alcanzó el consenso al respecto de este álgido tema.
Ahora, ¿por qué resulta tan importante este pacto y por qué fue tan difícil alcanzarlo? Para abordar estas interrogantes parece necesario clarificar dos nociones que nos salen al paso cuando pensamos la cuestión: escalabilidad y consenso.
Aunque la palabra escalabilidad no es sinónimo exacto de crecimiento, ambas nociones se encuentran cercanamente emparentadas. Bitcoin, sin duda alguna, ha crecido. Ha crecido su número de usuarios y la confianza en la moneda, impulsando a su vez el precio de este activo financiero; ha crecido el número de mineros y ha crecido la dificultad que requiere su labor. Pero en medio de el crecimiento masivo que ha ganado la criptomoneda, el diseño de cada bloque que contiene las transacciones de la red ha permanecido invariable, quedando rezagado frente al resto del crecimiento que ha experimentado la criptomoneda.
Escalabilidad puede entenderse entonces como la capacidad que tiene un sistema o red para manejar una creciente cantidad de trabajo o su potencial de adaptarse para sobrellevar ese crecimiento. A mayor número de entradas –en este caso, transacciones- la red debe ser capaz de procesarlas de manera óptima sin saturarse.
El límite actual de bloque es de tan solo 1MB. Sin embargo, el tamaño del bloque es tan solo uno de las variables que inciden en la escalabilidad. Cada bloque puede pensarse como un contenedor. Si bien aumentando el tamaño del contenedor aumenta la cantidad de cosas que puede contener -esto es, las transacciones-, reduciendo el tamaño de las transacciones sustrayendo la información (data) innecesaria también alivia la cantidad de espacio utilizada para almacenarla. Pero también mejorar los tiempos en que los contenidos son introducidos en el contenedor es una necesidad para escalar la red, la cual debe optimizarse en tiempo y espacio.
Propuestas como X-Thin blocks procura mejoras temporales puesto que, mediante la introducción de los llamados filtros Bloom, los cuales seleccionan previamente las direcciones hash de las transacciones no repetidas entre los nodos para luego propagarlas entre ellos, para así evitar que los nodos reciban dos veces las mismas transacciones, lo cual aumentaría el tamaño de los bloques de forma innecesaria e implicaría pérdidas en tiempo al trabajar más de una vez sobre una misma transacción. Esta solución comprime 24 veces el tamaño de los bloques y mejora considerablemente sus tiempos de propagación.
No obstante, en la actualidad los bloques siguen presentando deficiencias de propagación y trabajando con un límite de espacio de 1MB, soportando un promedio de 2.000 transacciones por bloque, trabajando a bloques llenos y confirmando más de 300.000 transacciones diarias que, al año, daría un promedio de 109 millones de transacciones. Visa procesó 26.3 billones de transacciones tan solo en el primer trimestre de 2016. Y observando el crecimiento del volumen de transacciones en bitcoin de los últimos 8 años, esa es una cifra a la que se podría aspirar.
El problema de fondo persiste: el código que determina los atributos del software de la red no se ha acoplado a los cambios en el panorama actual del ecosistema, y mucho menos ha tomado en consideración el amplio horizonte de adopción de Bitcoin que se avecina en el futuro cercano.
Como consecuencia, la red se ha saturado. Miles de transacciones quedan diariamente aguardando confirmación en una lista de espera que parece interminable. Y quienes no son tan pacientes, pagan mayores tasas a los mineros para que sus transacciones sean priorizadas, creando un mercado de comisiones en una red que se suponía debía ser inmediata y casi gratuita.
Ya se va entendiendo la gravedad de no escalar la red, atentando no solo contra su rendimiento, sino contra sus principios fundacionales y contra la posibilidad de devenir una moneda de uso masivo, objetivo al que se apunta.
¿Por qué, entonces, no se solucionó antes esta problemática? Es aquí donde entra el consenso. Consenso en Bitcoin se entiende en dos sentidos: uno técnico y otro que podríamos llamar político-social. El sentido técnico se desprende de la raíz misma de Bitcoin: el libro blanco de Satoshi Nakamoto. Otros simulacros de dinero digital fueron ensayados previos a Bitcoin (por ejemplo, el b-money de Wei Dai) La contribución de Nakamoto fue articular estos sistemas con criptografía, agregando el engranaje necesario para dejar de depender de terceros de confianza, al tiempo que se previene el doble gasto: una red de consenso distribuida usuario-a-usuario. Nakamoto dixit:
Proponemos una solución al problema del doble gasto utilizando una red usuario-a-usuario. La red coloca estampas de tiempo a las transacciones al crear un hash de las mismas en una cadena continua de pruebas de trabajo basadas en hashes, formando un registro que no puede ser cambiado sin volver a recrear la prueba de trabajo. La cadena más larga no solo sirve como la prueba de la secuencia de los eventos testificados, sino como prueba de que vino del gremio de poder de procesamiento de CPU más grande. Siempre que la mayoría del poder de procesamiento de CPU esté bajo el control de los nodos que no cooperan para atacar la red, estos generarán la cadena más larga y le llevarán la ventaja a los atacantes.
Satoshi Nakamoto
Creador de Bitcoin
Puede observarse que el consenso nace de la raíz misma de Bitcoin. Para que un bloque sea añadido a la cadena principal (la única válida), debe contar con el consenso de todos los participantes de la minería, quienes sirven como testigos de las transacciones. (Cabe aclarar que desde hace muchos años las computadoras domésticas no tienen suficiente rendimiento para minar).
Es precisamente este consenso técnico, seguir las reglas del juego, lo que le da valor a Bitcoin. Que todos los participantes de la red, a través de la minería, certifiquen las transacciones realizadas, confirmando que los bitcoins que se transan no se estén gastando más de una vez, sumando nuevos bloques a la cadena principal y otorgando seguridad a la red, es lo que le confiere validez a las monedas que los mineros minan. De ahí la importancia radical del consenso: si no hay consenso, no hay confianza y el valor de Bitcoin se desploma.
En cuanto al consenso político-social, al ser una red distribuida sin ningún ente central que la gobierne, es decir, al teóricamente encontrarse todos los participantes en una relación horizontal de igualdad respecto a los otros; es indispensable, para realizar cualquier modificación al código base de la red, que esto sea consensuado por todos los miembros del ecosistema. En este sentido, la forma de gobierno –esperada- en Bitcoin, semejaría a la democracia directa ateniense, donde la palabra y voluntad de cada ciudadano tenía el mismo peso y era expresada directamente por su propia voz el ágora sin depender de representaciones. Y estimándose que para el 2019 la base de usuarios de Bitcoin roce los 5 millones, poner de acuerdo a tal cantidad de personas parece un proceso, por lo mínimo, arduo.
Con todo, luego de muchas discusiones, y a pesar de que el proceso de toma de decisión semeja más una representatividad autoelecta que una democracia directa, el consenso político-social para escalar bitcoin ha sido alcanzado y suscrito por una vasta mayoría de mineros, desarrolladores y compañías ligadas al ecosistema; escogiéndose la propuesta Segwit2MB.
En primer lugar, se activará inmediatamente Segregated Witness por el 80% del poder de procesamiento de la red. Esta propuesta, emanada del grupo de desarrolladores Bitcoin Core, consiste en remover de las transacciones la data vinculada a las firmas para reducir su peso en bits, logrando que mayor cantidad de transacciones puedan ser incluidas en un bloque.
En segundo lugar, se activará un hard fork de la red que aumente el límite del tamaño de los bloques a 2MB. Esto significa que, de la cadena principal actual, se realizará una bifurcación a una nueva cadena con límite de 2MB por bloque a la que todos los nodos y mineros deberán migrar, dejando atrás la antigua cadena de un 1MB. O al menos eso se espera; siempre existe el riesgo de que ciertos nodos y mineros se mantengan trabajando con la cadena anterior –tal como sucedió cuando nació Ethereum Classic– dando pie a la aparición de dos cadenas de Bitcoin distintas, las cuales tendrían que luchar por legitimidad entre los usuarios. Sin embargo, hasta los momentos esta posibilidad parece no haber sido planteada públicamente por ningún miembro de la comunidad.
Los beneficios de implementar estas medidas parecen obvios. En primera instancia, la red, actualmente saturada, tendría un respiro y podría dar confirmación a las miles de transacciones que diariamente quedan en cola o simplemente no se confirman. Al eliminar la saturación, se agilizaría relativamente el tiempo de confirmación de transacciones, haciendo desaparecer el mercado de comisiones que se encuentra creciendo en la actualidad y devolviendo a Bitcoin a su tasa por transacción casi gratuita.
Transacciones de menor peso y un mayor límite de bloques posibilitaría una mayor adopción de Bitcoin, moneda que si bien no fue diseñada para ser de uso masivo, el destino la recondujo hacia esos horizontes. Al ser una criptomoneda cuyo precio se rige bajo las leyes de la oferta y la demanda, a mayor demanda y manteniendo estables el resto de las condiciones, el precio de bitcoin en el mercado seguirá creciendo.
Siendo la criptomoneda más popular en la actualidad, es probable que sea la primera en ser adoptada masivamente para pagos, si bien su dominancia en el mercado con respecto al resto de las criptomonedas disminuye cada día más.
Que Bitcoin llegue a ser superada por otras criptomonedas que ofrecen nuevas posibilidades –como los contratos inteligentes de Ethereum, por mencionar alguno- solo el tiempo lo dirá. En este sentido, poniendo el futurible supuesto de que Bitcoin llegue a equiparar el volumen de transacciones diarias de Visa, quizás SegWit y bloques de 2MB no sean suficientes. Puede observarse que las modificaciones planteadas por estas bifurcaciones inciden exclusivamente en la dimensión espacial de Bitcoin. Se hace necesario escalar en términos espacio-temporales en conjunto para optimizar la agilidad de la red.
Muchas otras alternativas para la escalabilidad han sido propuestas: Lightning Network, desde el mismo Bitcoin Core; los bloques de extensión propuestos por BitPay y Purse; el mismo X-Thin Blocks, anteriormente mecionado; entre otros. Estas propuestas no serán descartadas por el hecho de haberse optado, en estas circunstancias, por Segwit2Mb. Por el contrario, parte del compromiso de quienes suscribieron esta propuesta ha sido mantener la investigación y el desarrollo. Para esto es indispensable la presencia de académicos que nutran con su conocimiento el debate.
De igual manera, a fin de profundizar la participación de la comunidad en la toma de decisiones, se hace necesario mejorar los mecanismos de interacción y comunicación con los usuarios a fin de dar más apertura a una red que se pretende distribuida.
Con todo, el consenso apenas fue alcanzado esta semana y seis meses es un largo periodo de tiempo hasta que se active el hard fork. De llegarse a concretar esta propuesta, algo que parece la vasta mayoría de la comunidad espera, resulta imperativo procurar por todos los medios que esta saturación no vuelva a ocurrir; realizar el intercambio de saberes necesario para que bitcoin siga escalando en la misma medida que su base de usuarios crece, para así consolidar el éxito de la red.
Escalar es el mayor reto de las redes blockchain y este apenas es el comienzo. Hay muchas alternativas que probar aún para demostrar su eficiencia y seguridad para el crecimiento de la criptomoneda madre. Pero si algo hay que tener en mente para seguir escalando la red bajo sus fundamentos es no añadir nuevos intermediarios a la ecuación. En otras palabras, los intermediarios en las redes blockchain siempre deben ser los mineros: máquinas autodirigidas por el código de la red que dan validez a nuestros acuerdos en la sociedad digital distribuida. Escalar una red pública basada en blockchain siempre debe orientarse a profundizar la distribución y la descentralización.