It is often said that blockchain is a slow and expensive database. Moreover, it does not scale well. So there is no reason to use it for anything else than Bitcoin.
Nothing from that is a correct claim. Blockchain can be scalable, fast and cheap data storage. Well, blockchain will never be as fast as a traditional database. However, a blockchain has a few advantages over a database and it makes sense to know which one.
In the article, we will discuss what exactly blockchain is from the data perspective and then we have a look at the most important differences between a blockchain and database.
Chain of blocks
From the data storage point of view, a blockchain is a way how to store data in blocks. It is a data structure very similar to a linked list.
Linked lists
A linked list is a linear data structure where each element is a separate object. Each element of a list is comprising of two items — the data and a reference to the next element. The last node has a reference to null. The entry point into a linked list is called the head of the list.
Blockchain adds one extra feature and it is protection against history tampering. The first study on a cryptographically secured chain of blocks was described in 1991 by authors Stuart Haber and W. Scott Stornetta. They wanted to implement a system where document timestamps could not be tampered with. In 1992, Bayer, Haber, and Stornetta incorporated Merkle trees to the design, which improved its efficiency by allowing several document certificates to be collected into one block. Notice that they did not use the term blockchain but “chain of blocks” in their work. Satoshi Nakamoto used the same term chain of blocks in the Bitcoin white paper.
The claim that Satoshi invented blockchain is not correct. It is a mistake. He just reused the existing work.