-
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
-
Chaining the blocks !
In the last section, we talked about hash values, now let’s look at how we can create a chain out of these hash values.
Imagine a block in a blockchain. The first part of the “chaining” process involves the generation of the hash value for that particular block. To do this, we take all the available data in the block (from the block header as well as the body) and pass it through a hash function. This provides the hash value of the current block. This is the value that we store in the current hash field in the block header. Next, the current hash of the block is passed on to the next block, where it is stored as the previous hash (in the previous hash field in its header). This means that along with its hash value, any given block in a blockchain will contain the hash value of its previous block. Every block repeats the process and passes its current hash to the next block. This process “links or chains” the blocks in a blockchain to its previous blocks. The ‘previous hash value field of a genesis block (block-0) is either empty or filled with zeros as there is no previous block for a Genesis block.
You might ask what benefit do we acquire via chaining? Well, since the blocks are cryptographically linked using hash values, any change in the ‘data’ stored in a block would result in a change in the hash value of the block, and this will invalidate the current hash of this particular block and the previous hash of the subsequent block. This will end up “breaking” the whole blockchain. So, the cryptographic links make sure that the data, once entered into the blockchain, remains tamper-resistant. This makes blockchain a decentralized, distributed, digital, and immutable ledger technology.