Keeping a blockchain decentralised

This article proposes a Proof of IP (PoIP) to favour diversity of IP addresses over large number of server concentrated by IP address.

While blockchain solutions using Proof of Work (PoW) and Proof of Stake (PoS) can be decentralised, individuals or companies which are more efficient, or better funded to grow than others will naturally push out smaller players. This can lead to a centralisation of those providing the service to those who have the most capital.

Blockchain lakes

When a company achieves greater economies of scale, it push out the competition which is less efficient. This leads to a small number of big players, who can offer a service at a lower price. This become a problem when a small number of players can start to dictate terms even increasing the cost of service.

For PoW, access to cheap power and specialised hardware gives those companies an advantage. This create lakes of processing power centralised around these locations and companies. Companies with significant investment need to ensure they maintain their advantage, which might not always be in the best interest of the users.

For PoS, access to capital determines who can provide the service. This has its advantages, but also means the direction of solution will be determined by companies and individuals with significant capital who want to protect their investment.

Proof of IP

Proof of IP uses verified IP address for each running node. Voting for each of the ~56,000 /16 domains is equal, ensuring that even a company with 65,000 servers doesn’t have a significant advantage.


Each node can add a block of transaction per round. This enables a high degree of concurrency. Voting is required to determine which blocks are added to the chain (and thus in what order) Voting is balanced by the top bits of the IP making it much harder to buy up significant portions of the voting rights.

Want to know more

Can I play with it?

A working implementation of a block chain which both records the IP verifications and can be extended to support other transactions is in active development.

The github project is Chronicle Accelerate on GitHub

Peter Lawrey

Peter Lawrey

Most answers for Java and JVM on (~13K), "Vanilla Java" blog with four million views, founder of the Performance JUG, Java Champion

Read More
comments powered by Disqus
Keeping a blockchain decentralised
Share this