Even ASIC miners of Bitcoins face security threats


Last month I wrote about paradoxes involving bitcoin and other cryptocurrency mining. In particular, I pointed out that while many people are designing alternative coins so that they are hard to mine with ASICs -- and thus can be more democratically mined by people's ordinary computers or GPUs -- this generates a problem. If mining is done on ordinary computers, it becomes worthwhile to break into ordinary computers and steal their resources for mining. This has been happening, even with low powered NAS box computers which nobody would ever bother to mine on if they had to pay for the computer and its electricity. The attacker pays nothing, so any mining capacity is good.

Almost any. In Bitcoin, ASIC mining is so productive that it's largely a waste of time to mine with ordinary CPUs even if you get them for free, since there is always some minor risk in stealing computer time. While ordinary computers are very hard to secure, dedicated ASIC mining rigs are very simple special purpose computers, and you can probably secure them.

But in a recently revealed attack thieves stole bitcoins from miners by attacking not the ASIC mining rigs, but their internet connections. The rigs may be simple, but the computers they flow their data through, and the big network routers, are less so. Using BGP redirection, it is suspected, the thieves just connected the mining rigs to a different mining pool than the one they thought they joined. And so they worked away, mining hard, and sometimes winning the bitcoin lottery, not for their chosen pool, but the thieves' pool.

It's not hard to imagine fixes for this particular attack. Pools and rigs can authenticate more strongly, and pools can also work to keep themselves more secure.

But we are shown one of the flaws of almost all digital money systems. If your computer can make serious money just by computing, or it can spend money on your behalf without need for a 2nd factor authentication, then it becomes very worthwhile for people to compromise your system and steal your computer time or your digital money. Bitcoin makes this even worse by making transactions irrevocable and anonymous. For many uses, those are features, but they are also bugs.

For the spending half, there is much effort in the community to build more secure wallets that can't just spend your money if somebody takes over your computer. They rely on using multiple keys, and keeping at least one key in a more secure, even offline computer. Doing this is very hard, or rather doing it with a pleasant and happy user interface is super hard. If you're going to compete with PayPal it's a challenge. If somebody breaks into my PayPal account and transfers away the money there, I can go to PayPal and they can reverse those transactions, possibly even help track down the thieves. It's bad news if a merchant was scammed but very good news for me.

One could design alternate currencies with chargebacks or refundability, but Bitcoin is quite deliberate in its choice not to have those. It was designed to be like cash. The issue is that while you could probably get away keeping your cash in your mattress and keeping a secure house, this is a world where somebody can build robots that can go into all the houses it can find and pull the cash out of the mattresses without anybody seeing.


Since we know machines are likely infected at some point in their life, we can use what's called "multi-sig" addresses to raise the security of the system. Native to the protocol, we can put bitcoin in an address that can't be moved without m-of-n pre-defined signatures.

These are being used today to increase security of software wallets, like GreenAddress, Bitalo, Bitgo, etc. The user, even if their machine is infected, won't lose their bitcoin unless both their computer and phone are hacked, since the services require you to send the confirmation code received via 2FA. Further, these services literally can not steal your bitcoin, since they only have one set of keys!

Just wanted to pipe in on the promise of consensus-based systems. The ceiling for security is quite high.

FWIW, the first dedicated hardware wallet has been released, called Trezor. Check it out, the security is actually quite cool.

I discussed multi-signature wallets. They can protect you from compromise of any given machine, but they complicate the user interface. They make it hard to spend your money in order to make it hard to steal your money.

The competition -- things like paypal and credit cards and online banks -- let us just go to a web page and click "spend the money." They can be easy to use because they can undo.

Add new comment