MSP Identity Validity Rules——MSP身份驗證規則html
正如Hyperledger Fabric Membership Service Providers (MSP)——成員服務中描述所提到的,MSPs能夠配置一組根證書權限(rCAs——root certificate authorities),而且能夠選擇一組中間證書受權機構(iCAs——intermediate certificate authorities)。一個MSP的iCA證書必須由MSP其中的一個rCAs或iCAs的簽名。MSP的配置可能包含證書撤銷列表或CRL,若是任何一個MSP的rCA(root certificate authorities——根管理證書)都被列入CRL中,那麼MSP配置中的CRL中不能包含任何iCA,不然MSP的設置將會失效。ide
每一個rCA都是一個樹形根證書。也就是說,每一個rCA多是一個或多個iCAs證書的簽名者,而這些iCAs將是其餘iCAs或用戶證書的簽名者。這裏有幾個例子:spa
rCA1 rCA2 rCA3
/ \ | |
iCA1 iCA2 iCA3 id
/ \ | |
iCA11 iCA12 id id
|
id
默認的MPS實現接受由適當的權威機構簽署的有效身份的X.509證書。在上面的圖中,只有iCA十一、iCA十二、iCA二、iCA3和rCA3的證書纔會被認爲是有效的。由內部節點簽署的證書將被拒絕(縣官不如現管)。code
注意,若是在MSP配置中指定了一個或多個組織單元,那麼證書的有效性也會受到相似的影響。一個組織單元在MSP配置中指定爲成對的兩個值,好比(parent-cert,ou-string)分別表示組織機構認證受權的組織單元證書以及實際的組織單元ID。若是證書C是由iCA或rCA爲了MSP配置中指定了一個組織單元簽署的,那麼C就被認爲是有效的,若是在其餘需求中,做爲它的OU字段,其中一部分將包括ou-string。htm