To inspire new ideas block42 P-rep decided to create a series of blog posts under the name of “ICON for thought” that provides an interesting point of view on a subject of the ICON network.
In this issue, we will look at the strengths and weaknesses of a blockchain which will correlate with the next one where we’ll discuss real-world use cases.
Rise of blockchain
We believe that blockchain is a wonderful technology but it is not a magical solution to every problem in the world. In 2017 when there was a big boom of ICOs and the price of most cryptocurrencies was rising and blockchain was slapped onto almost everything possible. There was even a Useless Ethereum Token that admitted it will not accomplish anything and will be completely worthless and yet they still raised more than 310 ETH. Most of the projects were bound to fail as the projects were using blockchain just to appeal to the hype. But to understand why someone would use blockchain we need to look at its strengths and weaknesses.
Note that some aspects that provide the strengths of a blockchain can also be the cause of the weaknesses.
Decentralization is one of the key selling points for blockchain because there is no central authority and a single entity can not make decisions or change the basic protocol. This way a consensus between a majority must be made to achieve changes that makes it a kind of digital democracy. A great example of this is the control of bitcoin inflation because a central authority can not print extra currency the inflation is predetermined.
Distribution of nodes provides resistance to technical failures and malicious attacks directed at a single node. Because each node can store a copy of the database if one or few nodes go offline it does not impact the stability of the network.
The reason blockchain is called a trustless system is because there is no need for an intermediary when a transaction between two parties is being made. A distributed network of nodes verifies the transaction through a consensus protocol that is determined by the blockchain. This way there is no risk of trusting a single entity and by cutting out third parties there are fewer transaction fees.
Immutable & transparent
Once a block is confirmed it is almost impossible to change it which makes this a great technology for keeping any sort of data where an audit trail is required. All of the transactions can be seen on the blockchain this makes it very good for transparency reasons and for providing the data to everyone that wants to see it. For example, preventing fraudulent behavior within a company could be reduced if all the financial transactions are made on a blockchain. As all of the transactions are visible and recorded it would be hard for an employee to hide suspicious transactions.
Because a blockchain must reach consensus on all nodes it may cause the performance to be slower. Depending on the consensus protocol the transaction speed might vary and a lot of improvements were already made in this area but centralized systems still have the upper hand here.
Once a transaction is recorded on the blockchain it can not be reversed. Because there is no central authority, transactions can not be reversed in a case of scams or frauds. No middleman means fewer fees but also less user security for using a blockchain, while the blockchain itself is secure it may not be as user-friendly as some other services were they vouch for a user in case of fraud.
Each block added to the blockchain increases the size of the database which means ledgers can grow very large over time. If the ledger becomes too large, everyday users may not run nodes to help secure the network. With hard disks becoming cheaper and cheaper this problem might be resolved by the progress in technology. The total size of all block bitcoin headers and transactions not including database indexes at the time of writing is 260GB and it increased by about 58GB in a year.
This one falls on both sides of the spectrum as track keeping it is great but it is much harder to update data that needs to be changed to maintain it’s functionality. If a smart contract is added to the blockchain it can not be changed and any flaws with the code remain there forever. When a change to blockchain data or code needs to be made the process can be very demanding leading to a hard or a soft fork depending on the consensus between the nodes.
When we want to use real-world data on the blockchain, how do we know that the data can be trusted? If we allow a single entity to provide data the blockchain might not be trustless as a third party that needs to be trusted is involved. One of the solutions is a highly reliable decentralized oracle network that needs multiple confirmations before data becomes a trigger for a smart contract to execute.
Centralized vs Decentralized
Why would someone use blockchain technology instead of a centralized system? While these two terms are often depicted as complete opposites they might work together in harmony.
Maybe a company doesn’t need to have a decentralized blockchain-based network set up within the company but when they interact with other entities it might be useful to make transactions over a blockchain which allows both parties to keep a straight record about previous exchanges.
Maybe automatization between multiple centralized entities is easier to be achieved when you use a trustless network where a smart contract dictates the outcome of the situation.
Not everything is black and white there are a lot of gray areas, don’t expect blockchain technology to solve all the problems but it provides strengths to areas in which a centralized system was lacking.
There isn’t a single solution to all the problems otherwise we wouldn’t have any instead we would just use the same principle for solving anything. If you want to know how to be the best possible version of yourself you need to know your strengths and weaknesses. The same goes for technology, you can’t apply blockchain to anything and claim it is better because of it. But if we use blockchain technology in the correct applications it might do wonders. As the famous Einstein quote states:
“Everybody is a genius. But if you judge a fish by its ability to climb a tree, it will live its whole life believing that it is stupid.”
In the next issue of Icon for thought, we will expand on this topic and we will discuss real-world use cases. Stay tuned.