5 Propuestas de optimización
Debido a su carácter de código abierto, Bitcoin cuenta con una comunidad de desarrolladores apasionante que crece cada més. Esta es otra de las patas mágicas que tiene Bitcoin, algunos de los mejores cerebros del planeta trabajando de forma totalmente altruista por un bien común. No hay dinero que pague eso.
Esto permite que miles de mentes piensen de forma colaborativa y paralela en soluciones desde diferentes puntos de vista a un mismo problema. Y aunque las decisiones se tomen lentas, las implementaciones no se detienen.
Entre las decenas de propuestas atacando por diferentes aristas del problema, a continuación hemos seleccionado 5 categorías que pretenden colaborar para hacer que el motor de Bitcoin pase de ser un Renault dos caballos a un Ferrari.
1. Lightning Network
Probablemente una de las propuestas más interesantes. Propone una única solución para 3 problemas que actualmente tiene Bitcoin: La escalabilidad, las transacciones instantáneas y los micropagos.
Para ello utiliza lo que se conoce como canales de pagos convertidos en smart contracts que, teóricamente, podrían permitir escalar a Bitcoin a niveles de millones de transacciones instantáneas de verdad y baratas.
Os recomendamos el siguiente capítulo de la Guía Bitcoin dedicado a Lightning Network.
2. Bloques dinámicos
Con esta propuesta se busca sustituir el tamaño máximo del bloque, que actualmente es fijo, por un tamaño de bloque máximo controlado dinámicamente que pueda aumentar o disminuir con el cambio de dificultad de minado a través de diversos factores de la red.
De esta forma, si la red lo necesita tamaño extra en un momento dado, el bloque aumentaría, si le sobra disminuiría.
En este capítulo de la guía lo tratamos más en detalle: bloques dinámicos.
3. Invertible Bloom Lookup Table (IBLTs) y weak blocks
Estas mejoras van dirigidas a optimizar el tiempo que tardan en propagarse los bloques a los mineros.
Dada la preocupación de los mineros en como la escalabilidad puede repercutir en sus ingresos, e incluso la desaparición de estos, estas propuestas prometen ahorrar hasta un 90% en ancho de banda al optimizar la forma en cómo la información se propaga entre los nodos.
Estas funcionalidades se han mencionado en el hoja de ruta de desarrollo de Bitcoin del 2016 (aunque no con una fecha concreta) y se esperan que aparezcan implementadas en cualquier momento.
Puedes ver aquí una presentación del 2015 sobre estas propuestas (en inglés).
No obstante, es interesante ver como Kalle Rosenbaum (que fué parte de la presentación) tiene serias dudas sobre la propuesta de bloques débiles y sus ventajas e intenta desmarcarse de ella tras la aparición pública que hizo en la presentación de 2015 en Hong Kong.
“Siempre he dudado de la propuesta de bloques débiles, a pesar de que hice una presentación conjunta con Rusty Russell sobre esta propuesta (bueno, él hizo la parte de bloques débiles, yo hablé de IBLT, pero compartí el escenario con alguien hablando sobre bloques débiles)”
Kalle Rosenbaum – Ver post completo, publicado meses después de la presentación
4. Cadenas laterales (Sidechains)
Las Sidechain es otro de los conceptos más sonados y que está ligado, de alguna forma, a la escalabilidad de Bitcoin.
Con las sidechains podrían crearse blockchains alternativas para casos de uso concretos, con reglas concretas pero conectadas completamente a la cadena de bloques de Bitcoin, a la cual le permitirían reducir la carga.
Técnicamente no se trata de una mejora en la escalabilidad, pues no ayuda a que Blockchain pueda soportar ningún kb extra, pero en la práctica ofrecen la posibilidad de procesar más transacciones, pues cadenas laterales pueden usarse para casos concretos reduciendo la carga de la principal.
Te recomendamos el capítulo de la guía dedicado a explicar más de cerca esto: sidechains.
5. Testigos segregados (Segregated Witness)
Esta es la apuesta más famosa en la línea de “ordenar la casa antes que tirar las paredes para ampliarla”.
Buscan transacciones más pequeñas y no bloques más grandes. ¿Cómo se hace esto? Reduciendo, a través de criptografía, la información que va añadida a cada transacción.
Este sistema, que afirma poder doblar (e incluso en algunos casos cuadruplicar) el número de transacciones que entrarían en un solo bloque sin modificar el tamaño de este ya se ha implementado en la red testnet de Bitcoin.
Ha sido finalmente añadida a la última versión del software y en los próximos meses se empezarán a ver los resultados de la medida.
Te recomendamos el capítulo de la Guía Bitcoin de Bit2Me que habla sobre Bitcoin Classic, Unlimited o el fallecido XT, para conocer tres propuestas alternativas a Bitcoin Core (el código fuente de Bitcoin y el programa de referencia por otros desarrolladores) con implementaciones de algunas propuestas sobre escalabilidad que, además, tiene una infografía sobre Segregated Witness.