Research by the Department of Computer Science, Cornell University suggests bitcoin is vulnerable to selfish miners gaining more than their fair share of the spoils of mining.
According to the research, a pool of selfish miners can achieve this by withholding blocks that they have solved instead of making it known on the blockchain straightaway, causing other mining groups to waste effort on blocks which are already solved. Effectively this selfish pool gets more of its solved blocks on blockchain than it would have while the honest miners slave away on wasted computations.
Allegedly this selfish group will quickly become a majority as individual miners seek to join that cheating group to reap the higher rewards, like a snowball growing bigger as it rolls down the mountain. This group will then become the controllers of bitcoin and it will become effectively centralised and controlled by that group of miners rather than the decentralised currency we all value.
It is claimed by the same researchers that they can also implement a patch to help resolve the problem. I think this would be a big mistake and I’ll explain why.
But first heres is a link to the research paper if you are interested, http://arxiv.org/pdf/1311.0243v2.pdf
So, I mentioned the researchers have a patch they could implement if the community accepts it, which would mean no pool of miners could profit from selfish mining unless they control more than 25% share of the mining.
Such pools with greater than 25% share of mining already exist, and even if they didn’t they easily could in the future http://blockchain.info/pools
Therefore if the patch was implemented now it would mean instead of anyone being able to cheat only those big pools could cheat. This sounds at face value like a solution which although not ideal is better than nothing. It will force lots to stay honest won’t it?
My spider senses are telling me this is very dangerous because you take away the even playing field, then that more than anything else will cause the monopoly to arise. In fact it will probably guarantee it. You effectively hand all the power to the big pool.
If the patch is implemented and, say, BTCGuild start a selfish mining attack. Noone else can compete even if they want to because this patch prevents it. This guarantees the power to profit only to BTCGuild. In turn this will gaurantee the snowball effect previously mentioned. But it is because of the patch that this situation arises, NOT because of the selfish mining strategy itself.
The paper appears to ommit the possibility that selfish mining could become the norm with everyone doing it! In which case I imagine the benefits of doing it are cancelled out. I think it could get interesting with many different strategies being played out but at least the game could continue with fair chance to everyone and therefore bitcoin can always remain decentralised..
The proposed patch takes that away freedom to choose to cheat replacing it with a crippled network in which small guys can’t cheat, but the big guys can. Hmmm… which sounds eerily like the thing bitcoins is trying to avoid when it was created in the first place.