Blockchain: The grown up linkedlist.
Tags: Blockchain, Finance, Technology, Programming, Cryptocurrency

In this article I’ll give you a beginner’s path driving in the direction of Blockchain Technology and Cryptocurrency which would give you some basic knowledge on what exactly this crazy topic is about. You must definitely have heard something about this, unless you are completely away from computers, mobile applications and media. I guess there are hundreds and thousands out there who are willing to gain the knowledge of it. So, lets get started.

I’m not a designer and this is not mine.

On hearing the word Block-chain itself, it seems to be a complex structure and it’s obvious to have a question.

Is something this complex required??

To answer this instead of defining what is block-chain I’ll try explaining the roots of idea from where it got started.

Centralised to Decentralised

Let me come with a small example. Consider two people, Alice and Bob, If Alice had to send some money to Bob.

How will she send??

In general, he may use a bank where a record of his transaction is stored and amounts are debited and credited accordingly.

This transaction may be recorded something in this way.

Alice- paid -Bob- $xxxx

In these types of transactions there is a center ( bank ) which is being trusted. But what if some wrong thoughts of bank manager makes him to manipulate the record this way instead of the above one to make profits.

Alice- paid -Bob- $xxyy

What just happened?

Alice and Bob both trusted the bank to manage money. There was no physical movement money but there was an entry in a register, none other than him have control over it. Alice lost her money because of this bank manger.

Then came a question

Can’t we ourselves maintain a register instead of trusting somebody??

Later after sometime a solution came up and is called Block-chain.

For this to be implemented a group of people having at-least 3 people is required. Assume that there are 8 people who are not willing to trust banks but want to maintain their own register.

For this to happen Transactions record is to be maintained where account details, transaction details are stored and is called a block. Identities are hidden from one another, every person will have access to these records.

This is how a block looks

Working of Block-Chain.

Let’s consider manual entry of transaction records instead of computerized entry for our easy understanding.

Everyone of these 8 people will sit with pen, whenever some transaction occurs, example: Alice sends $xxxx to Bob. Everyone checks whether Alice has enough balance to transfer to Bob. If she has enough balance, everyone then makes a note of the transaction. And this process of entry of transactions continues for every transaction.

As soon as everyone runs out of space they need to store this entire record of transactions. To store this we need to safe guard it with some lock and a key that everyone agrees. By sealing it, we will make sure that no one can make any changes to it. The seal of the page is the main point and is needed to be a strong one.

This process of sealing a page with transactions is called Mining.

How do we seal the page then?

Here comes the part of cryptography, where it makes the page such that no one could edit it back for his profits. Before going into it we need to hae some knowledge on hashes.

Hash: A hash function is which takes an input (or ‘message’) and returns a fixed-size alphanumeric string. The string is called the ‘hash value’, ‘message digest’.

referred Wikipedia

How do we use this hash in safeguarding our pages??

A number or a value is needed to be found out which on adding the contents of the page and is hashed using this hashing function provides an output with leading zeros. If 123456 is the contents of the page, then you need to find out a number to be added to it which gives leading zeros, this number is called seal of the page.

123456 + ______ ====> 000…………

say we need to add 67890 to get leading zeroes then, this number 67890 is called the seal of page 123456.

And this sealing number is called Proof Of Work.

Verification :

If anyone wants to verify whether the page was altered, he should add the contents of the page with the sealing number and find out the hash of it. If message digest comes out with three leading zeroes, the contents were untouched. If the word that comes out doesn’t meet our requirements, its contents were compromised.

So, finding out this sealing number is the major work in this type of registering system. And a person who provides this is given some incentives.

Even now, a small problem is there in the above described process, what if some one goes and edits a transaction that was done long ago, change it and find the new sealing number, attach it to the page??

If Modifications done to sealing number ??

Answer would be something like this, if someone has to modify a historical page, if he would also have to change the contents and the sealing number of all the pages after that, then the problem would be solved. So, in calculating the sealing number of every page the details of its previous page are also included.

This is why the blockchain tamper proof. You change one thing in the past, it messes up everything else.

This being an open register and is accessible to all the members of the block-chain, it completely depends on number of people honest in the as as it considers the longest chain is the best and honest one.

That’s how Bitcoin got into existence. It was the first currency to be transacted on a Block-chain. Later on many came into existence.

And that’s it my friends,here ends what all I wished to write about working of Block-chains. Thank-you for taking some of your valuable time to read it, hope you enjoyed it.