订单人是否可以在不了解后来成为财团一部分的组织的情况下进行自助式操作?
结构样本通常在configtx.yaml中定义了一些联盟。
orderer general genesis block是否只能通过对orderer组织的了解来创建?这会让以后添加组织吗?
是的,您可以在初始通道配置后添加对等组织。
请参阅tutorial以便稍后添加组织。
是的,Orderer Genesis Block默认配置了一个通常称为testchainid
的系统通道,其中的所有联盟和组织都是此通道配置块的一部分。
系统通道配置的典型结构如下
&ConfigGroup{
Groups: map<string, *ConfigGroup> {
"Application":&ConfigGroup{
Groups:map<String, *ConfigGroup> {
{{org_name}}:&ConfigGroup{
Values:map<string, *ConfigValue>{
"MSP":msp.MSPConfig,
"AnchorPeers":peer.AnchorPeers,
},
},
},
},
"Orderer":&ConfigGroup{
Groups:map<String, *ConfigGroup> {
{{org_name}}:&ConfigGroup{
Values:map<string, *ConfigValue>{
"MSP":msp.MSPConfig,
},
},
},
Values:map<string, *ConfigValue> {
"ConsensusType":orderer.ConsensusType,
"BatchSize":orderer.BatchSize,
"BatchTimeout":orderer.BatchTimeout,
"KafkaBrokers":orderer.KafkaBrokers,
},
},
"Consortiums":&ConfigGroup{
Groups:map<String, *ConfigGroup> {
{{consortium_name}}:&ConfigGroup{
Groups:map<string, *ConfigGroup> {
{{org_name}}:&ConfigGroup{
Values:map<string, *ConfigValue>{
"MSP":msp.MSPConfig,
},
},
},
Values:map<string, *ConfigValue> {
"ChannelCreationPolicy":common.Policy,
}
},
},
},
},
Values: map<string, *ConfigValue> {
"HashingAlgorithm":common.HashingAlgorithm,
"BlockHashingDataStructure":common.BlockDataHashingStructure,
"Consortium":common.Consortium,
"OrdererAddresses":common.OrdererAddresses,
},
}
请注意其中的"Consortiums":&ConfigGroup{...
,这是Config Group,您需要在其中添加要添加到联盟的新组织的MSP。
将组织添加到联盟的过程类似于将org添加到通道的过程,除非您将组织添加到系统通道。
另一个旁注:您不需要联盟中现有组织的签名来添加新组织,Orderer可以单独完成。