The credit for inventing Blockchain technology is generally given to an anonymous entity (could be one person or a group, nobody knows) named Satoshi Nakamoto and his academic paper titled “Bitcoin: A Peer-to-Peer Electronic Cash System” published in 2008.
But there were two other people before Satoshi who spoke about something very similar to Blockchain. These individuals were Stuart Haber and Scott Stornetta and they released a paper titled “How to timestamp a digital document”.
While this paper doesn’t openly discuss anything related to Blockchain, several concepts, features, and ideas of what makes Blockchain… Blockchain are present in this paper.
But what is a Blockchain?
If you go to Wikipedia — the universal collection of definition, you will see that it is defined as “a growing list of records, called blocks, which are linked using cryptography”.
In simple terms, it is a list of blocks, where the blocks are linked to each other in the form of a chain.
The next question in your mind should be:
What is a Block?
A Block in a Blockchain is defined as a record that consists of some data, a pointer called previous hash that addresses the block that comes before it, and another pointer called hash that addresses the block itself.
Here is an example of a simple blockchain made of 2 blocks:
The first block is called the genesis block. Once this block is created, it will stay the same for all of eternity. There is no way, any other block can take its place. Like any other block, it will have some data stored in it. But because it is the first block in the chain, and there is obviously no block before it, its previous hash value will be a string of zeros. The block also has a hash value, which is a string of hexadecimal characters.
The second block will also have some data stored inside it. And it’s previous hash value will be the same as the previous block’s hash value. Apart from that, it will also have a hash value which will the previous hash value of the next block in the chain, and so on.
The hashes are what link the blocks to each other. Each block knows its own identity and the identity of the block before it. This method of linking also secures the blockchain from any changes to the data of the block.
The hash of a block is created by taking the data stored inside it and the previous hash. So if I was somehow able to change the data of one block, then that block’s hash will also change. But now the next block’s previous hash value will not match with the new hash value of the changed block. And then the blockchain will know that the block has been corrupted, and the blockchain will then become invalid.