5

Let's say I found a tarball with blockchain data files which I load to my datadir and start my Bitcoin Core client, what sort of attacks am I vulnerable to? Could the files contain fake balances? If yes, what will happen if another peer requests a block which has altered data in it, how will that other peer handle this situation?

8

Let's say I found a tarball with blockchain data files which I load to my datadir and start my Bitcoin Core client, what sort of attacks am I vulnerable to? Could the files contain fake balances?

It depends. If you're just importing blocks (so no chainstate/ subdirectory with UTXO set), there should not be any possible attack. The client will validate those blocks at startup time, just as if they were being received from the network, to rebuild the chainstate. If one of the blocks was modified, it would be rejected as an invalid block at this time, and the correct blocks would be requested from the network instead.

However, if you accept a chainstate from someone, anything is possible. They can convince you they have unlimited amounts of money, or convince you they have paid you in the past. For any future transactions relying on such faked funds, getting to confirm them would require cooperation from a miner that is willing to build an invalid chain to defraud you (or others, in case many people used that chainstate "backup").

If yes, what will happen if another peer requests a block which has altered data in it, how will that other peer handle this situation?

Blocks can't be altered without invalidating them, so other peers downloading blocks from you can't be affected. Similarly, a -reindex would fix any problems for yourself as well.

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.