¿Cómo sabemos qué bifurcaciones suaves se implementaron usando la bifurcación suave activada por el usuario o la bifurcación suave activada por el minero?

Esta parece ser la definición más común.

  • Cuando la mayoría de los mineros se actualizan para hacer cumplir las nuevas reglas, se denomina bifurcación suave activada por minero (MASF). Cuando los nodos completos se coordinan para hacer cumplir las nuevas reglas, sin el apoyo de los mineros, se denomina bifurcación suave activada por el usuario (UASF).

¿Cómo sabemos qué bifurcaciones suaves fueron implementadas por nodos completos que actualizan clientes o mineros que actualizan clientes? ¿Hay alguna forma de saberlo, o simplemente lo adivinamos?

https://github.com/bitcoin/bitcoin/blob/master/doc/bips.md

Respuestas (1)

La mayoría de las bifurcaciones blandas anteriores se implementaron con bifurcaciones blandas activadas por mineros, y lo sabemos porque los mecanismos de implementación utilizados solo permitían bifurcaciones blandas activadas por mineros. Para que ocurra una bifurcación suave activada por el usuario, el mecanismo de implementación debería tener alguna forma de activación que no dependa de los mineros. Hasta ahora, los métodos de activación utilizados se han implementado en función del comportamiento de los mineros y no de un día de bandera.

Hay dos excepciones a esto en las que se podría argumentar que esas bifurcaciones blandas fueron activadas por el usuario y no por el minero. El primero es BIP 16 que aparentemente se activó a través de un día de bandera (es decir, todos los bloques después de cierto tiempo deben admitir BIP 16). Sin embargo, el día de la bandera se determinó solo después de que un cierto umbral de mineros señalara su apoyo al BIP 16 en sus bloques. Entonces, si bien el código era un día de bandera, el proceso seguía siendo una bifurcación suave activada por el minero, simplemente realizada manualmente en lugar de a través del código.

La segunda excepción es segwit. Sin embargo, segwit usó BIP 9 como mecanismo de activación y eso depende completamente de la señalización del minero. Entonces, técnicamente, es estrictamente una bifurcación suave activada por minero. Pero se podría argumentar que fue activado por el usuario porque los usuarios estaban ejecutando un software que se habría activado en un día de bandera, pero los mineros comenzaron a indicar que estaban listos antes de ese día. Entonces, el mecanismo exacto fue a través de la señalización del minero, pero tal vez fue activado por el usuario porque los usuarios amenazaron a los mineros al ejecutar un software que tenía un mecanismo activado por el usuario.

Para futuras bifurcaciones blandas, es probable que se utilice una combinación de BIP 9 (MASF) y BIP 8 (tanto MASF como UASF). Luego puede determinar si fue activado por el minero o por el usuario. Para ambos, los mineros pueden señalar en sus bloques para activar la bifurcación. Solo para BIP 8, después de un cierto tiempo, la bifurcación se activará a través de un día de bandera, por lo que si eso ocurre, entonces es una bifurcación suave activada por el usuario.

La única bifurcación suave que debe clasificarse como UASF es BIP 30. Esto fue activado por un día de bandera y la señalización minera no fue oficialmente parte de la activación.

Gracias Andrew Esto era exactamente lo que estaba buscando. No estaba del todo seguro de qué tipo de bifurcación blanda clasificar BIP30, aquí es donde me quedé atascado. Realmente nunca pensé que la implementación de BIP16 fuera diferente en código y práctica. Tendré que pensar un poco en esto.
Creo que las bifurcaciones suaves de SourceForge también pueden haber sido UASF, particularmente el tamaño de bloque de 1 MB.