Fabric CA提供以下功能:
? 1梁肿、身份注冊(cè)蛤迎,或者將連接到LDAP作為用戶注冊(cè)确虱;
? 2、頒發(fā)登錄證書(ECerts)替裆;
?3校辩、頒發(fā)交易證書(TCerts),保證鏈上交易的匿名性與不可連接性扎唾;
?4召川、證書續(xù)期與撤銷
看一個(gè) fabric-ca服務(wù)器在Hyperledger Fabric中架構(gòu)圖如下:
? ? ? ?有兩種與Hyperledger Fabric CA服務(wù)器交互的方式:通過Hyperledger Fabric CA客戶端或通過一個(gè)Fabric SDK。 與Hyperledger Fabric CA服務(wù)器的所有通信都是通過REST API進(jìn)行的胸遇;
fabric ca中國(guó)密改造需要修改的程序目錄如下:
一荧呐、cmd目錄
? ? ? 1、cmd目錄主要提供了fabric-ca-client,fabric-ca-server兩個(gè)服務(wù)
? ? ? 2纸镊、修改規(guī)則與fabric一致
? ? ? 3倍阐、需要修改的程序文件如下:
? ? ? ? ? ? fabric-ca/cmd/fabric-ca-client/command/getcainfo.go
? ? ? ? ? ? fabric-ca/cmd/fabric-ca-client/command/config.go
? ? ? ? ? ? fabric-ca/cmd/fabric-ca-server/config.go
二、lib目錄
? ? ?1逗威、lib目錄是fabric-ca的核心代碼目錄
? ? ?2峰搪、需要修改的程序文件如下:
? ? ? ? ? fabric-ca/lib/ca.go
? ? ? ? ? fabric-ca/lib/gmca.go
? ? ? ? ? fabric-ca/lib/server/idemix/mocks/lib.go
? ? ? ? ? fabric-ca/lib/server.go
? ? ? ? ? fabric-ca/lib/server/idemix/mocks/RevocationAuthority.go
? ? ? ? ? fabric-ca/lib/server/idemix/revocationauthority.go
? ? ? ? ? fabric-ca/lib/server/idemix/revocationkey.go
? ? ? ? ? fabric-ca/lib/server/idemix/idemixlib.go
? ? ? ? ? fabric-ca/lib/serverenroll.go
? ? ? ? ? fabric-ca/lib/server/idemix/issuer.go
? ? ? ? ? fabric-ca/lib/util.go
三、vendor目錄
? ? ?1凯旭、vendor目錄中包含部分fabric中代碼的使用概耻,只需要按照fabric中的修改規(guī)則修改或者直接將相關(guān)代碼移植即可;
到目前為止fabric-ca項(xiàng)目國(guó)密改造已經(jīng)完成。