Friday, July 22, 2011

Danger: Deep Pools!





Bitcoins resistance to double spending stems from the existance of a collectivly maintained list of valid transactions. However the integrity of this list is only guaranteed as long as no single person or group controls more than 50% of the Bitcoin networks power[1]. At present almost 75% of the network is controlled by 3 mining pools, the most popular of these being the Deepbit Pool[2]. Whilst the admins of these pools are trusted members of the community, should their systems become compromised the entire integirty of the Bitcoin system would be at risk.

The posibility of the bitcoin network becoming compromised by a so-called "51% attack" has sparked much discussion over the recent months. However what "compromised" means is often poorly understood. An attack of this type would not give the attacker any access to another persons bitcoins. This type of attack would provide the attacker with the ability to create an alternative list of valid transactions which was more uptodate thant the list created by the other 49% of the network. This means that the attacker could spend his own bitcoins, wait until that transaction had been included and accepted by the list of valid transactions, and then simply replace the list with his own list. If he ommited the spending of his own coins from this new list, he would still own those bitcoins, and could there for spend them again. In effect the attacker could pay for goods with 'counterfeit' transactions, payments which later turn out to have no value.

Counterfeiting within traditional currencies has always been dealt with harshly. Currency printed by Benjamin Franklin carried the pharse "to counterfeit is death" [3] beacuse for many years that was indeed the penalty for counterfeiting. However counterfeiting of physical money within modern economies has a limited effect since paper money accounts for only a small fraction of the total money in circulation. This is not the case for bitcoins. Despite this the risk of this type of attack is often downplayed within the bitcoin community for two key reasons. Firstly, the complexity and risk of maintaining control over 51% of the network provides only a very limited reward since it gives you no access to other peoples coins and would be hard to hide. Secondly, this is a known weakness, and a system of checkpoints is already in place to miminse the impact of this type of attack. Checkpoints are snapshots of the valid transactions list which essentially lock these transactions in. This means that even if a 51%-attack were succeful it could only affect transactions since the last snapshot. Of course, even if the effects of an attack of this type were well contained, the effect on the confidence of Bitcoin users could be devastating. The recent attack on Mt. Gox has already shown how important confidence is to the bitcoin economy.

The concetration of network power into 3 main mining pools is not therefor without risks, though they may be known and relativly limited risks. Given the potential risk of this threat, a variety of solutions have already been proposed. One option would be to move control away from the de-centralised network towards trusted parties. This view as considered by Ben Laurie in a recent paper [4] has met with considerable resistance. Laurie commented on how the checkpoint system is already maintained by a central trusted source, the dev team, and went on to state that since we already have this level of this trust
it would make sense to "levarage" it to produce a more efficent system. An option perhaps more in keeping with the spirit of bitcoins is to decentralise the pool system, that is continue to provide the benefits of pooled mining, but do it through a decentralised network hence moving control away from the pool admins. This apporach is currently at an early testing stage in the P2Pool project[5]. It is still too soon to see which direction bitcoin will evolve in, though the weight of users opinions may be leaning in one direction.

A final thought is that we are still at a very early stage of bitcoin evolution. As the Bitcoin economy expands, we may well see a significant profesionalisation of it. If this is the case, a greater degree of accountability and disclosure for key players may pave the way for establishing trusted nodes. The Bitcoin stock exchange, the GLBSE, which is also at an early stage, already provides a means for at least 1 significant mining system to provide accountability to its investors. The security risks may be significant, but the solutions are almost limitless, which is what makes the new world of Bitcoins so exciting!



[1]https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_computing_power
[2]http://bitcoinwatch.com/
[3] http://www.librarycompany.org/BFWriter/images/large/3.7.jpg
[4]http://www.links.org/files/decentralised-currencies.pdf
[5]http://wiki.bitcoin-otc.com/wiki/P2Pool

No comments:

Post a Comment