国密算法在电子签章中的应用:SM2/SM3/SM4


title: 国密算法在电子签章中的应用:SM2/SM3/SM4
cover_category: esignature

某央企信息部的李主任最近在选型电子签章系统,供应商提供的方案用的是RSA和SHA-256。李主任皱了皱眉:”我们集团有要求,必须用国密算法,你们支持吗?”

这不是个例。随着《密码法》和等保2.0的推行,国密算法正从”可选”走向”必选”,尤其是在党政机关、国企和关键信息基础设施领域。

国密算法家族:三剑客

国家密码管理局发布的商用密码算法体系中,与电子签章关系最密切的是三种算法:

SM2(椭圆曲线公钥密码算法):对标RSA,用于数字签名和密钥交换。SM2使用256位椭圆曲线,在同等安全强度下,运算速度比RSA更快,密钥长度更短。简单说,SM2用更小的”锁”实现同样的安全等级。

SM3(密码杂凑算法):对标SHA-256,用于生成数据的”数字指纹”。SM3输出256位哈希值,算法的设计充分考虑了安全性冗余,在碰撞抵抗性上表现优异。

SM4(分组密码算法):对标AES,用于数据加密保护。在电子签章场景中,SM4常用于合同文档的传输加密和存储加密。

国密 vs 国际算法:谁更安全?

很多企业会问:国密算法真的安全吗?答案是肯定的。

从技术参数看,SM2(256位)的安全强度与RSA-3072相当,比RSA-2048更高。SM3的输出长度(256位)与SHA-256一致,设计上有独立的安全冗余考量。经过国内密码专家的长期分析和公开竞赛验证,国密算法的安全性已被广泛认可。

真正需要关注的不是算法本身的安全性,而是实现的安全性。同样的算法,不同的实现方式可能存在侧信道攻击等风险。这也是为什么国家要求使用经检测认证的密码产品,而不是自行实现。

为什么国企必须用国密?

这不是技术问题,而是合规问题。几个关键法规要求如下:

《密码法》第二十七条规定:关键信息基础设施运营者应当使用商用密码进行保护,并开展商用密码应用安全性评估(即密评)。
等保2.0明确要求:第三级及以上信息系统应使用国密算法。
密评标准将”使用国密算法”作为评分项,未使用国密算法会导致测评不通过。

对于国企而言,信息化系统的商用密码应用安全性评估是硬性指标。电子签章作为合同签署的核心环节,自然必须满足国密要求。

国密电子签章的实际落地

目前主流电子签章平台都已支持国密算法,在用户端几乎感受不到差异。技术上需要做的工作包括:

1. 证书层面:对接国密CA机构,签发SM2算法的数字证书。国内如CFCA、北京CA、上海CA等都支持国密证书。
2. 签名层面:使用SM2WithSM3作为签名算法组合,替代原有的RSAWithSHA-256。
3. 传输存储:SM4加密敏感数据,配合SM2进行密钥协商。

值得注意的是,国密和RSA并不是互斥的。很多平台同时支持两种算法体系,根据客户需求灵活切换。在与外部伙伴交互时,双算法支持可以帮助企业更好地打通上下游。

选型建议

如果你是国企或政府单位的信息化负责人,选型电子签章系统时应该关注:

– 平台是否持有国密型号证书(即国密局颁发的产品认证)
– 是否支持SM2/SM3/SM4全算法体系
– 是否能对接现有的国密CA
– 是否通过商用密码应用安全性评估

国密不是”麻烦”,而是中国数字经济的基础安全设施。理解了这一点,选型时就少了很多纠结。