订购者组织的Hyperledger Fabric所有权

时间:2020-05-15 16:09:06

标签: hyperledger-fabric

根据大多数示例,逻辑上最少有3个组织(org1, org2, orderer)。 实际上,只有两个物理组织(org1, org2)。组织之一或达成协议的第三方必须移交订购者组织的职责。

第1季度:谁应该是Hyperledger Network中“ 订购者组织”的所有者

第二季度:如果一个组织成为“ 订购者组织”并拥有超级账本网络中的所有订购者节点(Raft),会存在安全漏洞吗? / p>

1 个答案:

答案 0 :(得分:4)

问题1:谁应该是Hyperledger Network中“订购者组织”的所有者

第一个问题的答案很棘手。只是为了作答,因为Fabric的设计依赖于确定性共识算法,因此,经同级验证的任何块都可以保证是最终的和正确的。账本管理者无法像在比特币或以太坊这样的许多其他分布式和无许可的区块链网络中分叉。 订购者/订购节点执行此交易订购,它与其他订购者节点一起构成订购服务

就像对等方一样,订购节点属于一个组织,并且与区块链网络进行交互的所有内容,包括订购者都从其数字证书及其会员服务提供商(MSP)定义中获取其组织身份。 / p>

每个频道都在Raft协议的单独实例上运行,该协议允许每个实例选举一个不同的领导者。在群集由不同组织控制的订购节点组成的用例中,这种配置还可以使服务进一步分散。尽管所有Raft节点都必须是系统通道的一部分,但不一定必须是所有应用程序通道的一部分。 渠道创建者(和渠道管理员)能够选择可用订购者的子集,并根据需要添加或移除订购节点(只要一次仅添加或移除一个节点)

因此,渠道创建者和渠道管理员可以选择可用订购者的子集或添加/删除单个订购者。同样,多个组织也可以控制具有订购节点的集群。由您自己决定的所有者。

第二季度:如果组织成为“订购者组织”并拥有超级账本网络中的所有订购者节点(Raft),是否会有安全漏洞?

在明确回答之前,请注意以下几点:

  • 订购者看不到交易数据,他们只能订购交易。
  • 与区块链网络进行交互的所有事物,包括对等方,应用程序,管理员和订购者,都从其数字证书和成员资格服务提供商(MSP)定义中获取其组织身份。
  • 尽管组织可以同时充当订购和应用程序角色,但是这是一个极不鼓励的配置。默认情况下,/ Channel / Orderer / BlockValidation策略允许订购组织的任何有效证书对块进行签名。如果组织同时充当订购和应用程序角色,则应更新此策略,以将阻止签名者限制为授权订购的证书子集。
  • 在任何交易(订单)被授权之前,它会被同级验证,并且在确认达成共识交易之后。
  • 在Hyperledger Fabric中,订购服务生成的模块是最终的。一旦将交易写入一个区块,就可以确保其在分类账中的位置。如前所述,Hyperledger Fabric的终结性意味着没有分类账分叉,并且经过验证的交易将永远不会被还原或丢弃。
  • 筏遵循“领导者和跟随者”模型,在该模型中(每个通道)选举一个领导者节点,并由跟随者复制其决策。

因此,如果在实现时出于安全考虑考虑了以上几点,则由于订购者仅执行订购,看不到交易,并且在提交交易之前由Peers进行了验证,因此Peers&Orderers是不同的组织,并且一旦交易按顺序提交,交易就将是最终且顺序和位置不变。

来源:

https://hyperledger-fabric.readthedocs.io/en/release-2.0/orderer/ordering_service.html

https://hyperledger-fabric.readthedocs.io/en/release-2.0/Fabric-FAQ.html

https://medium.com/@kctheservant/add-a-new-organization-on-existing-hyperledger-fabric-network-2c9e303955b2

https://medium.com/swlh/hyperledger-chapter-6-hyperledger-fabric-components-technical-context-767985f605dd