¿Cuál es el beneficio de la señalización forzada en un mecanismo de activación de bifurcación suave?

¿Cuál es el beneficio de la señalización forzada en un mecanismo de activación de bifurcación suave? por ejemplo, la fase MUST_SIGNAL en BIP 8 revisado.

Entiendo los beneficios de establecer lockinontimeout (LOT) en verdadero (algunos de esos beneficios se describen aquí ), pero ¿por qué tener un período de, digamos, dos semanas cuando los mineros tienen que señalar antes de que la bifurcación suave pase a la fase LOCKED_IN? ¿Por qué no simplemente definir cuándo comenzará esa fase LOCKED_IN (suponiendo que los mineros no puedan activar la bifurcación suave antes de esa fecha) y deshacerse de la fase MUST_SIGNAL?

Matt Corallo afirma que "la señalización forzada no es necesaria para muchos diseños del día de la bandera y es el mayor riesgo individual de cualquier función propuesta para una activación no controvertida".

Respuestas (2)

Depende mucho de a quién le preguntes. De hecho, yo (y varios otros) hemos argumentado que no hay motivo alguno para la señalización forzada. Greg Maxwell escribió un artículo largo y detallado sobre por qué no proporciona garantías adicionales más allá de lo que proporciona cualquier bifurcación suave en GitHub , que probablemente sea de interés para cualquiera que se encuentre con esta publicación. En última instancia, el punto es "cuándo está activa una bifurcación suave". Probablemente el mejor recurso sobre el tema sea la publicación anterior de Pieter Wuille de 2015 sobre bitcoin-dev , pero para resumir, la respuesta es, en gran medida, "cuando se entiende que la gran mayoría de los nodos económicos en el sistema Bitcoin están aplicando las reglas a través de software de nodo que ejecutan", en otras palabras, "cuando los nodos completos lo imponen".

Ha entrado en la discusión cierta confusión ya que, en muchas bifurcaciones blandas anteriores, hemos utilizado la señalización de mineros para cerrar la brecha entre los nodos completos antiguos que desconocen una actualización y los nodos completos nuevos que hacen cumplir las reglas. Efectivamente, dijimos que "la bifurcación suave está activa cuando los nuevos nodos se han actualizado y los mineros han señalado que están listos por encima de un cierto umbral". las reglas si los mineros se actualizan". Del mismo modo, no hay nada de malo en decir "los nodos siempre hacen cumplir las reglas, porque los mineros no están haciendo lo que los usuarios quieren".

En general, el argumento a favor de la señalización forzada básicamente es así: "si comenzamos asumiendo que los usuarios están ejecutando un software que interpreta el bit de señalización, entonces garantizar que el bit esté activado garantiza que los usuarios están aplicando las reglas". Sin embargo, no hay muchas razones para hacer esa suposición inicial. La razón por la que usamos la señalización de mineros en primer lugar es que reduce el riesgo de bifurcaciones y reorganizaciones visibles para los nodos no actualizados, algo que podría exponer a algunos usuarios a robos de fondos debido al doble gasto. Sin embargo, si usamos señalización forzada, esa ventaja desaparece; de ​​hecho, obtenemos exactamente el resultado opuesto: el primer día de la bifurcación, creamos inmediatamente reorganizaciones visibles para los nodos no actualizados, poniendo su capacidad de aceptar pagos en riesgo.

¿Perdió el acceso a su cuenta anterior de StackExchange, Matt? :) bitcoin.stackexchange.com/users/202/matt-corallo
¡Eh! Parece que lo hice. Francamente, había olvidado que alguna vez tuve uno.
¡Ey! De hecho, tenía una cuenta SO antigua, quién lo hubiera adivinado.

Una fase de señalización forzada de dos semanas (bloques de 2016) tiene dos ventajas principales.

En primer lugar, ofrece una señal a la red de que los mineros harán cumplir las reglas de bifurcación suave en la siguiente fase después de la señalización forzada. Es una señal imperfecta ya que los mineros podrían seguir la señalización forzada y luego no hacer cumplir las reglas de la bifurcación suave, pero es mejor que nada. Hacer esto realmente sugeriría malicia o incompetencia.

