¿Cómo crear una instantánea de blockchain para un hardfork?

He hecho bifurcaciones de fuentes (altcoins) y entiendo cómo funcionan. Pero estoy un poco atascado en cómo se activan las bifurcaciones. ¿Necesito saber cómo se crean las instantáneas de blockchain y cómo saben las billeteras distribuir las ofertas iniciales de la bifurcación? Si alguien pudiera señalarme una confirmación y/o PR particular de Bitcoin Cash u Gold donde se encuentra esta lógica, estaría muy agradecido.

Respuestas (1)

Las bifurcaciones duras son simplemente extensiones de una cadena de bloques donde los nuevos bloques siguen diferentes reglas de consenso que no son compatibles con la cadena de bloques original. No hay instantáneas reales en una verdadera bifurcación dura. El software de la bifurcación dura simplemente se sincroniza hasta cierto punto con la cadena de bloques original y, después de ese punto, se aplica una nueva regla de consenso que entra en conflicto con la cadena original y, por lo tanto, provoca una bifurcación de la cadena de bloques. Esto simplemente se rige por una ifdeclaración en el código de validación del bloque.

La bifurcación simplemente es activada por un minero que extrae un bloque después de cierto bloque o punto en el tiempo que sigue reglas de consenso diferentes de la cadena original.

Por ejemplo, con Bitcoin Cash, su software impuso que el primer bloque creado después del 1 de agosto a las 12:00 UTC debe tener más de 1 MB y también sigue las reglas de consenso de Bitcoin Cash (tamaño de bloque más grande, nuevo algoritmo hash de firma, etc.) . Esto está codificado como una ifdeclaración en la lógica de validación de bloques que verificó el tiempo de un bloque antes de ejecutar diferentes verificaciones de reglas de consenso. No se toma ninguna instantánea real; su cadena de bloques hasta ese bloque de bifurcación es exactamente idéntica a la de Bitcoin y se puede sincronizar con un nodo de Bitcoin.

There is no actual snapshot that is taken; their blockchain up until that forking block is exactly identical to Bitcoin's and can be synced off a Bitcoin node.- Lo entiendo, así que quieres decir que esta sincronización no tiene que ser parte del código de la bifurcación per se. ¿Pueden simplemente sincronizarlo hasta su altura bifurcada usando bitcoind y luego ejecutar su propio demonio modificado?
Sí. Pero en su daemon modificado, también tienen un código que maneja las reglas previas a la bifurcación para que también se puedan sincronizar.