FISCO BCOS国密改造手册¶
设计目标¶
为了充分支持国产密码学算法,金链盟基于国产密码学标准,实现了国密加解密、签名、验签、哈希算法、国密SSL通信协议,并将其集成到FISCO BCOS平台中,实现了对国家密码局认定的商用密码的完全支持。
系统框架¶
系统整体框架如下图所示:

下表以签名、验签、哈希算法等为出发点,对比了国密版FISCO-BCOS和非国密版FISCO-BCOS:
(注:国密算法SM2, SM3, SM4均基于国产密码学标准开发)
| 算法类型 | 国密版FISCO BCOS | 非国密版FISCO BCOS |
|---|---|---|
| 签名算法 | SM2 (公私钥长度:512 bits, 256 bits) | ECDSA (公私钥长度: 512 bits, 256 bits) |
| 哈希算法 | SM3 (哈希串长度: 256 bits) | SHA3 (哈希串长度: 256 bits) |
| 对称加解密算法 | SM4 (对称密钥长度: 128 bits) | AES (加密秘钥长度: 256 bits) |
国密SSL 1.1 握手建立流程。¶
国密版FISCO-BCOS节点之间的认证选用国密SSL 1.1的ECDHE_SM4_SM3密码套件进行SSL链接的建立,整体流程如下图所示:

特性说明¶
为了彻底支持国密,国密版FISCO BCOS将交易签名验签、p2p网络连接、节点连接、数据落盘加密等底层模块的密码学算法均替换为国密算法,国密版FISCO-BCOS主要特性如下:
| 特性 | 特性说明 |
|---|---|
| P2P连接使用国密SSL |
|
| 节点共识使用国密密钥 对进行签名验签操作 | 国密版FISCO-BCOS共识签名和验签使用了国密签名算法SM2 |
| web3sdk, 节点端验证交易 | 国密版FISCO-BCOS交易签名和验签使用了国密签名算法SM2 |
| 消息摘要算法 | 国密版FISCO-BCOS采用国密消息摘要算法SM3 |
| 数据落盘加密使用国密算法进行加密 | 为了保证数据机密性,FISCO BCOS开发了落盘加密功能 国密版落盘加密使用了国密SM4对称加密算法 |