¿En qué escenarios puede disminuir el tamaño de la cadena de bloques para bitcoin?

Estoy ejecutando una red privada de bitcoin para la cual cambié el tiempo objetivo entre dos bloques 12 secondsy el ajuste de dificultad al 25 blocksintervalo. Ejecuté la red durante unas 4 horas con 50 nodos. En uno de los registros del nodo, observé que la altura de la cadena de bloques aumentó hasta un máximo de 181 y luego comenzó a disminuir, hasta llegar a 38. Lo que podría ser una explicación para un comportamiento tan extraño.

Consulte el registro a continuación:

2015-11-04 01:58:47 receive version message: /Satoshi:0.11.99/: version 70011, blocks=181, us=0.0.0.0:0, peer=2, peeraddr=127.0.0.1:44117
2015-11-04 01:58:47 UpdateTip: new best=0000005265ca4ce01ad0d06f45cf475bf303de3d64e942c5cf1177e00f346c78  height=180  log2_work=37.083283  tx=30941  date=2015-11-04 01:53:17 progress=1.000000  cache=0.0MiB(1tx)
2015-11-04 01:58:47 UpdateTip: new best=00000052a34cedf3c5ddbeb46d36644654523db855c4cce984d2623e840dd219  height=179  log2_work=37.082953  tx=30940  date=2015-11-04 01:53:10 progress=1.000000  cache=0.0MiB(2tx)
2015-11-04 01:58:47 UpdateTip: new best=00000030fd7652affb883f05fe0c98e7fe3fbc3cfd74808e061ed05ec61c22e6  height=178  log2_work=37.082623  tx=30939  date=2015-11-04 01:52:55 progress=1.000000  cache=0.0MiB(3tx)
2015-11-04 01:58:47 AddToWallet c32bcbd8102c602a5e71ee717232e204435f331dce6fbfb9eb5d552698faa95b
2015-11-04 01:58:47 AddToWallet 1c91517aeadd12bcbcfdf4a1423b671d405543ae9abfbd87078969ce1971663f
2015-11-04 01:58:47 AddToWallet b11f9c2e3b1ab3d3983da63783bb95903d89405243d0716ea88272a9261b7a33
Eso es realmente extraño. ¿Puede pegar el registro completo, incluido dónde se agregan o eliminan los bloques?
De acuerdo, ¿puede mostrarnos dónde disminuyó la altura de la cadena de bloques a 38? No está en el registro que has publicado.
La mejor cadena se selecciona por la mayor dificultad acumulada, no por la altura. Sus modificaciones esencialmente han asegurado bifurcaciones y reorganizaciones frecuentes. Los ajustes de dificultad son largos en Bitcoin son un período largo en parte como resistencia a los ataques, pero también para evitar movimientos de cadena ruidosos. Es completamente legal que la altura de la cadena se reduzca drásticamente.
@Bitcoin Pero el registro publicado por bawejakunal muestra que el trabajo total disminuye cuando el cliente cambia la cadena de bloques. Antes: height=181 log2_work=37.083613Después: height=38 log2_work=36.832912La cadena de bloques 38 está completamente contenida dentro de la cadena de bloques 181.
@NickODell Creo que hay otros retoques equivocados en ese caso que no estamos viendo. Es difícil decirlo sin conocer todo el conjunto de parches.
@bawejakunal, no veo nada en el enlace que proporcionaste. ¿Puedes probar pastebin?

Respuestas (1)

Parece que esta parte del código es lo que estaba agregando todos esos mensajes UpdateTip:

https://github.com/bitcoin/bitcoin/blob/8fe30fb4d130532d4a0e4c9d143f03e1b85a749e/src/main.cpp#L2234

Esencialmente, bitcoind cree que existe otra cadena con más trabajo acumulativo en su red de 4 nodos, aunque a partir de los registros, es difícil saber cuánto más baja es. Tendrás que ejecutarlo durante más tiempo para averiguarlo.

Oh, ¿quieres decir que este es el caso de cambiar entre dos cadenas de bloques competidoras?
Sí. Esto podría suceder si, por ejemplo, uno de sus nodos no estuviera recibiendo bloques, solo enviándolos.