Understanding Bitcoin - What is ‘Centralisation’?


The General Concept of ‘Decentralisation’

The Relevance to Bitcoin

Miner Centralisation

Miner centralisation describes how centralised/decentralised the miner network is. i.e. how evenly spread out the hash power is over how many different miners or pools. Contrary to how this data point is commonly brought up, this is not binary. Miners are not either centralised or decentralised. It is a scale. On one end of the scale there is every single human on the planet acting as an individual miner with an exactly equal share in hash power, and on the other end of the scale, there is one single miner with the entire network hash power. Both of these scenarios are essentially impossible, but somewhere on this scale, the actual state of the bitcoin network will lie, and this position changes over time.

In the early years of bitcoin, the network was (in terms of miners) more decentralised because all miners were mining using normal desktop computers and laptops. This is because the software had not yet been developed to be able to mine on GPUs. Then later on after this software was developed, the network almost completely switched over GPU mining. When this happened, in a way the network became more centralised in terms of mining, because a GPU mining is less accessible than CPU mining. After that came the ability to mine on custom hardware. First in the form of FPGA mining machines and then ASIC mining machines. This limited the accessibility of mining even further. While anyone is still free to mine bitcoin using any kind of computational device, including CPUs, GPUs, FPGAs and ASICs (or even a pen and paper and a brain), it is not practical or profitable without some sizeable investment and access to very low cost or free electricity. This has therefore increased the barriers to entry into mining bitcoin even further and therefore increased centralisation further.

There are unlikely to be any further revolutions in bitcoin mining technology like when it went from CPU to GPU, or GPU to FPGA. This means that there will only be evolutions in technology (e.g. going from 16 nanometer ASICs to 7nm ), therefore the mining landscape in terms of technology is unlikely to change much in the future. This means that, for the foreseeable future at least, mining centralisation is unlikely to get significantly worse in terms of mining technology. In fact, there are arguments that bitcoin mining may become commoditised in the future when the technology improvements slow down, due to the fact you can use the heat generated in doing the proof-of-work. Miners could be put into peoples homes as a way of generating free/low-cost heat.

Electricity Prices

There are other factors that can have some effect on miner centralisation. The price of electricity is a key factor that will determine the localisation of miners. Miners are unlikely to mine in areas of the world where the cost of electricity is high. For example mining in Germany where the cost per kilowatt-hour is roughly $0.30 is unlikely to be competitive against mining in Iceland or China where the cost per kilowatt-hour is $0.05 or less. This is because the miners’ main concern is the profit they are making (or not making) and the cost of electricity is a major factor in this. Therefore they will tend to centralise in areas with cheap or free electricity.

Block Propagation

Another factor in miner centralisation is the speed at which miners are able to propagate blocks across the network, and more specifically, to other miners. When a miner has performed proof-of-work and has found a block, they want to tell the network they have found a block as quickly as possible. This is because another miner may have also found a block at roughly the same time. If the other miner can tell the majority of the miners and network before the other miner does, then their block will be built upon. If they do not then they will lose out on the reward. Also, the more time it takes the block to propagate the more time the network is mining for nothing as a block has already been found.

A miner who is able to propagate blocks faster, therefore, has a slight edge over a miner who can only propagate blocks more slowly (all things being equal). This means that miners who are more well connected are therefore more likely to have an edge of miners who are more poorly connected (all things being equal). This creates a centralisation pressure to become more closely connected with other miners.

This centralisation pressure from block propagation has largely been made a moot point thanks to most of the miners using the relay network and thin blocks/compact blocks.

Full Node Resources

Miners/mining pools are by definition a bitcoin full node. If the resources required to run a full node increase then this could push out smaller miners who are not able to afford the cost of running this node. For example the cost of hard drive space, memory, internet bandwidth. In reality, this centralisation pressure is likely to be minor compared to the other centralisation pressures.

Non-mining Node Centralisation

Bitcoin currently has around 6000 nodes that allow both incoming and outgoing connections. The significant majority of these are non-mining full nodes.

There is a worry within one sub-section of the bitcoin community that increasing the resource requirements of running a full node will decrease the number full nodes in the network, and that therefore this is a reason to limit the number of transactions that can happen over a given period of time i.e. by limiting the block size limit. There is a counter-argument to this that states that; by increasing the number of transactions that can happen on the network over a given period of time, the network will be able to accommodate a larger number of network participants. This will, therefore, lead to an increase in the number of people willing to run a full node, thereby counteracting the negative effects of the increased resource requirements. There is also a second counter-argument to the belief that the block size limit should remain small, and that is that technology improves and comes down in cost over time, especially the cost to perform computations. This means that if the network is allowed to grow inline with technological growth then there will be zero centralisation pressure on the non-mining full nodes.

Economy Centralisation

Conversely, every network participant the network loses, the more the network centralises down to fewer entities who support its interests. This means that the best thing for the network to do is to grow. The larger it grows the more entities it has defending it.

Development Centralisation

Bitcoin software development is not like standard software development (for example the development of Linux operating systems). This is because the network should try to all agree on the same protocol. If one set of miners disagree on the protocol rules to another set of miners then they split from each other and will be mining a separate blockchain on separate networks. This is bad for the network effect of bitcoin and causes confusion in the economy. For this reason, miners should generally run software that uses the same protocol as other miners unless they have a very good reason not to.

In bitcoin software development it means that developers will tend to submit software features that do not alter the protocol unless there is a very good reason for it. This is because if anything less than a significant majority of the network implements the new protocol, there will be a network split. Miners are not incentivised to split the network unless they feel it is the best path forward though.

It is important that protocol development remain decentralised so that anyone can offer code to the network and so that code/features do not have to come from an authority.

Currently, Bitcoin suffers from the significant centralisation of development. This is because development has been centralised to a group of people called ‘Core’. Core act as an authority on software development within the bitcoin community. They have a power structure where a small number of individuals are able to allow/disallow software. They are actively hostile to other development efforts outside of their own and wish to consolidate power by pressuring the economy into funneling all development effort through their own development process.

This could be fixed by having multiple development teams which each hold a share of power/influence and miners can take which code they consider to be best for the system.

Why is Decentralisation Important?


Hopefully, I have provided a clearer picture of the different meanings of ‘(de)centralisation’ and how it affects the network. Different types of centralisation have different scales of impact on the network and this is an area of research that is currently lacking. This is something I may pursue in another article, where I will try to explore things with a more analytical methodology.

If you can think of any other types of centralisation that i missed, let me know in a comment below.

(This is part of my ‘Understanding Bitcoin’ series of articles. Find links to other parts of this series below)

The singularity is coming. Let’s hope ours isn’t a great filter.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store