¿Una bifurcación suave da como resultado dos versiones diferentes de blockchain?

He leído lo siguiente:

Ambas bifurcaciones crean una división, pero una bifurcación dura crea dos cadenas de bloques y una bifurcación suave está destinada a dar como resultado una.

Consideremos 2 situaciones:

  1. El límite máximo de tamaño de bloque es de 1 MB y Bitcoin introdujo una nueva versión que aumentó el límite de tamaño de bloque en 1, por lo que ahora es de 2 MB. Ahora, esto se llama bifurcación dura, ya que las nuevas versiones no serían compatibles con las antiguas, porque cuando las nuevas versiones resuelven un bloque (digamos 1.5mb), las antiguas no lo aceptarían. (NOTA: si los antiguos envían bloques a los nuevos (ya que los antiguos solo resolverían bloques con menos de 1, los nuevos siempre lo aceptarían)); Entonces, los nuevos no pueden comunicarse con los viejos, pero los viejos sí pueden con los nuevos.

  2. el tamaño del bloque era de 1 mb y ahora lo redujimos en 0,5, por lo que ahora es de 0,5 mb. Ahora, las nuevas versiones son compatibles con las antiguas, porque las nuevas versiones siempre resolverían bloques con 0.5mb o menos y cuando se lo envían a las antiguas, lo aceptan. (NOTA: cuando los antiguos envían bloques a los nuevos (dado que los antiguos pueden resolver bloques con 0.8mb, los nuevos no lo aceptarían)); Entonces, los nuevos pueden comunicarse con los viejos, pero los viejos no con los nuevos.

¿Estás de acuerdo con lo anterior? Si es así, ¿por qué en mi primera oración dice: eso a soft work is meant to result in one? No dará como resultado uno, ya que cuando los antiguos resuelven bloques de más de 0,5 MB, los nuevos no lo aceptarían, por lo que todavía tendríamos una versión diferente de blockchains. ¿Alguna idea?

ACTUALIZACIÓN: @Murch, usted dice en el segundo que dado que los bloques pequeños (de los nuevos nodos) son aceptables para los nodos antiguos, los nodos de bloques grandes se reorganizarán en la cadena de bloques pequeños.

Si el 5% de la minoría (que funciona en la antigua cadena de bloques grandes) resuelve un bloque, solo esos nodos del 5% lo agregarán a sus cadenas. El 95% no lo hará, ya que tienen un límite más pequeño en el tamaño del bloque. Ahora, el 5 % de los nodos minoritarios tiene el último bloque diferente del último bloque del 95 % mayoritario (la longitud de ambas cadenas es la misma; eso podría haber sido porque después de dividir las cadenas, el 5 % lo resolvió en la misma semilla que el 95 %). en su respectiva cadena). si la mayoría del 95% ahora produce un nuevo bloque y lo comparte con el 5%, aún no lo agregarán porque el hash anterior de este bloque recién compartido no coincidirá con el hash de su último bloque. Entonces, en este caso, la mayoría del 95% producirá un bloque nuevo más rápido (al menos ahora, las longitudes no son las mismas), por lo que ahora, la mayoría compartirá 2-3 bloques con la minoría, ya que tienen la cadena más larga y es por eso que la minoría lo hará. adaptarse a la mayoría' s cadena al final. ¿Es correcta mi explicación y comprensión?

Respuestas (2)

Su observación es correcta, excepto que se espera que una gran mayoría de nodos y mineros en la red activen una bifurcación. La bifurcación blanda más reciente tenía un umbral de activación de 950 bloques en segmentos específicos de 1000 bloques que indican la preparación (95 % de hashrate) para las nuevas reglas.

Entonces, asumiendo que solo el 5% del poder minero no sigue las nuevas reglas:

  1. Aumento del tamaño del bloque : el 95 % de la potencia minera permite bloques más grandes ahora, el 5 % sigue imponiendo el límite más pequeño. Tan pronto como se encuentra un bloque con las nuevas reglas, los nodos antiguos que no permiten bloques más grandes rechazan la cadena principal y comienzan su propia punta de cadena. La cadena minoritaria se mueve mucho más lento y, por lo tanto, la mayoría de los mineros y nodos la ignoran. Suponiendo que las proporciones de la división se mantengan estables, las dos cadenas seguirán siendo irreconciliables. Para reparar la división de la red, un lado tendría que ceder y adoptar las reglas del otro lado.

  2. Tamaño de bloque decreciente: Aproximadamente 1 de cada 20 bloques superará el límite impuesto por la mayoría. Solo los nodos que todavía usan las reglas antiguas aceptarán el bloque más grande, todos los demás nodos lo ignorarán. La mayoría de la tasa de hash superará rápidamente a la minoría del bloque grande. Dado que los bloques pequeños son aceptables para los nodos antiguos, los nodos de bloques grandes se reorganizarán en la cadena de bloques pequeños tan pronto como la punta de la cadena tenga una prueba de trabajo más completa. Dado que la dificultad entre las puntas de la cadena solo puede diferir entre los reajustes de dificultad, esto generalmente sucede cada vez que la cadena de bloques pequeños avanza un bloque en altura. Como el bloque grande ahora se convierte en parte de una punta de cadena obsoleta, el minero que creó el bloque grande pierde su recompensa de bloque. Como resultado, cada vez que se produce una bifurcación de cadena corta con bloques grandes, la red finalmente converge de nuevo en la cadena más pequeña.

Gracias Murch por la buena explicación. Acabo de agregar una actualización a mi pregunta. Le agradecería que me hiciera saber si esa explicación le parece correcta.
@NikaKurashvili: modifiqué mi respuesta para aclarar ese punto.

Bifurcación suave y bifurcación dura aquí, si quiere ser preciso, son declaraciones sobre las condiciones bajo las cuales se garantiza que todos los nodos eventualmente estarán de acuerdo en la misma cadena. Entonces se trata de evitar las bifurcaciones permanentes y las condiciones para evitarlas. Las divisiones temporales siempre son posibles, incluso cuando no hay ningún cambio de consenso.

Un cambio de regla de consenso se denomina cambio de bifurcación suave si se garantiza que no se produzca una división permanente cuando la mayoría del hashrate adopte el nuevo cambio. Existen mecanismos para permitir que los mineros indiquen que están listos, y la activación generalmente solo ocurre cuando una gran mayoría de las señales de hashrate. Este es el caso cuando los nuevos bloques son aceptables tanto para los nodos antiguos como para los nuevos, porque incluso si los nodos antiguos continúan minando, nunca lograrán construir la cadena más larga; en cambio, los nuevos nodos los superarán y los antiguos cambiarán a construyendo sobre la cadena mayoritaria de los nuevos nodos después de cada bloque.

Un cambio de bifurcación dura es aquel en el que la mayoría de la tasa de hash que lo adopta no es suficiente. Por lo general, estos requieren efectivamente una adopción de hashrate del 100 % (o, más comúnmente, una adopción de software de nodo del 100 %).