I am new to blockchains and bitcoins. So, please pardon the lack of understanding. Assume I am a miner who adds a bogus transaction (say a transfer from my account which has 0 balance to my other account). I get lucky and solve the proof-of-work puzzle first with this bogus data. I know that the other miners check if my block's data corresponds to my proof-of-work but do they also check if my data is valid? What happens when they realize that my block (which has been added to the blockchain) is invalid? What incentive do they have to perform this check instead of spending the computation power on solving the next block?

Other similar questions don't talk about the reason why other miners don't simply assume that a block with correct proof-of-work is valid and save time by not validating the data?


Miners are incentivized to validate both transactions and proof of work because if they start mining a new block on top of an invalid block any block they successfully mine won't be accepted by the full nodes and other miners on the network. Therefore the energy expended on finding a proof of work will be wasted. (Each block header refers to the hash of the previous block and so one single invalid transaction in a previous block would make all blocks mined on top of it invalid also.)

In addition, miners have made large investments in hardware (ASICs) and so their long term interests are aligned with the network. Even if all the miners on the network colluded to include an invalid transaction in a block, not only would some full nodes reject it but it would also be an attack on the long term viability of Bitcoin. Bitcoin only works if invalid transactions are not included in the blockchain.

  • 2
    Furthermore, the amount of computation needed for validating a block is trivial compared to that for mining. And the ASICs that do the mining can't be used for validation even, so there is no competition between the two. – Pieter Wuille Oct 4 '20 at 22:49

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