Blockchain Development - Introduction

 Significance of Blockchain Technology

  • Transactions usually require a third party who adds more trust to both sender and receiver parties.
  • But, this third party can be corrupted and expensive.
  • Blockchain eliminates this third party by making the process of exchange more foolproof.
  • Transaction history is available and direct interaction of both parties.
  • Multiple copies of transaction history are present in various locations.
  • Blockchain solves many distributed processing issues - versioning data, remote processes, and multiple computing sources.

Cryptocurrency

  • Implementation of blockchain.
  • Different from fiat currency - No regulatory board is present.
  • Cryptography ensures integrity.

Blockchain data and blocks

  • Only support ADD and READ operations. UPDATE and DELETE operations aren't available.
  • A ledger keeps track of all transactions.
  • Blockchain data is replicated among multiple nodes and new data can be added only if the majority of nodes agree on the new transaction - Consensus and Immutable.
  • Hashes -  Encryption functions that are irreversible.
  • Chain of blocks - Each block will carry hash values of the previous block and current block and transaction details.
  • Nonce - Value added to block to create a new hash.
  • Mining - Finding the correct nonce value to generate the hash, requires a lot of computational resources.
  • Miners get rewarded for calculating the correct nonce.

Consensus mechanisms - PoS, PoS, Delegated PoS, dBFT

  • Proof of Work - Nodes compete to find nonce, resource-intensive.
  • Proof of Stake - Each node submits bets, less computing and random selection.
  • Delegated Proof of Stake - Modified PoS, nodes voted in for fairness.
  • Delegated Byzantine Fault Tolerance - Nodes randomly select a delegate speaker, 2/3 of delegates must agree with the hash.

Blockchain Types

  • Public/ Permissionless blockchains - All information is available to every node and anyone can participate.
  • Private/ Permissioned blockchains - Only authorized can participate and access information.
  • Types of nodes - Full Nodes (Keeps all information in the blockchain), Lightweight Nodes (Only keep recent information).

I learned most of these points from the linkedIn course - Please check it out as well.

Comments

Popular posts from this blog

Setting up Python Flask server on internet via Port forwarding

Simultaneously deploy multiple functions in a single Azure function app

Automate Blog Post creation using Blogger APIs and Python

Supervised Learning

Unsupervised Learning