What is Blockchain? How Does It Work? - A Comprehensive Guide on Blockchain Technology!
For the Fintech industry, Blockchain is the revolution of this era. Blockchain became popular for security and individual identity. Let's see a comprehensive guide on Blockchain Technology and What is Blockchain? How Does It Work?
Blockchain word itself gives its definition. If we split the word, we get two words, "Block" and "Chain." When a block containing some data is connected to another block following some protocol is called blockchain. It works like a linked list. The most popular example of blockchain is cryptocurrency like bitcoin, ether, etc. There are some other technologies built-in based on the blockchain concept like ethereum, neo, tron, etc. The main attraction of blockchain is decentralization. Due to its decentralized architecture, none can control the whole system or temper any data because of its architecture.
Blockchain starts with genesis block when the system/platform is deployed for production and genesis block is created by default following the protocol defined by the system. Protocol and block structure can be different from one currency to another or from one platform to another. Bitcoin block structure is different than ether but all the currencies have some common properties like previous block hash, current block hash, block number, timestamp, block content, etc. Suppose, we want to make a five-storeyed building. I can give lift/stairs or both for going upper floor/lower floor as well I can decide about the door, window numbers or other parts. Here, everything depends on me similarly all currency structure, protocol depends on the architecture of the system in a decentralized way to make it secure and standard.
Every blockchain-based project/platform has a structure based on its necessity. There are some similar things that are needed to make a cryptocurrency or project. These things details below,
- Block number: Every block has a number and it is added at the top of the block when a new block is created. It goes up in ascending order. When the system is launched, genesis block is created having the basic structure except for previous block hash. It is also called block height.
- Size: When we store some data in the block, it needs some storage to store the data. How much data is stored by the block is called the size of the block. Example: 1mb,2MB,etc. The Bitcoin Core protocol limits block to 1 MB in size. Each block contains at most some 4,000 transactions.
- Version: Every system has a version to track its latest update. Suppose, when a company launches a cryptocurrency, they make it version 1. When they update the same system or anything in the cryptocurrency they update the version of the system and make it version 2.
- Timestamp: Every moment is unique. When a block is created, it has a unique timestamp.
- Difficulty: Difficulty level has been set based on many parameters. Sometimes it has been set automatically, sometimes algorithmically. Suppose, I have to guess a number between 1 to 10, my guess would be very close or might be accurate. If I have to guess a number between 1 to 1 million then it is very difficult to guess the number and it needs more time to guess the accurate number or close to the number. DIfficulty works in the same way. Sometimes it takes more time, sometimes less.
- Nonce: it is a number which is added to every block and it is needed to generate different types of hash close to the required hash value.
- Transaction counter: The total number of transactions per block are counted is shown here.
- Block content: All the data needed to store in the block are stored here. It can be anything and it is the main content of the block. In the cryptocurrency, all the transaction hash and transaction details are stored here.
- Previous hash: When a block is created, it generates a hash using a hashing algorithm. Everyblock has a unique hash based on the data. When a new block is created, it stores the last block hash in the recently created block.
- Block hash: An hash key is generated using cryptographic secure algorithms like SHA256, SHA512, etc. Using the data stored in the block. The hash is irreversible and unique. It gives the same hash all the time for the same data. If a bit of data is changed, the hash will be changed and that's why it is very secure.
- Markle tree root: Markle tree helps to secure every transaction in the block and encrypt every transaction in the block and follow the sequence from bottom to root to secure the tree. Suppose, we have four transactions. First, we encrypt all the transactions then we encrypt number one, two together and number three, four. We will get two new hash. Finally, encrypt two new hash and get the root hash which is called markle tree root. If the transaction number is odd, then we take a copy of the last transaction to make it even and apply the markle tree algorithm.
Longest Chain Rule
It is one of the essential rules which helps to make the blockchain secure. It helps to prevent unwanted attacks, prevent to control the network or duplicacy in the blockchain. Assume, Two blocks are created at the same time. Both send the block to the nearest network. When another block is created it connects to its nearest network. One block will be long and another block will be small. Every Node or Miner stores all the data including the latest data. Keeping and updating the last updated data can be called the longest chain rule.
Orphan Block / Uncle Block
At the same time, if two blocks are created, one block stays in the blockchain and the other block is rejected following the longest chain rule. The rejected block is called the orphan block or uncle block.
Byzantine Fault Tolerance
It is the way to minimize the fault or error. In other sense, we follow some techniques which maximize the possibility of being right. There are some common byzantine fault tolerances like zero-knowledge proof, Proof of work, proof of stake, etc.
Proof of Work
This Byzantine Fault Tolerance(BFT) algorithm is used to remove redundancy and make the blockchain secure so none can generate a block easily. It sets some mathematical puzzle which needs to solve the miner to create a new block and get rewarded like bitcoin. In bitcoin, reward comes from two sides, one is block creation reward and another is transaction confirmation reward.
Proof of Stake
It is also a Byzantine Fault Tolerance(BFT) algorithm that is used to select a miner/node to create a block and verify the transaction. This type of methodology is used in Ethereum cryptocurrency named ether. The randomly selected miner gets the reward for creating the block and takes transaction fees for verifying the transactions. If Any randomly selected miner tries to temper any data from the blockchain, the miner will lose all the currency.
when a blockchain authority or organization wants to add some feature for the enhancement of the blockchain product, some people oppose the offer and others accept it. In this circumstance, the blockchain product is divided into two chains. The newly divided chain is called a blockchain fork.
Public and Private Key
When an account is created, it generates one private key and one public key. Users can change the public key whenever he/she wants. The private key uses as a password of the account and the public key uses as an identity or wallet of the account which is used by all. Users need to keep their own private key secure because there is no way to recover the private key once lost.
It is used as a bank account number where all the balance is stored. One can send money to another using a wallet. A wallet can be divided into subsections to make it secure and avoid redundancy. All the balance stored only one account but showed the sub wallet number when the balance is transferred from one to another.
A decentralized application(Dapps) is a computer application which is run on the decentralized platform. It runs on top of other platform like ethereum.
It is used to control the whole system of the blockchain project. It decides what happens on the system. If it is a cryptocurrency system, smart contracts will decide which transaction will be accepted which will not be based on the system protocol and requirement.
web3 is the technology where users can read, write autonomously and the data is stored in the server in a decentralized way. The concept is established after the blockchain project like bitcoin,ethereum. Users can fetch data from the server via web3 library like web3.py, web3.js, etc.
It is the process to reduce the pressure of the bitcoin transaction per second. Suppose a man wants to buy a coffee from a restaurant. If he pays the bill in bitcoin then he may need more transaction fees than the coffee price. In this scenario, the man makes a private ledger signed by the man and the restaurant and maintains the transaction ledger following bitcoin protocol. Any one of them can make the transaction public anytime. After many transactions, they only need to give one transaction fee when they make it public. In this way, bitcoin can process more transactions and balance the transaction load per second.
Tokens are some cryptographic hash numbers that have many usages. Suppose, we want to sell some software. He can sell the product using a token per user to make the software authentic and make business. It is called a token.
The documentation and description of the whole software or project can be as the white paper of the software or project.
Transaction pool places all the unconfirmed transactions. When a user sends a transaction request, it first goes to the transaction pool and stays there until confirmed. It is a special type of storage which works at real-time data processing.
Metamask It is an extension which stores user account information and connects to the blockchain platform for a transaction or other works. Users can store many account information via metamask in a secured way.
The transaction process is divided into some steps. The steps are:
- Users sign in using a private key and a public key or via metmask
- A transaction request is sent by the authenticated user.
- A new block is created storing all the newly requested transactions.
- Transactions are stored in the transaction pool until confirmation.
- The block is sent to all the nodes.
- Nodes validate all the transactions in the block and response confirmation.
- Nodes receive rewards for creating blocks via proof of work, proof of stake, etc. And get a transaction fees for transaction validation.
- Newly validated block added to the existing blockchain.
- The updated blockchain is distributed to all the nodes via network.
- The transaction is completed.
ICO stands for initial coin offering or initial currency offering. When someone creates a new cryptocurrency giving a unique initially, that is called ICO. Anyone can launch a new cryptocurrency. There is a little or very low governance of the currency.
Ethereum virtual machine or EVM is a platform to create blockchain-based apps named dapp. Anyone can create a blockchain app and EVM gives the data security keeping the data in a decentralized way. When anyone can deploy a dapps. Whenever anyone wants to do a transaction, he/she has to give the gas fee for transaction validation in ether. There are also some other platforms like NEO, TRON is a similar type of EVM.
I hope, Fintech Entrepreneurs and beginners of Blockchain development understand the very fundamental terms about Blockchain Technology and What is Blockchain? How Does It Work? If you want to grow your business on Fintech then it is high time to join with Blockchain Technology.
Want to start a business on Cryptocurrency? Check out the most advanced Cryptocurrency Trading Software - Tradebox