Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the importance of orderer genesis block in Hyperledger Fabric?

In the build your first network documentation.
TwoOrgsOrdererGenesis: generates the genesis block for a Solo ordering service.
TwoOrgsChannel: generates the genesis block for our channel, mychannel.

The mychannel.tx is the genesis block in the channel and any peer who want to join the channel require this.

In the complete tutorial once the orderer genesis block is created it never used. And also Is there any other blockchain also present other than the channel ledger?

Does this orderer genesis block require for system channel?

like image 259
Shubham Chadokar Avatar asked Aug 19 '19 13:08

Shubham Chadokar


Video Answer


1 Answers

In the build your first network documentation.

Let me start from pointing to official documentation here

TwoOrgsOrdererGenesis: generates the genesis block for a Solo ordering service. TwoOrgsChannel: generates the genesis block for our channel, mychannel.

Here is the source of the confusion, in fact TwoOrgsChannel profile generates configuration transaction which is submitted to the system channel and it includes configuration required for formation of the new channel. Such as channel policies and members of the channel consortium which by the way have to be a subset of the consortium defined within genesis block of the system channel.

The mychannel.tx is the genesis block in the channel and any peer who want to join the channel require this.

This is config transaction to be submitted to the ordering service such that it will create a new channel and return genesis block for new channel so peers could use it to join it.

In the complete tutorial once the orderer genesis block is created it never used. And also Is there any other blockchain also present other than the channel ledger?

It's always used to bootstrap your ordering service nodes for example after shutdowns or restarts.

Does this orderer genesis block require for system channel?

In fact, system channel bootstrapped using this genesis block. Now to complete on @Narendranath Reddy answer, genesis block contains consortium information which he called a network definition, basically it contains all certificates of organizations root CAs. Therefore allowing to initialize channels MSPs and use those root CAs certificates to validate ACLs, endorsements and clients signatures.

like image 82
Artem Barger Avatar answered Oct 03 '22 18:10

Artem Barger