I understand that forks are resolved by largest proof-of-work etc. but when do the miners decide to resolve a fork? Is it a question of network consensus or does each individual miner resolve at their own pace?


Each node will usually resolve and reorganize their local chain as soon as they are made aware of a chain with more work.

If two blocks are mined at block height N, there is a fork. As soon as a single block at height N+1 is mined and broadcasted, any nodes that receive it will keep the block N that the new block builds upon, and orphan the other block as there is now one chain with more work.

This is what makes block withholding attacks possible, as an attack could broadcast several blocks at once, which suddenly present a new, longer, valid chain.

  • That is assuming that the miners are honest right? If let's say a group of miners are colluding, can they withhold from resolving until they are sure that their chain is longer? – Larrrrrrrrrry Sep 28 '18 at 4:35
  • Yes, that's exactly what a block withholding attack is - One or more miners don't broadcast their blocks until they want to, and broadcast entire sections at once – Raghav Sood Sep 28 '18 at 4:36
  • 2
    It really shouldn't be called an "orphan" block, because the block's parent is present and doing fine. ;) It's the transactions in the extinct block or stale chain-tip that are orphaned by the block no longer being part of the most-work chain. – Murch Sep 28 '18 at 23:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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