Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> doesn't this effectively mean China can force a 51% attack by just strongarming the pools that operate there?

Yes, in theory. There's a coordination problem to get all the pools to do what you want, but if they (or anyone) could pull that off, then yes.

So then what happens?

If a single entity controls >50% of the hash power of the network, they could start finding blocks with arbitrary (invalid) transactions and adding them to the chain. The transactions they'd be able to insert are called 'double-spends', which is that wallet A sends its balance to wallet B, and then in the next block sends the same balance (magicked into existence) to some third wallet C.

All this can happen. The way the network is supposed to work though, miners don't just commit new blocks and call it a day, the 'full nodes' have to accept the blocks. The miners are more or less offering up solved blocks to the full nodes for their acceptance.

As a full node it's trivial to take a look at this double-spend from A->C and say 'nope this doesn't look like a valid block to me, try again'. At this point if enough full nodes do this, the 51% of 'bad' miners are just wasting their time, the true hashrate of the network is now 49% of what it was a moment ago, and the remaining 'good' miners will continue to find blocks. Business as usual.

It's a much harder problem to control >51% full nodes, mostly because they're more geographically distributed. This is because they're pretty simple to set up at home and run, without worrying about up front cost of miners, electricity and noise and so on. A bitcoin full node can run on a raspi with a 1tb external hard drive, and a normal consumer internet connection.

Another interesting tidbit is that with control of 51% of the miners, this still only means a malicious actor finds a block first 51% of the time... to get the 6 blocks usually required for confirmation (in a row) is a ~3% chance. Not a perfect safeguard, but just some perspective on how hard it is to execute an attack like this.

The idea is that the miners are beholden to the full nodes, who are the actual actors in the distributed consensus system.

There's some other game theory around why one would want to do obvious double spends after having that much control (why not just sell the bitcoin and take profits?). But there are definitely reasons a state actor would want to try to destroy the network.



inserting invalid transactions is not the double spend issue.

If their hash rate is over 50% they can "unconfirm" a confirmed transaction by making a chain with more work on it. This is how the attack plays out in simplified form:

Bitcoin is sent to an exchange by the attacker, confirmed, sold and withdrawn for cash. Attacker then makes a chain with more work on it than the chain where the Bitcoin was sent to the exchange. Now as far as Bitcoin network is concerned, the coins were never sent to the exchange, but the exchange already let the user sell the Bitcoin and cash out. So now the exchange has neither the cash or the Bitcoin. The attacker has both.


Agreed, thanks for this clarification!


Thanks for pointing this out. If we are to believe bitcoins fans around here, 51% attacks are a total non-issue!


> Yes, in theory. There's a coordination problem to get all the pools to do what you want, but if they (or anyone) could pull that off, then yes.

A strongly worded memo from Xi should sort that out, unless of course they want to switch from mining coins to mining minerals. They're in the right region already.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: