Proof of lights
Introducing blockchain to Nigeria won’t require literally all of their electricity.
This post isn’t a revelation in any sense but I’m writing it anyway as a useful pointer for a somewhat frequent misconception and criticism regarding the resources required to deploy and run a blockchain. Working in international development, I hear this often enough questioning blockchain’s value in countries without access to reliable — if any — electricity.
To paraphrase that question: “How could we even begin to consider deploying blockchain for developing countries when it requires such a massive amount of electricity?”
The short answer: it doesn’t.
Let’s break down the origins of the concern and then explain why it’s easily avoidable.
Where is this concern coming from and just what are those figures that have people maybe thinking this whole blockchain-for-development thing is a non-starter? Here are some fun facts about the Bitcoin blockchain:
- According to one, recent estimate, “worldwide Bitcoin mining could power the daily needs of 821,940 average American homes.” (My emphasis.)
- Relying on data from the the 2017 Key World Energy Statistics report put out by the International Energy Agency, if Bitcoin were a country it would consume very nearly as much energy as Denmark per year (using 2015 country statistics).
- That means — as hinted to in the title — yes, it requires more energy than the entire country of Nigeria. Unsurprisingly, following that knowledge, it consumes more than every country in sub-Saharan Africa save for South Africa (where statistics are available). It could power more than 100 South Sudans in their current, respective states.
- Why so much? Because of the computational power required to solve the algorithms that verify and commit bitcoin transactions to the blockchain and the competition in the network to receive the rewards (bitcoins) for that work (I’ll explain that a bit further, below). At this point, the network’s effort to accomplish that is collectively greater than all the supercomputers on Earth combined.
So no one is in the wrong with what they’ve heard and in voicing those resource requirements as a concern.
But here’s where clarification is possibly needed: we’re referring only to the Bitcoin blockchain. The Bitcoin blockchain is not the blockchain, it is a blockchain, which means it is not a requirement to use that blockchain.
That one would have to use the Bitcoin blockchain is an early misconception by those just getting into this space, so perhaps you knew that. If you did, you then also know that the Bitcoin blockchain didn’t always require this level of resources. When it launched in 2009, verifying transactions required minimal effort in a much smaller network.
That begs a fair, follow-up question: “If we launch our own, separate blockchain, won’t it eventually require the same amount of resources in the future as it scales?”
Not necessarily. The project may not require a global network where anyone is allowed to join and so simple but careful network management would mitigate this but here’s the even easier reason as to why not for any use case.
Without getting into all of the very technical details of verifying transactions and generating bitcoin rewards for the “miners” that perform that work, all that is necessary because of the algorithm (or protocol) Bitcoin employs to create this network consensus, known as “Proof of Work.” This algorithm is designed to create this burden on the miners intentionally so that we can trust these actors from of the level effort they put forth to verify a transaction. (That’s barely scratching the surface for an complete explanation but as far down the rabbit hole as we’ll go here.)
Proof of Work is not the only algorithm available to create trust in the blockchain and those other options do not require trying to solve complex equations as the means to achieve network consensus. In fact, most of these were created, at least in part, to avoid that very problem.
No complex math = no complex computing power required = far less energy consumed. Problem solved. At least that one, anyway.
What are these other options? “Proof of Stake” is another, popular consensus algorithm, an option of the Ethereum, the blockchain solution for the “smart contracts” functionality that really opened up the idea of using this technology beyond digital currencies, such as for supply chain management, land rights, and digital IDs. It functions, in short, by creating trust from those who own a certain number of tokens in the network. As Ethereum’s latest network, “Casper,” comes into production, Ethereum will move to Proof of Stake as the default algorithm rather than Proof of Work.
And there are others:
- Proof of Activity (PoA), a hybrid of PoW and PoS, mining blocks but using random validators to sign them.
- Proof of Burn (PoB), demonstrating that an amount coins/tokens were sent to an irretrievable address, permitting mining privileges.
- Proof of Storage (PoS), ‘paying’ into the system with available hard drive space.
- Proof of Elaspsed Time (PoET), using Intel chips to run algorithms in trusted execution environment (TEE).
- Proof of AwesomeSauce (PoAS), which selects miners based on how cool they are.
No, just kidding about that last one. But Coindesk has a little more detail about these variations.
It might also be worth noting that modules from Hyperledger allow for changing the consensus algorithm on the fly. If it did occur that one algorithm was no longer the right system due to network growth or changes in policy, it could be swapped out for another without needing a massive network re-architecture or relaunch.
In closing, a massive resource cost is avoidable and not, in fact, required. However, while this clarifies and resolves one problem, it does open the door to at least half a dozen other considerations one should take into account in deciding if blockchain is the right solution. To name just a couple:
- Maybe massive energy resources aren’t needed but resources nonetheless, ones relatively harder to acquire in many countries. The faster the machines and the stronger the network, the better the performance, to say nothing of reliable electricity. In places where it’s hard enough to procure and secure one, centralized system, even a small network can be a tall order.
- So why not just procure a blockchain-as-a-service from IBM or Microsoft? Of course. Nobody buys servers anymore. Except that with a lot of humanitarian actions, you’re maybe working with host and/or donor governments, using sovereign and possibly sensitive data. To distill down a larger debate: if you think those partners are going to simply allow that kind of data outside national boundaries and co-located across a network, whole or in part then you haven’t yet spoken with the ICT Ministry’s lawyers. Have fun with that, and good luck.
But topics for another post. We’re not nearly out of the woods for concerns but I hope this helps clarify why not engaging because of that original resource concern should not be a barrier.