“Blockchain” has become a buzzword in the past few years, but its applications in industries are not extensive. Normally, while talking about Blockchain, people intuitively think about discussing Cryptocurrency, e.g. bitcoin. At the Open Fintech Forum in 2018, all participants have reached a consensus that blockchain is not equivalent to cryptocurrency. In fact, bitcoin is an application of utilizing blockchain technology, just like the application of email using internet technology. However, blockchain today is like the internet in the 90s; no one knows what its application will become in the future.
Many blog posts claim that blockchain will solve all technology problems in the future. But is it realistic? What is Blockchain? How is it going to replace current underlying applied technologies? Kris Bennett made a very detailed fundamental introduction at that day. For those who want to watch the complete video of the forum, please refer to this link. The content of this article will be basically the same as the sharing that day at the Forum. The following is my point of view about blockchain.
Simply put, Blockchain = Distributed Ledgers
In fact, blockchain is a unique database (DB). A DB comprises four basic functions, Create, Read, Update, and Delete (CRUD). Blockchain removes Update and Delete functions, therefore any existing transaction will never be modified.
What are the benefits of blockchain? I think everyone must encounter a situation more or less – Querying historical records, such as accounting transaction records, product history, communication records. It will be terrifying if one can easily modify, tamper, or accidentally create a false record.
At this point, someone may ask: It is understandable that record cannot be modified. But how to prevent data tampering?
Another feature of blockchain is “distributed cluster architecture”. Anyone who has permission can easily create or insert a new record. This record will be validated at the node. If that particular record is valid, it will be written down. On the contrary, if the record is invalid, it will be skipped without saving. A cluster may contain many nodes. Every single “valid record” is verified by “half of the nodes”. The consequence of verification may even affect “valid rule” of next validation. As a result, this fully establishes the security mechanism. It protects one’s data against tampering.
As a matter of fact, it cannot be easily explained in just a few words. Please refer to this article, which is easier to understand.
It is not quite correct to say “disadvantages”. It actually is the extensive cost of the above mentioned blockchain characteristics. Because blockchain is an ever- increasing “database”, it has a certain requirement with regard to storage. However, this is really simple, since the storage devices are cheaper than ever, it is not worth to mention the cost at all.
The real cost of blockchain lies in its calculations. The more nodes in a blockchain network, the worse the high-performance computations. The validation mechanism mentioned above utilizes complex mathematical calculations to ensure that “transaction records” are valid within blocks. In addition, every node will validate every block once. In addition, in some cases (e.g., competing for transaction fees), graphic processing units (GPUs) are required for resources of high-performance computations in order to shorten the validation time. Imaging that in a big blockchain system, multiple GPUs compete for the calculation speed, and they need to constantly be in sync with these “effective rules”.
Blockchain is an architecture that sacrifice “Efficiency” to achieve its goal. In contrast to cloud computing, blockchain will be inefficient if it consists of more nodes, and its scale is too big. This is why it’s getting more and more difficult to mine bitcoins.
In general, three characteristics will be considered while building a blockchain:
The following illustrates different common applications, along with links to some related videos and articles; nevertheless, I will not categorize them based on Permissioned for now. However, if one wants to know there is Permissioned or not, he or she can simply distinguish them from knowing if it allows anonymous user.