The elephant in the room is the viability and sustainability of blockchain technology
. Cryptocurrency mining, for instance, requires specialized rigs that consume electricity. In certain estimates, at the time of writing, the bitcoin network's energy consumption came in at 41 globally if it was a country. This means the bitcoin blockchain consumes more energy than Switzerland and Czech Republic.
Most of the energy consumption is related to mining. The security and integrity assurance come from cryptographic primitives that combine with the restriction related to the block’s structure (number of leading zeros for the generated hash). This is articulated as the proof of work. The difficulty associated with the evidence of work increases over time based on the consensus framework of the network. This impacts only the public blockchain, as private blockchains can function with low proof of work requirement.
There are potentially three paths forward. The first is to keep the difficulty level for the block generation constant. Unfortunately, this might not resolve the energy consumption problem. Why? Generating the block to be appended to the blockchain is not a linear search problem; it is more like a lottery. You might get it in a first hash generation or might not get it even after millions of hash generations.
The second options floated around is increasing the computational power. It is correct that the computational power increase of Graphical Processing Units (GPUs) have grown faster than Moore’s Law. Furthermore, an argument can be made, and it has some weight in its rationality, that the improved GPUs will consume less energy than their previous versions. This is true, and it might in the future be used as a potential path to reduce the energy requirements of the blockchain network. However, it is still an open-ended question, and we do not have a solution to this problem now. In the future, faster and energy-efficient GPUs might solve the energy cost problem.
The third option is that potentially new algorithms can be devised that might generate the desired blocks quickly. Similar to the hardware design and improvement options, this option is not possible today. Again what lies in the future might be different than what we are expecting or predicting today.
A question may come to readers mind: why do I have to concern myself with the energy cost? Miners make money if the price of mining is less than their expenses including energy cost. So, from an economic point of view, they will be part of the blockchain network where they can make more money. If mining becomes costly, miners might leave the blockchain network. Furthermore, these costs translate back to any service that is going to be reliant on the blockchain network. As discussed before, to push information on to blockchain, the organization has to pay GAS charges. Lower the GAS charges, and it will be less attractive to the miners. By contrast, raising the GAS charges might make it potentially impractical for the respective service to rely on blockchain technology.
It's important to keep in mind that the previously listed figures of energy consumption were only for the bitcoin network. A futuristic and exciting idea for many in the technology sector is the capability for all services, whether online or offline, to move to the blockchain. This idea requires enormous energy resources, and the cost of these resources usage has to be incurred by someone, probably the service provider. To discern whether blockchain is hype or revolutionary technology, the answer to this does not lie in the technological constructs and what it can and cannot do. Instead it lies in basic economics, that is to say, figuring out whether deploying a service on blockchain make economic sense or not. In this article, we did not discuss in detail the impact of blockchain technology on the environment due to their substantial energy requirements which is related but out of scope topic for this article.
Challenges and Potential Future
Two of the major problems of current blockchain and smart contract technologies are the following:
- Lack of language richness: The language support provided to describe smart contracts is not as feature-rich as standard web or desktop languages. This limitation imposes design issues where complex multi-party protocols have to be designed. For such situations, schemes have to go out of the smart contract scope, run the multi-party protocols and then return with the results. This is not ideal as designers end up building two systems - one running on blockchain and one off. Therefore, the language has to improve on its features so that all application semantics remain within the blockchain network.
- Lack of distributed execution: For the execution of smart contracts, designers either rely on client-side execution or off-blockchain server-side execution. There is limited-to-no support for peer-to-peer network side execution (within blockchain network). This limitation introduces potential weaknesses as some of the security, authentication and privacy-related execution tasks have to go out of the blockchain network - a situation less ideal in any respect. A potential path forward could be to design the blockchain network in a manner that supports block mining and distributed computing together.
Both of the above are not only technical but economic challenges. There needs to be not only a technical framework to resolve them but also a business model to make them attractive to miners and the technical support blockchain community.
Blockchain as technology has its potential. It is in its early days; the real value of blockchain can neither be understood or predicted at this current state. A number of organizations are including blockchain technology to complement their existing services, but to understand what benefit blockchain brings to both the organization and consumers is not always clear. For organizations exploring whether to integrate blockchain technology or not, they have to find a clear key benefit of doing so that is rationale in technological, economic and business processes. Look into what competitive advantage you gain from blockchain technology. If you have a clear and measurable advantage – invest. Otherwise, wait and let the field mature.