¿Un nodo de 2009 sincroniza toda la cadena de bloques de bitcoin?

Entonces, ¿un nodo de 2009 sincroniza toda la cadena de bloques de bitcoin y la división temporal de 2013 tiene algún impacto en eso?

Respuestas (2)

En teoría, puede hacerlo, ya que las reglas de consenso explícito no han cambiado. Sin embargo, en la práctica, no podrá sincronizarse sin algunas modificaciones especiales.

En primer lugar, la versión de red es tan antigua que ningún software de nodo moderno aceptará conexiones desde ella. Además, el formato de los mensajes de red ha cambiado desde la primera versión, por lo que ahora contiene una suma de comprobación del mensaje. La primera versión del cliente de Bitcoin no tenía una suma de verificación para los mensajes. Esta diferencia en el protocolo de red dará como resultado mensajes que no tienen sentido para ninguno de los nodos de una conexión.

Además del cambio de mensaje de red, el cliente Bitcoin original no podrá encontrar nodos a los que conectarse. Solo pudo conectarse únicamente mediante el descubrimiento de nodos IRC, que desde entonces se ha desactivado y eliminado. Por lo tanto, deberá construir especialmente el archivo peers.dat para que pueda encontrar un compañero al que conectarse.

Por último, el cliente Bitcoin original no podrá sincronizarse más allá de la bifurcación de 2013 a menos que aumente la cantidad de bloqueos BDB. Usando la configuración predeterminada, se quedará sin bloqueos cuando llegue a ese momento y, por lo tanto, no se sincronizará.

Si puede evitar todos estos problemas (por ejemplo, mediante el uso de un software de nodo especial específicamente para sincronizar) y aumentar la cantidad de bloqueos BDB, entonces el cliente Bitcoin original debería poder sincronizar la cadena de bloques actual, aunque muy lentamente y posiblemente nunca podrá sincronizar con la punta. Hacia la punta actual de la cadena de bloques, probablemente llevará más tiempo validar un bloque que encontrar un nuevo bloque.


Hace varios meses modifiqué una versión de Bitcoin Core para que fuera compatible con Bitcoin 0.1.0 y luego intentar sincronizarlo. El código para eso está aquí . Detuve ese experimento después de unos días cuando solo podía sincronizar ~25,000 bloques.

(sí/no/más o menos... ver mejor respuesta de Andrew Chow)

Sí, se sincronizará. Aunque será muy lento ya que la cadena de bloques es bastante grande en estos días y el código no estaba tan bien optimizado en ese entonces.

El evento de 2013 no tendrá ningún efecto, ya que se sincronizará con la cadena más larga (la de mayor trabajo).

En realidad, no lo hará, pero por una razón estúpida. Las sumas de verificación se introdujeron en el protocolo P2P en la versión 0.2.10 (junio de 2010) y en 2012 se eliminó la compatibilidad sin suma de verificación. Necesitará algún nodo entre esas fechas para actuar como un puente entre los dos.
La bifurcación dura de 2013 aún causará un problema porque no hay suficientes bloqueos BDB disponibles para el cliente Bitcoin original.