fabric国密改造记录及思路-具体工作(3)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fabric国密改造记录及思路-具体工作(3)相关的知识,希望对你有一定的参考价值。

参考技术A 七、msp成员关系服务模块改造

       (1)、fabric的成员身份基于标准的x509证书,秘钥使用的是ECDSA算法,利用PKI体系给每个成员颁发数字证书,通道内只有  相同MSP内的节点才可以通过Gossip协议进行数据分发;

       (2)、国密改造需要把x509证书修改成sm2证书,ECDSA算法修改成sm2算法;

       (3)、修改程序文件列表如下: 

             msp/identities.go

             msp/cert.go

            msp/mspimplsetup.go

            msp/mspimplvalidate.go

           msp/mspimpl.go

八、Orderer节点模块改造

       (1)、orderer节点在fabric架构中处于最核心位置,主要功能是排序打包交易,生成新的区块,然后通过共识算法将数据广播;

       (2)、orderer节点模块的共识模式有,solo单机模式,kafka消息队列模式,etcdraft一致性算法模式,最开始采用的是kafka模式,后边为了减少资源开销切换成etcdraft模式;

       (3)、如果采用kafka模式共识,需要确认kafaka的tls连接是否支持国密算法,再决定是否对kafka的tls做出修改;

       (4)、改程序文件列表如下:

             orderer/common/cluster/comm.go

             orderer/common/cluster/connections.go

             orderer/consensus/kafka/config.go

九、Peer节点模块改造

        (1)、peer可是区块链网络的基石,包含了账本和链码,应用程序或管理员都得通过节点去管理网络的资源;

        (2)、channel对应账本,一个peer节点可以接入到多个channel, 所以一个节点可以有多个账本副本;

        (3)、国密改造中对chaincode和common部分有修改;

        (4)、改程序文件列表如下:

               peer/common/common.go

               peer/common/peerclient.go

               peer/common/ordererclient.go

               peer/chaincode/common.go 

十、vendor目录国密改造

     (1)、修改程序文件列表如下:

                vendor/github.com/Shopify/sarama/config.go

总结:

       到目前为止fabric的国密修改已经完成,修改完毕后通过前面提到的编译方式进行编译,然后进行测试,如有bug再增对性的进行处理,遇到问题和解决问题是比较好的熟悉系统的方式。

以上是关于fabric国密改造记录及思路-具体工作(3)的主要内容,如果未能解决你的问题,请参考以下文章

Service Fabric小白入门记录 本地Service Fabric集群安装及设置

odoo关于菜单及记录规则中“非”计算的改造

FabricV2.2中使用的密码学算法和国密算法对应关系

统一API设计管理平台简介及改造记录

技术分享 | 使用 mPaaS 配置 SM2 国密加密指南

fabric可以跨链吗?