Blockchain Components

Eventually, Blockchain is a distributed database that maintains a continuously growing list of data records, chained together against revision and tampering. It uses software algorithms to record transactions or any digital interaction with reliability, security and anonymity. Eventually, Blockchain technology is amalgamation of many existing technologies, mathematical theories and theorems. While designing blockchain based application I prefer to break it in four major sections:

·        Dapp (front end)

·        Transactions

·        P2P network(Connected nodes, Mining based on consensus protocols)

·        Node (part of p2p network and keep own copy ledger and smart contract)

Dapp stands for distributed app that ideally has to be present on every node (millions of computers available in network).It is actually your front end and can developed using any technology like angular, react, java or ruby. Electron and NWJS like technology has gain pace with the advent of blockchain based application because using these technologies we can create cross platform desktop applications and install on every node (computer) in a blockchain P2P network.

DAPP used to generate all kind of transactions (money transfer, Assets transfer) to send to p2p network. These transactions finally are be save to blockchain ledger on every node after mining process. Mining process differs based on consensus protocol used by P2p network.

When a transaction takes place, a number of separate computers (minors), connected across the network process the algorithm and verify the transaction. Basic information is stored in the ledger in encrypted form about each transaction — such as sender, receiver, time, asset type and quantity. Each new transaction is mathematically linked to those that came before it, thus the blockchain process ensures validity.

Different blockchain frameworks (fabrics) are using different consensus mechanisms for their P2P network. For example, Bitcoin and Ethereum uses proof of work consensus mechanism (though Ethereum is soon moving to Proof of stake) .Similarly, hyperledger uses PBFT (Practical Byzantine Fault Tolerance) and Intelledger is using proof of elapsed time.

In POW, the mathematical puzzle is actually decided by network and it is not associated to per transaction, for bitcoin after the production of every 2016(need to check once) blocks, bitcoin mining algorithm will dynamically adjust the difficulty value according to the hash rate of the whole network. Minors collect all pending transactions on the network after the production of the last block. Then calculate the Merkle Root of these transactions and fill in the block version number, the 256-bit hash value of the previous block, the current target hash value, Nonce random number and other information.

For calculation, minors traverse the Nonce from 0 to 232 and calculate the double SHA256 hash value. If the hash value is less than or equal to the target value, the block can be broadcasted. The node complete accounting after the verification of other nodes.

Hope this article has given you a better understanding on Dapp, P2P network and transactions in blockchain. I will be publishing a series of blogs to cover all the aspects of blockchain technology like:

1.      Consensus mechanisms in depth.

2.      Mining in depth.

3.      Transactions in depth.

4.      Ethereum 360* view

5.      Bitcoin 360* view

6.      Many more..

Stay tuned……Bye for now.


Great article Raj Jha, it will be great if you can share more insights into Ethereum, IPFS, Oracle

Like
Reply

Great technical insight ..very nice article

To view or add a comment, sign in

More articles by Raj Jha

  • Digital Transformation — A Journey

    Digital transformation is ongoing journey for any society and enterprise. There is no measure and finish line where…

    6 Comments
  • Enterprise blockchain — An Architect view Part-1

    Traditional enterprise networks following “Defense In Depth” model usually consist several network zones, DMZ’s and…

  • Are human really ready for smart living?

    Technology driven smart-city is one of the most promising project that whole world is chasing right now. Population has…

    2 Comments
  • Quality assurance for blockchain applications

    According to few surveys only 1% of blockchain projects have reached to production and 92% projects have failed due to…

    7 Comments

Others also viewed

Explore content categories