Blockchain – The revolutionary technology impacting different industries was introduced in the markets with its very first modern application Bitcoin. Bitcoin is a form of digital currency (cryptocurrency) which can be used for trading. The underlying technology behind the cryptocurrencies is Blockchain.
There’s a common misconception among people that Bitcoin and Blockchain are one and the same, however, that is not the case. Creating cryptocurrencies is one of the applications of Blockchain technology and other than Bitcoin, there are numerous applications that are being developed on the basis of the blockchain technology.
What is a Blockchain?
A blockchain is a growing list of records, called blocks, which are linked using cryptography. Each block contains a cryptographic hash of the previous block, a timestamp, and transaction data. By design, a blockchain is resistant to modification of the data
Well this sounds like a LinkedList
Not exactly. The blockchain is a technology that implements linked lists at various points, yet it would be incorrect to define blockchain itself as a linked list.
- A linked list is a data structure which is formed by a collection of elements (called nodes) each pointing to the next. It is widely used in programming to implement various abstract data types, like lists, stacks, and associative arrays.
- Blockchain can be described is a chain or records stored in the forms of blocks. Each transaction on a blockchain is secured with a digital signature that proves its authenticity. Due to the use of encryption and digital signatures, the data stored on the blockchain is tamper-proof and cannot be changed.
How Does a Blockchain Work?
A blockchain is a chain of blocks that contain data or information. Despite being discovered earlier, the first successful and popular application of the Blockchain technology came into being in the year 2009 by Satoshi Nakamoto. He created the first digital cryptocurrency called Bitcoin through the use of Blockchain technology. Let’s understand how a blockchain actually works.
Each block in a blockchain network stores some information along with the hash of its previous block. A hash is a unique mathematical code which belongs to a specific block. If the information inside the block is modified, the hash of the block will be subject to modification too. The connection of blocks through unique hash keys is what makes blockchain secure.
While transactions take place on a blockchain, there are nodes on the network that validate these transactions. In Bitcoin blockchain, these nodes are called as miners and they use the concept of proof-of-work in order to process and validate transactions on the network. In order for a transaction to be valid, each block must refer to the hash of its preceding block. The transaction will take place only and only if the hash is correct. If a hacker tries to attack the network and change information of any specific block, the hash attached to the block will also get modified.
The breach will be detected as the modified hash will not match with the original one. This ensures that the blockchain is unalterable as if any change which is made to the chain of blocks will be reflected throughout the entire network and will be detected easily.
In a nutshell, here’s how blockchain allows transactions to take place:
- A blockchain network makes use of public and private keys in order to form a digital signature ensuring security and consent.
- Once the authentication is ensured through these keys, the need for authorization arises.
- Blockchain allows participants of the network to perform mathematical verifications and reach a consensus to agree on any particular value.
- While making a transfer, the sender uses their private key and announces the transaction information over the network. A block is created containing information such as digital signature, timestamp, and the receiver’s public key.
- This block of information is broadcasted through the network and the validation process starts.
- Miners all over the network start solving the mathematical puzzle related to the transaction in order to process it. Solving this puzzle requires the miners to invest their computing power.
- Upon solving the puzzle first, the miner receives rewards in the form of bitcoins. Such kind of problems is referred to as proof-of-work mathematical problems.
- Once the majority of nodes in the network come to a consensus and agree to a common solution, the block is time stamped and added to the existing blockchain. This block can contain anything from money to data to messages.
- After the new block is added to the chain, the existing copies of blockchain are updated for all the nodes on the network.
The following features make the revolutionary technology of blockchain stand out:
Blockchains are decentralized in nature meaning that no single person or group holds the authority of the overall network. While everybody in the network has the copy of the distributed ledger with them, no one can modify it on his or her own. This unique feature of blockchain allows transparency and security while giving power to the users.
With the use of Blockchain, the interaction between two parties through a peer-to-peer model is easily accomplished without the requirement of any third party. Blockchain uses P2P protocol which allows all the network participants to hold an identical copy of transactions, enabling approval through a machine consensus.
The immutability property of a blockchain refers to the fact that any data once written on the blockchain cannot be changed. To understand immutability, consider sending email as an example. Once you send an email to a bunch of people, you cannot take it back. In order to find a way around, you’ll have to ask all the recipients to delete your email which is pretty tedious. This is how immutability works.
Once the data has been processed, it cannot be altered or changed. In case of the blockchain, if you try to change the data of one block, you’ll have to change the entire blockchain following it as each block stores the hash of its preceding block. Change in one hash will lead to change in all the following hashes. It is extremely complicated for someone to change all the hashes as it requires a lot of computational power to do so. Hence, the data stored in a blockchain is non-susceptible to alterations or hacker attacks due to immutability.
With the property of immutability embedded in blockchains, it becomes easier to detect tampering of any data. Blockchains are considered tamper-proof as any change in even one single block can be detected and addressed smoothly. There are two key ways of detecting tampering namely, hashes and blocks.
As described earlier, each hash function associated with a block is unique. You can consider it like a fingerprint of a block. Any change in the data will lead to a change in the hash function. Since the hash function of one block is linked to next block, in order for a hacker to make any changes, he/she will have to change hashes of all the blocks after that block which is quite difficult to do.
Types of Blockchains
Though Blockchain has evolved to many levels since inception, there are two broad categories in which blockchains can be classified majorly i.e. Public and Private blockchains.
Before heading towards the difference between these two, let’s keep a check on the similarities that both public and private blockchain have:
- Both Public and Private blockchain have peer-to-peer decentralized networks.
- All the participants of the network maintain the copy of the shared ledger with them.
- The network maintains copies of the ledger and synchronizes the latest update with the help of consensus.
- The rules for immutability and safety of the ledger are decided and applied on the network so as to avoid malicious attacks.
Now that we know the similar elements of both these blockchains, let’s learn about each of them in detail and the differences between them.
Public Blockchain – As the name suggests, a public blockchain is a permissionless ledger and can be accessed by any and everyone. Anyone with the access to the internet is eligible to download and access it. Moreover, one can also check the overall history of the blockchain along with making any transactions through it. Public blockchains usually reward their network participants for performing the mining process and maintaining the immutability of the ledger. An example of the public blockchain is the Bitcoin Blockchain.
Public blockchains allow the communities worldwide to exchange information openly and securely. However, an obvious disadvantage of this type of blockchain is that it can be compromised if the rules around it are not executed strictly. Moreover, the rules decided and applied initially have very little scope of modification in the later stages.
Private Blockchain – Contrary to the public blockchain, private blockchains are the ones which are shared only among the trusted participants. The overall control of the network is in the hands of the owners. Moreover, the rules of a private blockchain can be changed according to different levels of permissions, exposure, number of members, authorization etc.
Private blockchains can run independently or can be integrated with other blockchains too. These are usually used by enterprises and organizations. Therefore, the level of trust required amongst the participants is higher in private blockchains.
Popular Applications of Blockchain Technology