Blockchain has become one of the demanding technologies, people can avoid cryptocurrencies (one of the applications of blockchain system, which is used in confidential payment transactions), but one cannot avoid blockchain technology’s various applications. It can be used in keeping safe records within health, education and financial industries, can be used in supply chain management, and agreements (smart contracts) within corporate deals and regulation. There is no doubt that it has several applications within various industries. But what makes it this much special? Yes, that is its structure or architecture. Let’s get to know about blockchain architecture.
To understand blockchain architecture, we will have to understand a single block structure. But why a single block’s structure? Because a single block is a unit of the blockchain, and blockchain is nothing but a chain of blocks, or sequence of blocks, which holds a complete list of transaction records like conventional public ledger.
Block Structure
A single blockchain structure can be understood by dividing into two parts:
- Block Header
- Block Body
Block Header
Block header is a portion of a block which contains a set of information (or metadata) within itself. Simply putting, let’s consider a human body as a block and the block header is the brain of the whole block. This set of information or metadata includes six main information within itself. And these 6 main attributes or information are given below:
- Timestamp
- Blockchain Version
- Merkle Root
- Difficulty Target
- Nonce
- Previous Hash
Timestamp
Timestamp is a small size data, which is stored in block header as a unique serial. Its main function is to determine the exact moment in which the block has been mined and validated by the network.
Block Version
Block version’s function is used to talk about which kind of version of block is using. Most of the block versions are:
Blockchain Version 1.0 (Cryptocurrency): It is mainly used in public ledgers containing systems. For example: Bitcoin, Bitcoin Cash
Blockchain Version 2.0 (Smart Contracts):
Blockchain Version 3.0 (DAPPS): It talks about decentralized applications.
Blockchain Version 4.0 (Blockchain for Industry)
Merkle Root
To understand Merkle root, we will have to understand the concept of Merkle Tree. Now, what is Merkle tree? Well, to get a hash value of each block we use this concept. A block within the blockchain system, contains a number of transactions, and each transaction is assumed as the leaf of the Merkle tree, and these leaves or transaction have their own hash values.
A number of leaves or transactions make sub-branches. And, eventually all of the branches’ hash values refers to the hash value of Merkle Root or the hash value of whole block. So, Merkel Root describes the hash value of the whole block.
Difficulty Target
Difficulty target refers to the measurement of difficulty level within block mining. Where mining is a peer-to-peer process (P-2-P process), which is used to secure and verify transactions. This blockchain mining process is done by blockchain miners who add data transactions to the distributed public ledger.
Nonce
Nonce is a number that can be used once, in cryptography it is a one-time code. In mining process, the main of miners is to find the hash value below a target number, which is calculated based on the difficulty level. The server generates the nonce (a nonce) and sends it to the client. The client uses the received code, adding it to the password before encryption, encrypts the received string, and returns the resulting message to the server.
The server decrypts the message from the received string to "subtract" the known nonce and verifies the password. This nonce is used once and only once, all subsequent transfers of passwords with the same nonce will be rejected by the server, so an attacker who intercepts a message with an encrypted password will not be able to gain access by resending the intercepted message to the server.
Previous Hash
Previous hash is the hash value of previous block lying within the blockchain system.
Through a combination of pointer and hash function, blocks connect themselves and do the chain formation. And the same reason is behind tamperproof ledger, which is if any person tries to break the chain or edit any information, he will have to change the whole nodes. Otherwise, it will regain its previous form.
Block Body
Block body contains depends number of transactions, size of blocks.
Blockchain Architecture
Above, we have studied about following things:
Single Block Structure
Block Header
- Block Version
- Timestamp
- Merkle Root
- Difficulty Target
- Nonce
- Previous Hash
Block body
- Merkle Tree
- All Transactions
When we put it all together and link similar blocks, we get the whole blockchain architecture. At first, the genesis block formation is done by the blockchain developer. Then new nodes show their interest within the particular blockchain system and transactions cycle continues.
Powered by Froala Editor