0

Let's say the current chain consensus has a total POW of X... this is agreed upon by all 10k+ BTC nodes.

A new "magic" node joins and it has mined a chain (privately) with total POW = 2*X. The new nodes chain is on the order of hundreds of thousands of blocks as is the current consensus chain...but they are totally non-overlapping, how would the "magic nodes" new higher POW chain propagate through the network (or would it?)

1 Answer 1

1

There is no limit to how far a node will reorg given a chain with a larger proof of work, as long as the chain also starts from the hardcoded genesis block (which means they cannot be completely "non-overlapping").

As far as I can tell, the propagation of the new chain would go something like this*: The nodes first coming into contact with the "magic node" will start downloading and validating this new chain, until they validate far enough that its proof of work has exceeded their original chain's POW. This might take minutes to days depending on the distribution of mining difficulty in this new chain, how many transactions are in each block (if any) and also on the node's processing power and bandwith. At this point the node will start relaying this new chain to its peers and they would start validating it. Thus the new chain will slowly but surely propagate through the network until all nodes are synced.

* Based on some assumptions about how Bitcoin nodes should work.

2
  • Got it. I'm interested in the technical details of "coming into contact" ... My understanding is that the bitcoin nodes only validate against a peer header chain upon initial start or restart... then they depend on receiving propagated blocks from neighbors. So there seems to be an edge case if no node in the network reboots (and thus no node ever loads the new header chain from the "magic node")
    – user491880
    Jan 3, 2022 at 1:45
  • A node must be able to accept conflicting chain headers at any time there might be a reorganization, not just when it's restarted. Jan 3, 2022 at 2:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.