I am trying to understand what problem in bitcoin proof of work solves and came to this somewhat helpful quote:

So, for instance, if a miner controls one percent of the computing power being used to validate Bitcoin transactions, then they have roughly a one percent chance of winning the competition. So provided a lot of computing power is being brought to bear on the competition, a dishonest miner is likely to have only a relatively small chance to corrupt the validation process, unless they expend a huge amount of computing resources.

Does this mean that proof of work prevents say double spending because of following reasons. Imagine attacker introduces 100000 rogue nodes in the network and their goal is to send false information about transaction validity - but since these nodes need to do proof of work, in total, when all 100000 nodes are doing proof of work this is too costly for attacker. Is that right? So because of this proof of work keeps attackers at bay.

4 Answers 4


Imagine attacker introduces 100000 rogue nodes in the network and their goal is to send false information about transaction validity ...

That's no possible. Every node validates blocks and transactions for itself. It doesn't matter what another node tries to represent - if the block is invalid, it's ignored by the receiving node.

Proof-of-work is unnecessary for determining block validity.

What proof-of-work does do is makes block generation expensive. Without it, nodes could generate blocks cheaply, rolling back transaction history by publishing replacements for previous blocks willy-nilly.

To rewrite a previous block, a node must not only rewrite the block its self, but all of its descendants. It must re-do all of the work that was previously done.

To re-iterate: nodes validate transactions and blocks for themselves. Proof-of-work doesn't convince nodes of block validity. It convinces them that a certain amount of work must have been performed to produce the block.

A node uses the cumulative proof-of-work when faced with a choice of two or more valid block chains. The one with the most proof-of-work is used to build the global transaction log.

  • The production of a new block may be expensive, but the decision which fork (block) of the chain to continue with is cheap, it's a convention. People may decide to suddenly go with another choice while you were sleeping, which would double spend, so how can you have trustless consensus then?
    – rapt
    Commented Aug 21, 2019 at 11:30

Either the attacker controls around 50% of the computing power or he doesn't. If he doesn't, then it doesn't matter. The rest of the network will always be able to outpace him. If he does, then he's invested millions of dollars in mining hardware, all of which would become significantly less valuable if he attacks the network. Why would he attack the network rather than just mine honestly and make huge amounts of money in fees and block rewards?


Yes, you are right . Finding the nonce is a costly affair and uses a lot of electricity .
One way in which attacker can change the chain is if he can provide a longer chain than the existing one . If anyone can provide the longer valid chain, the entire network moves to the new chain provided . But for that to happen the attacker need to have the hashing power more than the entire network to calculate that chain.


As i see it, this proof of work is the same thing as captcha, which prevents miners from generating blocks too fast. The network (at least the official one named bitcoin) is self-regulating, so when blocks are generated too fast, each node independently rise the difficulty for blocks that it will consider as valid (this behavior is hardcoded). The double spending can happen even without any attackers (you and a boy from africa have generated block simultaniously and the majority of network "used" the africans block). This is why it's advised to wait around few days, even though the official blockchain shows your transaction has passed.

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.