A blockchain is a digital, decentralized ledger that records transactions on a distributed network so that stored records are immutable and changes require Consensus of the network.
Process of performing a transaction:
- Transaction is broadcasted to nodes.
- Nodes must reach Consensus by validating the transaction and the user’s status as the owner of the asset.
- Each verified transaction is combined with other transactions to create a new “block” of data.
- Each newly created block is added to the existing Chain of Blocks.
- New changes to chain of blocks is stored across the Blockchain network.
Process of adding a block to Blockchain network:
- A node called Miner is will create a new block, containing list of transactions since last block's creation.
- The miner provides Proof of Work (PoW) to produce nonce value which is used to create hash.
- The miner broadcasts the new block, it's nonce, and hash to the blockchain network for verification.
- New block is verified by nodes and is considered mined and is permanently added to the Blockchain network's distributed ledger, and it's recorded transactions are considered to be complete.
Benefits
-
Decentralized structure making data more resilient to loss, and more democratic
-
Trust in claim enforced by network rules, cryptographic measures, and Zero-Knowledge Proof.
-
Security and privacy enforced by cryptography and hashing.
-
Free from Censorship
-
Transparency in public transactions.
-
Traceability by creating an irreversible audit trail.
-
Reduced costs for specific use-cases.
-
Improved Speed for specific use-cases.
-
Digital asset ownership using tokens.
-
Immutability, ensure by storing hash of transaction in a distributed network.
-
Drawbacks and Challenges
-
Higher implementation costs including decentralized network and blockchain system for many use-case.
-
Lower system performance for many use-cases.
-
Data modification and high rate of useless data accumulation.
Considerations in Building a Blockchain Network
-
Purpose and goals of your blockchain
-
Choosing the right Consensus mechanism
-
Choosing the right Blockchain Architecture
-
Implementing the Blockchain System
-
Deploying the Blockchain System on a distributed network.