三、common模块改造
(1)、common模块中包含的功能比较多,国密算法修改的部分主要集中在tools,toools中主要有crytogen,idemixgen两个工具模块;
(2)、grpclogging grpc的日志服务模块,需要修得的是grpc,tls部份;
(3)、crypto中的tlsgen包需要修改 x509相关函数为sm2包函数;
(4)、修改的程序文件列表如下:
common/tools/cryptogen/ca/generator.go
common/tools/cryptogen/csp/csp.go
common/tools/cryptogen/msp/generator.go
common/tools/idemixgen/idemixgen.go
common/tools/idemixgen/idemixca/idemixca.go
common/crypto/tlsgen/ca.go
common/crypto/tlsgen/key.go
common/grpclogging/server.go
四、core 核心代码模块改造
(1)、core模块包含了fabric架构中的核心代码,ledger账本存储,chaincode链码,peer节点,scc系统链码
(2)、comm模块的x509修改成sm2,tls修改成国密 tls;
(3)、chaincode合约模块和对外接口提供部分需要x509,tls进行修改;
(4)、peer节点中的grpc客户端tls修改;
(5)、修改程序文件列表如下:
core/comm/connection.go
core/comm/client.go
core/comm/creds.go
core/comm/server.go
core/comm/config.go
core/comm/util.go
core/chaincode/shim/ext/cid/interfaces.go
core/peer/config.go
core/chaincode/shim/ext/cid/cid.go
core/chaincode/shim/ext/attrmgr/attrmgr.go
core/chaincode/accesscontrol/mapper.go
五、gossip 容错和最终一致性的算法模块改造
(1)、gossip算法模块,在fabric架构中主要作用是保证peer节点的数据最终保持一致,是重要的共识算法;
(2)、gossip算法模块国密修改文件列表如下:
gossip/comm/comm_impl.go
gossip/comm/crypto.go
gossip/util/grpc.go
六、idemix模块改造
(1)、idemix模块国密修改文件列表如下:
Idemix/signature.go
下一篇:具体工作(3)
有疑问加站长微信联系(非本文作者)