Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

For the channel join request, the focus will be on the artifacts that needs to be exchanged between orgX and orgA (as proxy for the complete business network). Only the artifacts to be exchanged is defined, the exchange process, for example via email, is outside the scope of the definition.For the channel join request, the focus will be on the artefacts that needs to be exchanged between orgX and orgA (as proxy for the complete business network). Only the artefacts to be exchanged is defined, the exchange process, for example via email, is outside the scope of the definition.

Also not defined is the interaction between any organization and vendor. It is assumed that either the organization has a direct access to the peer node and can complete all steps required, or that the organization has access to a management UI of the vendor where the relevant join steps are encapsulated.

...

The join-request should be based on native Hyperledger Fabric protobuf definition (protos/common.ConfigGroup) since that includes all required information to represent an organization on a Hyperledger Fabric channel. Furthermore, it integrates well with the existing tooling.

...

  1. VendorX/orgX creates common.ConfigGroup (e.g. usingconfigtxgen,configtxlator). The result can be protobuf encoded or a JSON representation.

  2. OrgX sends the serialized protobuf or the JSON representation to orgA.

  3. VendorA/OrgA generates a channel update based on the current channel configuration (e.g. usingconfigtxlator).

  4. OrgA proposes the update to the other channel members, possibly using the management chaincode.

  5. OrgB and orgC, if so defined or required by the business network rules, sign the update and send it to orgA (e.g. usingpeer CLI) possible with the help of a management chaincode. -- The management chaincode should support relevant rules and policies, such as which organizations are required to sign the update, which kinds of conditions should apply, such as signing algorithm, consensus algorithm, etc. It is important to understand that the management chaincode is a technical implementation of the rules and regulations of this very specific business network (business entity) and that it can be conceived that the management chaincode will be different between different business networks.

  6. OrgA applies the Fabric channel update with the given signatures, signed by its own organization.

...

The response should look like this:

Code Block
languagejs
{

...

channelID: mybusinesschannel,

...


	"channelID": "mybusinesschannel",
	"ordererEndpoints": ["orderer0.org1.com:7050

...

"],

...

ordererTlsCertificates: [YmVpc3BpZWw.]


	"ordererTlsCertificates": ["YmVpc3BpZWw..."]
}



Management Chaincode

The purpose of the management chaincode is to standardize the way how channel updates (new channel members, configuration parameters) are shared will all the participants and how the required signatures to authorize a channel update,  are collected.

...