Bitcoin y el desafío de la escalabilidad

Por Jameson Lopp

Hace un tiempo ya que se viene debatiendo si conviene o no aumentar el tamaño máximo del bloque permitido por el protocolo Bitcoin, ya que nos estamos acercando al límite actual de 1 MB. Si bien no hay consenso acerca de si debemos o no aumentar el límite, está claro que el hacerlo no resolververá todos los problemas de escalabilidad de Bitcoin, simplemente aumentará la carga de información que el protocolo permitirá generar.

scaling_bitcoin1Hay una multitud de propuestas para hacer escalables distintos aspectos de Bitcoin:

También podemos esperar con optimismo que algunas de las «leyes» de la informática alivien la carga de la infraestructura de Bitcoin:

Sin embargo, mientras yo era inicialmente optimista en cuanto a que uno o más de los factores anteriores pudieran llegar a resolver los problemas de escalabilidad de Bitcoin, me he dado cuenta de que aún así se requiere un aumento del límite al tamaño de los bloques. El problema es que incluso con canales de pagos y cadenas laterales, las transacciones deben ser registradas –muchas menos, pero seguirá siendo necesario registrarlas en la cadena de bloques–. Afortunadamente, Backbone Network, IBLT, y UTXO commitments hacen que sea más fácil para la red trabajar con bloques más grandes.

network_effectSi optamos por escalar usando canales de pagos, aunque es cierto que estos permitirían a los usuarios llevar a cabo con eficiencia cientos o miles de transacciones a bajo costo, cada canal en algún momento debe cerrarse y emitir una típica transacción Bitcoin que quedará registrada en la cadena de bloques. Tom Harding ha señalado que para que los canales de pagos resuelvan el problema de escalabilidad de Bitcoin como moneda universal sin aumentar el tamaño de los bloques, tendría que haber unas 25.000 transacciones en canales de pagos por cada transacción registrada en la cadena de bloques, lo que haría económicamente inviable el uso de Bitcoin.

Si optamos por escalar a través de las cadenas laterales, podríamos crear cadenas de bloques alternativas que soporten bloques mucho más grandes y más transacciones por segundo. Sin embargo, todavía habría un límite debido al proceso de vinculación entre la cadena de bloques de Bitcoin y los activos de la cadena lateral. Para transferir un activo desde o hacia una cadena lateral es necesario publicar una prueba criptográfica que permita bloquear y desbloquear su posesión, y esto requiere el registro de una transacción Bitcoin. Por lo tanto, el tamaño máximo de los bloques limitará la velocidad a la que los activos puedan ser transferidos entre cadenas. Esto probablemente se traducirá en un crecimiento de los sitios de intercambio centralizados –que operan al margen de cualquier cadena de bloques– como la manera más popular de intercambiar activos criptográficos. Y como ya sabemos, esto es algo riesgoso, tanto desde el punto de vista de la seguridad como el de la privacidad. Una vez más nos encontramos con la necesidad de hacer un balance entre conveniencia, privacidad y seguridad.

noticias-bitcoin-goxMi colega Ryan X. Charles ha calculado que muy bien podríamos a la larga soportar bloques de 10 GB si Bitcoin fuera a convertirse en una red global de liquidaciones, con la mayoría de las transacciones cotidianas triviales ocurriendo fuera de la cadena o en una cadena que no sea la de Bitcoin. Si bien esto puede parecer una barbaridad para muchas personas, sólo 20 años atrás esos 10GB habrían demorado 2 semanas en descargarse a través de una conexión residencial, mientras que hoy lo mismo demora unos 30 minutos. Pero, como Tom y Ryan notan, podríamos ser capaces de garantizar la escalabilidad de la cadena de bloques de Bitcoin mediante nuevos tipos de nodos que sólo sean responsables de almacenar y servir porciones de la cadena de bloques.

Mientras que Bitcoin es un sistema increíblemente descentralizado, y existen una serie de excelentes propuestas para que escale de una manera descentralizada, cada vez es más evidente para mí que en un mundo de muchas cadenas de bloques, el valor seguirá estando respaldado por Bitcoin. Cualquier solución que se base en el valor y la seguridad de la cadena de bloques de Bitcoin va a generar, inevitablemente, una mayor demanda de bitcoins, lo que se traducirá en más transacciones Bitcoin, y esto demanda bloques más grandes. Por lo tanto, aunque el aumento del tamaño de los bloques no es en sí mismo una solución definitiva a los problemas de escalabilidad, todas las soluciones de escalabilidad que han sido propuestas dependen de bloques más grandes para tener éxito.

Ver texto original en inglés