Blockchain is great, but let’s observe the other side of the medal: What are the limitations?
People admire decentralized technologies. They are expected to change the world and so on. Centralization is considered wrong. But the problem is that it’s still hard to find any ultimate decentralized solution implemented in the real world.
There’s no doubt that Blockchain allows for quite a lot of advantages. Let’s outline some of them:
- Makes it simple to verify the integrity of the ‘database’.
- Allows for timestamping of all the changes.
- Provides an ability of easy backup in real time
- Delivers consensus to a decentralized environment
- Makes it simple to audit the “book of records” in real time
Note: These advantages are possible only in case of a correctly designed protocol.
Undoubtedly, these qualities make the technology unique and give it an extremely high potential in the future. However, just like every new approach, it has a number of disadvantages that should be mentioned:
- Governance issue
- Responsibility issue
- Constantly growing volume of data
- Capacity issue
- Confirmation time issue
Before applying Blockchain in practice, there’s an essential, you can call it, an activity that is to be accomplished — specify the governance. We’re dealing with a decentralized environment, where decision making is carried out on the basis of consensus because participants don’t trust each other. If there would be a certain entity that’s in charge of upgrading the system, dealing with certain difficulties in it and so on — the system would be centralized. Thus, it is extremely hard to determine correct conditions from the very start. Conditions that would allow accurate decision making in the network, that doesn’t have a responsible party, but a ‘decentralized community’ that, by means of consensus, decides what to do.
Ethereum split as an example
We won’t be going into many details here but just discuss the very essence. Some hackers found a vulnerability in Ethereum’s smart contract and stole 50 million dollars in Ether. So, Vitalik Buterin decided to ‘take them back’ by upgrading the protocol artificially. In this way, change the past state of Ethereum’s blockchain — ‘create’ a new one, that no longer has a ‘bad transaction’. The community was the one to decide, whether to do it or not. If an individual agrees, he must upgrade his equipment. In a natural way, the community has split in two: those who decided to stay with the original chain (that is now called Ethereum Classic) and those who accepted the change (it was the majority, so this chain is currently the main chain of Ethereum).
As you can see, the situation is quite controversial. On the one hand, the decision was made by the community (in a decentralized way), still, there are a lot of argues considering the propriety of such solution. And that is how, the problem with governance brings us to another issue, which is responsibility.
People are used to centralized governance systems and that’s a fact. Because you can always find someone to blame. If you bought a car and it broke down after a week of use — you go to these guys and claim your money back. The same thing happens when you use a service of a centralized entity. You have problems with your bank account — you go to the closest branch office and they help you fix the issue.
In case of a decentralized network, you take all the responsibility, because you are involved in the process of managing the state of the system together with everyone. While the rules by which the system operates is the only guarantor of integrity. Each participant verifies the activity correctness of the least. Even the court is unable to implement a solution that contradicts the protocol rules. Because management of digital assets is, so far, beyond power and authorities of the court.
Conclusion: The concept of responsibility in decentralized systems is extremely vague. People should accept the fact that each participant takes their own risks. Whilst, governments should work out new legal models, sometimes even laws that consider the essence of such behavior models.
Constantly growing volume of data
If we draw a parallel between centralized accounting system and the decentralized one, there is one substantial difference. The centralized ledger only stores the final condition of the database. Ex: Alice sends 1$ to Bob; she’s account no longer has the data, referring to 1$, while Bob’s has. With the blockchain, we have a chain of blocks (sorry about tautology) that stores the whole history of all the changes that have ever happened at all the time of network’s existence.
To conclude, constantly growing volume of data is not a critical limitation, but rather a peculiarity of the technology, to which a different approach should be applied.
Most commonly, a decentralized network has lower capacity than the centralized one. Having a centralized server that processes all the data, services such as Mastercard or Visa are able to verify thousands of transactions per second. While in a decentralized system:
1)The data must be spread across all the participants of the network;
2) All participants must reach consensus on this data.
On top of it, the necessity of storing a large amount of data imposes some additional limitations. As a result, we have two factors, which eventually lead to the slower performance of the system. In this way, Bitcoin’s throughput is as low as around 3 tps.
Confirmation time issue
It’s quite obvious that delays, that occur due to the fact that participants should reach consensus with each other, directly affect the response time of the whole network. A fully confirmed transaction in Bitcoin takes up to about an hour. Hour is an approximate time when everyone has definitely reached consensus about your transaction. (Five blocks after the one, where your transaction has been verified is considered an optimum result. When you can be fully confident that everyone agreed to it).
Nevertheless, it’s worth noting that problem with capacity and confirmation delays in such decentralized networks as Bitcoin, Litecoin and Ethereum are almost resolved, by virtue of such solutions as payment channels and Lightning network.
Whereas some consensus protocols do not solve the very problem of the network throughput but considerably increase the performance factor. In this way, the Bitshares protocol allows a fully decentralized payment network to compete against centralized services, such as Visa and Mastercard, even today.
To sum up, all the challenges the Blockchain technology is currently going through are, somehow or another, related to the infancy of such approach. By any measure, it is the people who need to maturate and get used to the new way of how things work. It will undoubtedly be a good lesson for the society, especially, for those at the top of it. Those who steer the control wheel.
Dr. Pavel Kravchenko is a founder of Distributed Lab, technology entrepreneur, cryptographer, software architect, blogger, public speaker and relentless dreamer. Pavel received his PhD in Cryptography in 2012 from the Kharkiv National University of Radioelectronics, after publishing a groundbreaking thesis on securing public infrastructure. a