会员服务提供商的Hyperledger Fabric文档 - 问题

Mic*_*ael 7 hyperledger-fabric hyperledger-fabric-ca

我阅读了Hyperledger Fabric会员服务提供商(MSP)上的文档,但并非所有内容都非常清楚.

关于MSP文档部分的链接是这样的:https: //hyperledger-fabric.readthedocs.io/en/release-1.2/membership/membership.html

  1. 从文档引用:

这是成员服务提供商(MSP)发挥作用的地方 - 它通过列出其成员的身份或通过识别来识别信任哪些根CA和中间CA以定义信任域(例如组织)的成员.哪些CA被授权为其成员发布有效身份,或者 - 通常情况下 - 通过两者的组合.

我对这一段的理解是这样的:OrgX的MSP要么有一个OrgX成员列表(因此可以简单地根据列表检查网络上的参与者),或者MSP定义允许哪个证书颁发机构发布身份OrgX的成员.这种理解是否正确?

  1. 如果OrgX的MSP定义了允许向OrgX成员发放身份的证书颁发机构,那么这如何保护网络免受不必要的参与者的侵害?假设OrgX的MSP使用"Symantec"作为其CA. 因此,拥有赛门铁克证书的每个人都被视为OrgX的成员,并且可以参与该网络.但是,如果我(谁不是OrgX的成员)获得"赛门铁克"的证书怎么办?我现在自动被认为是OrgX的余烬,可以加入网络吗?

  2. 有渠道MSP和本地MSP.根据文档,通道MSP和本地MSP都定义哪些标识属于某个组织(例如,OrgX).但是,如果信道MSP包含与本地MSP相同的信息(即基本上是身份列表),那么将信道MSP实例化到节点的重点是什么?

在此输入图像描述

yac*_*ovm 1

我对这一段的理解是这样的:OrgX 的 MSP 要么有 OrgX 成员的列表(因此可以简单地根据列表检查网络上的参与者),要么 MSP 定义允许哪个证书颁发机构为 OrgX 颁发身份OrgX 的成员。这种理解正确吗?

正确的。但是......实际上,在 MSP 中显式配置的唯一证书是管理员证书。其余的未配置,并通过标准 x509 PKI 验证(查找某些中间或根 CA 的验证路径)进行验证,而管理证书则通过逐字节比较来识别。

如果 OrgX 的 MSP 定义了允许向 OrgX 成员颁发身份的证书颁发机构,那么这如何保护网络免受不需要的参与者的进入?

不需要的参与者不会拥有包含 OrgX 使用的相应证书的私钥。

假设 OrgX 的 MSP 使用“Symantec”作为其 CA。因此,凡是拥有赛门铁克证书的人都被视为OrgX的成员,可以参与该网络。但是,如果我(不是 OrgX 的成员)从“Symantec”获得证书怎么办?我现在是否自动被视为 OrgX 的 ember 并可以加入该网络?

如果您获得与 Symantec CA 颁发的证书的公钥相对应的私钥,并且该 CA 具有在结构通道配置中配置为根 CA 或中间 CA 的证书,那么 - 您可以作为OrgX 的成员。

有通道 MSP 和本地 MSP。根据文档,通道 MSP 和本地 MSP 都定义了哪些身份属于某个组织(例如 OrgX)。但是,如果通道 MSP 包含与本地 MSP 相同的信息(即基本上是身份列表),那么实例化到节点的通道有什么意义呢?

通道 MSP 不包含与本地 MSP 相同的信息。本地 MSP,仅包含有关本地 MSP 节点(peer、orderer)所属组织的信息。但是,通道 MSP 可以包含有关通道成员的任何组织的信息。实际上,一个通道有多个 MSP - 每个组织 1 个!

考虑一个例子 - 您在频道 Foo 中有组织 A、BC。因此,通道配置将有 3 个 MSP - 每个 MSP 用于验证属于相应组织的身份。