A simple DOS attack while IBD could be as follows:

  1. The fresh client is currently downloading block 100.
  2. Then it is offered 10 blocks at height 101, each claiming they are the heaviest chain
  3. 9 out of 10 alternatives are with fake PoW but still the client will waste time in getting the entire block and validating their PoW.

How does the current implementation of P2P protocol in bitcoin-core handle this sort of DoS attack?

1 Answer 1


Bitcoin Core does headers first sync so it downloads the headers first and partially validates them before downloading the blocks. So if a malicious node sends headers with invalid PoW's, the syncing node will disconnect from it and sync headers off of another node. If the it receives multiple headers for the same block height, that node will be considered to be misbehaving and stop syncing headers from it.

Your Answer

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

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