Introduction to Blockchain
Blockchain technology in simple words is a peer-to-peer (P2P) decentralized approach to solving a computing problem with the help of a large number of computing nodes. Typically, the computing problem may involve committing a transaction to a ledger after verifying credentials of all transacting parties, the transaction amount, and other related housekeeping information, such as timestamps. The ledger essentially leverages a distributed ledger-based technology such that a duplicate copy of the ledger is separately maintained by each node. The term "Blockchain" is derived from "block" (i.e., a group of verified transactions) and "chain" (i.e., a linking of all the blocks together akin to a chain). Herein, it is the distributed ledger, which in essence is the blockchain. It includes the world-state information of all the verified transactions that have occurred till now. The ledger is a public knowledge available to all the nodes.
What is mining and consensus?
Now, one question that may occur to your mind at this point is that how a record is entered into the blockchain ledger. There needs to be a technique to verify a new transaction and then enter it into the ledger. Digressing a bit, lets discuss the multiple types of nodes in a blockchain network. Firstly, there are full nodes that keep track of the entire blockchain ledger, verify transactions, and participate in consensus mechanisms. Consensus mechanism are essentially majority voting-based techniques to ensure that new transactions to be committed to the blockchain ledger are legit and valid. Then, there are lightweight nodes or client nodes that only download headers of the blockchain ledger and provide support to the full nodes for transaction verification. Further, there are miner nodes that aggregate valid transaction into blocks and chain them together in the current version of the blockchain ledger. But, in order to do that, the miner nodes are required to perform a complex mathematical problem (i.e., a proof of work (PoW) mechanism). Multiple miner nodes compete with each other to solve the problem, and the winner takes it all. That is, the winning node earns the right to aggregate transactions validated by it to form a new block and attach the new block to the last block of the current version of the blockchain ledger. Thus, a new block is created. Further, the winning miner also earns a mining reward for creation of the new block in the form of a fixed amount of a cryptocurrency in his/her crypto-wallet. The fixed amount earned by the winning miner can be compared to a new currency that is mined in the blockchain system. So, in a way mining avoids double-spending and provides a network-wide consensus-based security to the blockchain system without the need for a centralized validation authority.
Cryptography and Blockchain
Blockchain employs an interesting mathematical construct called as hash function to ensure that the data in the blocks remains encrypted and secure and that the data can be validated during consensus or transaction validation. A unique property of hash functions is that they can take in an input string of any number of characters and generate a fixed length output, which may not be converted back to get the input string. Thus, in a way the hash function is essentially a one-way non-invertible function. Each block in the blockchain ledger includes a hash value as one of the data fields. This hash value is generated on the basis of the data of the block and the hash value of the previous block. Thus, the consecutive blocks in the blockchain ledger are dependent on each other through the hash values. Even a slight change in data or hash of any block will lead to a change in the hash value of the current block of the blockchain ledger. Thus, the blockchain ledger can maintain immutable records of all the transactions that have occurred up until now. The use of hash functions provides blockchain systems with immutability, transparency and accountability.
Tokens
A token is an essential element of a blockchain ecosystem. A token is a type of a bearer instrument, which may be exchanged between parties to denote the ownership of an asset. New tokens can be created, distributed, transferred, and later even destroyed, as per requirements of the application area. Tokens may be used to represent digital assets, cryptocurrencies, digital artworks (for e.g., through non-fungible tokens), and other real or virtual assets. The economic value creation within the blockchain ecosystem can be realized through the use of tokens.
Types of Blockchains
This is an open P2P network where anyone can join the network, validate transactions, and contribute to the consensus mechanism. Examples include Bitcoin and Ethereum. USP: transparency, immutability, and security.
This is a restricted access blockchain used typically within organizations or consortiums, allowing control of a central body over who can join the network and participate in the consensus process. Examples include Hyperledger Fabric and R3 Corda. USP: prioritize privacy and scalability over complete decentralization. These are employed in industries like finance, supply chain, and healthcare.
This is a best of both worlds offering that provides a flexible and customizable solution. It allows certain parts of the blockchain to be public and other parts as restricted. USP: offers a balance between transparency and privacy, making it suitable for various use cases. For instance, a supply chain company can leverage a hybrid blockchain to ensure transparency with stakeholders and still manage sensitive data distribution to only authorized participants.
I hope that I could do justice to explaining the introduction of this technology domain in as simple form as I could.
This is Subin Khullar signing-off!
References: