Blockchain

Blockchain simply refers to chain of blocks. Each block contains informations like any transactions, signatures etc. First block of a blockchain is called Genesis block. Once genesis block is created, new blocks are appended on top of it. And so on, blocks gets generated and appended to the chain. However, there is catch. How are these blocks appended? Are there any protocols or rules to be followed? Who appends the blocks?

Blockchain is decentralized. It means there is no central authority to control the blockchain. Blockchain can be compared with a any commercial bank. A bank keeps record of customers, their transactions and other informations like agreements etc. in a central database which is wholely controlled by the bank. Blockchain also does the same. Every block in a blockchain contains the information like transactions and balance etc. In a bank transactions gets added chronologically in to database. Similarly, in blockchain transactions gets added to the blocks and blocks are then appended to main blockchain. Howerver, blockchain is not controlled by a single authority like bank.

In blockchain, participating computers are called nodes. These nodes compete with each other while trying to add blocks to the blockchain. They are also called miners. There are rules which these nodes need to follow in order to be able to to mine and add the blocks into the blockchain. These rules are called Consensus Protocols. There are many types of consensus protocols. Mainy there are two types which are Proof of Work and Proof of Stake.

Blockchain is founded on top 3 foundational technologies:

  1. Computer Science Technology
    • Linked Lists
    • Distributed Networking
  2. Cryptography
    • Hashing Algorithmns
    • Digital Signatures
    • Public Key Cryptography
  3. Financial Knowledge
    • Financial Ledger Concept

One the foundation of Blockchain is Cryptography. Blockchain utilizes two types of cryptographic algorithms. First one is hashing algorithms. This algorithms is used to calculate hash value of a block header. Each block in a blockchain will contain that hash value of previous block in its header. Thus, they are linked together and are immutable. Most common hash algorithm used is SHA256. Whereas, to sign transactions and verify them, signature schemes are used which are type of public key cryptography. In public key cryptography, there are two keys, one is private and the other is public. Public key is used to generate addresses for users or nodes in the network by hashing the public key. The hash value returned is the address of the node or user. Whereas, private key is used to generate signature after signing the transactions in the block. This signature later is used to verify the authenticity of the transaction. In this way, by use of both public key cryptography and hash algorithm, blockchain is immutable, secure and reliable.

References:
[1] D. Yaga, P. Mell, N. Roby, and K. Scarfone, “Blockchain technology overview,” National Institute of Standards and Technology, Gaithersburg, MD, NIST IR 8202, Oct. 2018. doi: 10.6028/NIST.IR.8202.

error: