-
Course Overview 5
-
Lecture1.1
-
Lecture1.2
-
Lecture1.3
-
Lecture1.4
-
Lecture1.5
-
-
Quick Blockchain Refresher !! 10
-
Lecture2.1
-
Lecture2.2
-
Lecture2.3
-
Lecture2.4
-
Lecture2.5
-
Lecture2.6
-
Lecture2.7
-
Lecture2.8
-
Lecture2.9
-
Lecture2.10
-
-
Docker Basics 5
-
Lecture3.1
-
Lecture3.2
-
Lecture3.3
-
Lecture3.4
-
Lecture3.5
-
-
Diving Into Real Life Scenarios 2
-
Lecture4.1
-
Lecture4.2
-
-
Tales To Astonish 2
-
Lecture5.1
-
Lecture5.2
-
-
Moral Of The Stories 5
-
Lecture6.1
-
Lecture6.2
-
Lecture6.3
-
Lecture6.4
-
Lecture6.5
-
-
Chain To The Rescue ! 1
-
Lecture7.1
-
-
So many roads to choose from ! 4
-
Lecture8.1
-
Lecture8.2
-
Lecture8.3
-
Lecture8.4
-
-
The Problem Statement 7
-
Lecture9.1
-
Lecture9.2
-
Lecture9.3
-
Lecture9.4
-
Lecture9.5
-
Lecture9.6
-
Lecture9.7
-
-
Why Hyperledger Fabric? 7
-
Lecture10.1
-
Lecture10.2
-
Lecture10.3
-
Lecture10.4
-
Lecture10.5
-
Lecture10.6
-
Lecture10.7
-
-
Defining a Fabric Network 10
-
Lecture11.1
-
Lecture11.2
-
Lecture11.3
-
Lecture11.4
-
Lecture11.5
-
Lecture11.6
-
Lecture11.7
-
Lecture11.8
-
Lecture11.9
-
Lecture11.10
-
-
Peers, Orderer and Client 10
-
Lecture12.1
-
Lecture12.2
-
Lecture12.3
-
Lecture12.4
-
Lecture12.5
-
Lecture12.6
-
Lecture12.7
-
Lecture12.8
-
Lecture12.9
-
Lecture12.10
-
-
Let's explore further on identities 7
-
Lecture13.1
-
Lecture13.2
-
Lecture13.3
-
Lecture13.4
-
Lecture13.5
-
Lecture13.6
-
Lecture13.7
-
-
Understanding The Fabric Transaction Flow 9
-
Lecture14.1
-
Lecture14.2
-
Lecture14.3
-
Lecture14.4
-
Lecture14.5
-
Lecture14.6
-
Lecture14.7
-
Lecture14.8
-
Lecture14.9
-
-
Bootstrapping the Network 8
-
Lecture15.1
-
Lecture15.2
-
Lecture15.3
-
Lecture15.4
-
Lecture15.5
-
Lecture15.6
-
Lecture15.7
-
Lecture15.8
-
-
Hands-On Exercise! 3
-
Lecture16.1
-
Lecture16.2
-
Lecture16.3
-
-
Assessment-1 1
-
Quiz17.115 questions
-
-
Let's Write A Chaincode 2
-
Lecture18.1
-
Lecture18.2
-
-
The Birth of a Transaction 4
-
Lecture19.1
-
Lecture19.2
-
Lecture19.3
-
Lecture19.4
-
-
Introducing Chaincodes ! 6
-
Lecture20.1
-
Lecture20.2
-
Lecture20.3
-
Lecture20.4
-
Lecture20.5
-
Lecture20.6
-
-
Diving Deep Into Chaincodes 6
-
Lecture21.1
-
Lecture21.2
-
Lecture21.3
-
Lecture21.4
-
Lecture21.5
-
Lecture21.6
-
-
The subtle Art of Writing A Chaincode ! 7
-
Lecture22.1
-
Lecture22.2
-
Lecture22.3
-
Lecture22.4
-
Lecture22.5
-
Lecture22.6
-
Lecture22.7
-
-
Hands-On Excercise 3
-
Lecture23.1
-
Lecture23.2
-
Lecture23.3
-
-
Private Data Collections (PDC) 2
-
Lecture24.1
-
Lecture24.2
-
-
Rich Queries 2
-
Lecture25.1
-
Lecture25.2
-
-
Finishing the Chaincode 1
-
Lecture26.1
-
-
What's new in Hyperledger Fabric 2.x 1
-
Lecture27.1
-
-
Assessment-2 1
-
Quiz28.115 questions
-
-
Writing a Client 3
-
Lecture29.1
-
Lecture29.2
-
Lecture29.3
-
-
Building A Bridge 3
-
Lecture30.1
-
Lecture30.2
-
Lecture30.3
-
-
Understanding the Client 4
-
Lecture31.1
-
Lecture31.2
-
Lecture31.3
-
Lecture31.4
-
-
On with the code 5
-
Lecture32.1
-
Lecture32.2
-
Lecture32.3
-
Lecture32.4
-
Lecture32.5
-
-
Assessment - 3 1
-
Quiz33.115 questions
-
-
Implementing Events in Hyperledger Fabric 5
-
Lecture34.1
-
Lecture34.2
-
Lecture34.3
-
Lecture34.4
-
Lecture34.5
-
-
UI Integration 4
-
Lecture35.1
-
Lecture35.2
-
Lecture35.3
-
Lecture35.4
-
-
Things we need to know 6
-
Lecture36.1
-
Lecture36.2
-
Lecture36.3
-
Lecture36.4
-
Lecture36.5
-
Lecture36.6
-
-
Connecting The Dots 2
-
Lecture37.1
-
Lecture37.2
-
-
" Handling " The UI 7
-
Lecture38.1
-
Lecture38.2
-
Lecture38.3
-
Lecture38.4
-
Lecture38.5
-
Lecture38.6
-
Lecture38.7
-
-
Assessment-4 1
-
Quiz39.115 questions
-
-
RAFT 5
-
Lecture40.1
-
Lecture40.2
-
Lecture40.3
-
Lecture40.4
-
Lecture40.5
-
-
Final Assessment 1
-
Quiz41.120 questions
-
-
Thank You 2
-
Lecture42.1
-
Lecture42.2
-
Let’s Have An Accord !
A school classroom is very similar to that of a blockchain network. In a classroom, you have a bunch of students with their notebooks, taking down information as given by the class teacher. Here, the teacher is responsible for making sure that all the students in her classroom take down the same notes. The teacher examines the notebooks and makes sure that they are correct and up to date.
Now, if you replace all the students with nodes (systems) and instead of a physical notebook, you provide a digital ledger, then it starts looking like a blockchain network. But there are some differences between a classroom and a blockchain network. The obvious being the geographic distance between the participants in both these scenarios. The next difference is the presence of a single or centralized entity responsible for providing information. In a blockchain network, you can’t have someone like a teacher or any other centralized entity controlling the generation of information because it goes against the concept of being decentralized. So how do you synchronize the data in a blockchain network?
Well, the thing is, any participant in the blockchain network can create new blocks that carry the information, but this block will only be added to the blockchain once it receives the consent or approval of the majority of nodes (participants) in the network. This process of agreeing upon a single value of data (block, in the case of blockchain) is called the consensus mechanism. Blockchain networks use different types of consensus algorithms to reach an agreement among its participants. A new block will be added only after achieving the consensus. The consented block is shared with the rest of the network and everyone receives and adds the block to their copy of the blockchain.
There are various ways by which the algorithms achieve consensus. Some algorithms use a lottery-based mechanism where the new block is created by a participant who is randomly selected by the algorithm. Others make the participants “compete” with one another and the winner gets to create the new block. Other algorithms use simpler mechanisms, like voting, to achieve consensus.
The process of consensus ensures data synchronization among the participants in the blockchain network.
But, what if there are malicious participants in the network? What if multiple participating nodes experience system failures? How will we reach consensus in such scenarios?