En segundo lugar, presenta la posibilidad de que los bloques minados que no están señalando sean rechazados por adelantado.de cuándo se supone que se deben hacer cumplir las reglas de bifurcación suave. Esto no solo proporciona un incentivo para que los mineros señalen (de lo contrario, sus bloques extraídos podrían ser rechazados), sino que intenta, temporalmente hasta que acepten hacer cumplir las reglas de la bifurcación suave, expulsarlos de la red para que solo los mineros que están aplicando la bifurcación suave. las reglas están en la activación posterior de la red. El objetivo principal de la activación de bifurcaciones blandas es intentar coordinar entre nodos completos económicos (y mineros) una altura de bloque desde la que se aplicarán las reglas de bifurcaciones blandas. Intentamos hacer todo lo posible para proporcionar claridad a la red sobre cuál es la altura de este bloque. En un escenario en el que los mineros no han logrado alcanzar el umbral de señalización durante un período prolongado (por ejemplo, un año), la señalización forzada es una herramienta importante en el conjunto de herramientas.

Luke Dashjr declaró en IRC:

El objetivo principal es indicar definitivamente que la horquilla blanda está activa en la cadena. Si bien todavía se basa en la aplicación, esto garantiza que no haya disputas sobre cuáles son las reglas correctas. Como efecto secundario, esto también facilita que cualquier grupo de disidentes rechace las nuevas reglas. La intención de una bifurcación suave nunca debe ser literalmente forzar nuevas reglas (sobre los disidentes)

(Luke se refiere a disentir contra la bifurcación suave en lugar de disentir contra el mecanismo de activación establecido en una implementación de protocolo de Bitcoin).

David Harding agregó que la señalización forzada MUST_SIGNAL tiene un valor adicional en un escenario donde hay nodos BIP 8 (LOT = verdadero) y BIP 8 (LOT = falso) en la red. Garantiza que la bifurcación suave se active para los nodos que configuran LOT=false cuando la mayoría de la red configura LOT=true.

Ejecuto un nodo con LOT=false; todos los demás ejecutan un nodo con LOT=true. En el bloque xxxxxx, todos comienzan a hacer cumplir las reglas de taproot, pero nunca vi ninguna señal, así que continúo tratando las transacciones de taproot como si cualquiera pudiera gastar, lo cual es malo para mí personalmente. Si hay mucha gente con LOT=false, tampoco queda claro si realmente se está aplicando el método de raíz principal, lo que aumenta el riesgo de que los mineros intenten robar los fondos enviados a las salidas de raíz principal.

Además, David Harding argumenta que la señalización forzada no es particularmente peligrosa.

¿Qué hace que la señalización forzada sea tan peligrosa? Tuvimos eso con las horquillas BIP34, BIP66 y BIP65. Excepto por un problema con BIP66 debido a la minería espía, no creo que haya habido ningún problema. La señalización forzada de BIP8 también solo se requiere durante un breve período, por lo que cualquier interrupción debe ser breve.

La comparación de una fase de señalización forzada con un día de bandera se discutió más adelante en este BIP PR .

Cabe señalar que las nuevas reglas se pueden rechazar con la misma facilidad sin forzar la señalización al exigir que el bloque en la altura de activación no sea válido de acuerdo con las reglas rechazadas. ¿Puede explicar qué significa "sin disputa sobre cuáles son las reglas correctas"? Puede haber disputa sobre lo que significa un bit de señalización tan bien como sobre lo que significa la altura de un bloque de bandera.
Gracias por el comentario Nickler. Es la cita de Luke, pero mi comprensión de las "reglas correctas" es si la red está aplicando las reglas de la bifurcación suave o no. De hecho, un bit de señalización forzada no es perfecto a este respecto, pero es mejor que nada. Al menos en mi opinión, seguir la señalización forzada pero luego no hacer cumplir las reglas de la bifurcación suave demuestra malicia o incompetencia. Aunque ambos son posibles, en la mayoría de los casos se esperaría que los mineros que sigan la señalización forzada demuestren que harán cumplir las reglas de la bifurcación suave en una próxima fase.