I’m sure you’ve stumbled upon this word called ‘Blockchain’ in the last few years. Today, if you put the words “Blockchain based” as a prefix to whatever you’re selling, you’re going to make atleast 2x more sales no matter what your product is.
Anyway, we’re running out of time, I’ve only got five minutes to explain this.
A Blockchain is a continuously growing list of records called blocks, which are linked and secured using cryptography. Sounds too Wikipedia-ish, I get it. Let’s break it down.
First, let’s understand what a block is.
A block is the fundamental unit or the smallest indivisible part of a Blockchain. If you look at the image above, you’ll understand what the components of a typical block are. It has three fields viz. Data, Previous Hash and Hash.
The Data field contains whatever you want to store in your blockchain. Could be a vote in a blockchain based voting application, or a birth certificate in a certificate application, or transactions like in case of Bitcoin Blockchain. The Data field is where you put the main information to be stored in the block.
We’ll come back to the Previous Hash field later.
Next, we have the Hash field. The hash field contains the hash of the block.
A hash is a unique fingerprint of a piece of information. Hashes look different depending on the hashing algorithm, but usually, it is an alphanumeric string that looks like this:
You give the hashing algorithm some input, and get the hash in return as output. If you’re still confused about how cryptographic hash functions, we have an entire article that explains hashes.
In our case, instead of “Hello” like in the above image, we give the hashing algorithm(SHA256) the data field and the previous hash field as input, and get the hash of current block as output. And if even one bit of information in the block is changed, the entire hash changes. (See: Five Requirements of a Cryptographic Hash Function)
The hash of a block serves two purposes. One, it is the signature or fingerprint of that block. Second, it serves as the Previous Hash field of the next block. I think it must be clear now that the Previous Hash field, that is used to produce the hash of the current block, comes from the previous block.
So, if some hacker tries to change the information in the data field of a block, it changes the hash of that block completely. And consequently, it changes the previous hash field of the next block and so on. The blockchain network realizes something is wrong and reverts back to its original unmodified state. This will be much easier to understand when we discover the Distributed Peer-To-Peer network of blockchains. But that’s a topic for another day.
For now, this is enough for a five minute fundamental understanding of Blockchains.