Kryptomonedas
Bitcoin

Las Propuestas de Bitcoin. ¿Qué son?

BIP148 BIP141 BIP91

El largo debate sobre la escalabilidad de Bitcoin parecía encaminarse hacia un desenlace en las últimas semanas, con dos propuestas que ganaban una tracción importante. De un lado estaba la propuesta de mejora de Bitcoin 148 (BIP148), una bifurcación suave activada por los usuarios (UASF) propuesta originalmente por el desarrollador que usaba el seudónimo “shaolinfry”. Del otro lado se encontraba SegWit2x, un acuerdo forjado entre un número significativo de empresas de Bitcoin y mineros.

La buena noticia es que ambas propuestas compartían una solución a corto plazo: las dos planeaban activar Segregated Witness (SegWit) ese verano. La mala noticia es que el método de activación difería entre una y otra, lo que podía conducir a una división de monedas.

Todo apuntaba a que esa catástrofe se evitaría, al menos en un primer momento. El equipo de desarrollo de SegWit2x planeaba implementar BIP91, una propuesta del ingeniero de Bitmain Warranty James Hilliard que hace compatibles, de forma ingeniosa, los dos métodos de activación en conflicto.

Te lo explicamos.

BIP141

La implementación actual de Testigo Segregado (SegWit) está definida por BIP141. Esta versión se incluye en los últimos lanzamientos de Bitcoin Core y está ampliamente desplegada en la red Bitcoin. BIP141 se activa mediante el método de activación definido por BIP9. Eso significa que el 95 por ciento de todos los bloques dentro de un período de dos semanas deben incluir un dato concreto: el “bit 1”. Ese dato indica que un minero está listo para la actualización. Así, SegWit se activaría si la gran mayoría de los mineros estuvieran preparados para ello.

Esa era la intención, al menos. Hasta ese momento, solo un 30 por ciento de la potencia de hash señalizaba soporte para la actualización. Había mucha especulación sobre las razones, pero casi con seguridad no tenía nada que ver con una falta de preparación.

Por eso se consideraban cada vez más otros métodos de activación.

BIP148

BIP148 es una bifurcación suave activada por el usuario (UASF), diseñada específicamente para activar BIP141.

El 1 de agosto, cualquiera que ejecutara el software de Bitcoin que implementara BIP148 empezaría a rechazar todos los bloques que no incluyeran el bit 1, el dato de señalización de SegWit.

Eso significa que, si una gran mayoría de mineros (por potencia de hash) ejecutaba ese software, rechazarían todos los bloques de la minoría de mineros que no lo hiciera. Como resultado, esa mayoría de mineros siempre tendría la cadena válida más larga según todos los nodos Bitcoin de la red. En consecuencia, todos los nodos BIP141 desplegados verían una cadena que incluye más del 95 por ciento de los bloques con bit 1, lo que activaría SegWit en la red.

Sin embargo, si BIP148 no contaba con el apoyo de la mayoría de los mineros (por potencia de hash), la cadena de bloques de Bitcoin podía dividirse en dos. En ese caso habría, en la práctica, dos tipos de Bitcoin: uno con BIP148 activado y otro sin él. Esa situación podía resolverse con el tiempo, o no.

SegWit2x

SegWit2x (también conocido como “SegWit2MB” o “el Acuerdo de Silbert”) es el acuerdo de escala alcanzado por varias empresas de Bitcoin y más del 80 por ciento de los mineros (por potencia de hash), redactado justo antes de la conferencia Consenso 2017.

Durante un tiempo, los detalles que rodeaban a SegWit2x no eran muy precisos. Como sugiere su nombre, todo lo que se sabía era que SegWit estaba incluido en el acuerdo y que este contemplaba una bifurcación dura para duplicar el “tamaño de bloque base” de Bitcoin hasta dos megabytes.

SegWit, por su parte, se implementaría con un método de activación distinto. Al igual que la propuesta original BIP141, SegWit2x debía ser activado por los mineros mediante la potencia de hash. Pero donde BIP141 requiere un 95 por ciento de la potencia de hash, SegWit2x solo exigiría un 80 por ciento. La preparación de SegWit2x, además, se señalizaría con otro dato de activación: el “bit 4” en lugar del “bit 1”.

Eso hace que SegWit2x sea en gran medida incompatible con BIP141, y especialmente con BIP148. Distintos nodos buscarían distintos bits de activación, lo que significa que podrían activar SegWit en circunstancias y momentos diferentes. También se estropearía la política específica de retransmisión de bloques de SegWit entre nodos, con el riesgo de fracturar la red.

BIP91

Ahora bien, parece que BIP91 ha aportado la solución.

BIP91 es una propuesta del ingeniero de Bitmain Warranty (no confundir con Bitmain) James Hilliard, diseñada específicamente para evitar una división de monedas al hacer compatibles SegWit2x y BIP148.

La propuesta se asemeja a BIP148 hasta cierto punto. Al activar BIP91, todos los nodos BIP91 rechazarán cualquier bloque que no señalice soporte para SegWit a través del bit 1. Así, si la mayoría de los mineros (por potencia de hash) ejecuta BIP91, la cadena Bitcoin válida más larga estará formada solo por bloques que señalizan SegWit, y todos los nodos regulares BIP141 SegWit activarán la actualización del protocolo.

BIP91 se diferencia de BIP148 en que no fija una fecha de activación, sino que se activa por potencia de hash. Los nodos BIP91 rechazarán cualquier bloque que no señalice SegWit si, y solo si, el 80 por ciento de los bloques así lo indican dentro de un plazo de dos días.

Esa indicación se hace con el bit 4. De este modo, el Acuerdo de Silbert puede mantenerse técnicamente (80 por ciento de activación por potencia de hash con el bit 4) a la vez que se activa la propuesta SegWit existente. Y si esto se hace antes del 1 de agosto, también resulta compatible con BIP148, ya que los nodos BIP148 rechazan de la misma manera los bloques que no llevan el bit 1.

↑ Volver arriba