Hacker News new | ask | show | jobs
by londons_explore 2183 days ago
Assuming miners are smart, you can 'bribe' them without ever speaking to them.

Your coins have been transfered to Mr Evil in block number 6000.

Simply publish a transaction which pays your $1B in bitcoins to another address you control with a $200M transaction fee.

Any rational miner who sees this will decide to 'undo' Mr Evils transaction and all that occur after it by acting as if those transactions don't exist. They will mine your new transaction as part of a new block number 6000, and pocket the $200M for themselves. However, they will need to make sure their block number 6000 remains part of the chain.

By the time they've done this, block number 6001 and 6002 have been mined on top of Mr Evils transaction in block 6000. That means someone must mine block 6001 and 6002 again, at significant computatonal cost. To do that, the miner who mined the new block 6000 can incentivise others to work on top of their block by paying the 200M to themselves, but again with a big fee.

The above only works if all miners are rational, and have coded this strategy into their mining pools. Are there examples of this happening in practice? (There will be public evidence of it in the blockchain).

2 comments

I presume double spends happen often, as people try to trick counterparties who don't wait long enough for transactions to settle. Note that neither branch of a double spend is the "real one" (the feelings of the double spender don't matter), only the future development of the chains picks which is real and which is fake. It's basically equivalent to putting a bank check in one envelope, and another check in another, for a total that overdraws your account, and then sending them out to pay people. It's unknown which payment is invalid, until later.
Bitcoin is a fascinating thing. People think this is a bug, but I think it's a feature. The cost of physical settlement and risk is measurable and transparent to everyone involved.

If you think that a bank transfer has less risk, you are not looking in all the right places :)