首页/安全/加密与证书速查/国密算法体系与标准对照
加密算法基础95 条

国密算法体系与标准对照

国密算法家族包含公开算法(SM2/SM3/SM4/SM9/ZUC)与硬件算法(SM1),在金融、政务与电信领域有明确的配套标准与产品认证要求。

加密与证书速查安全更新于 2026-10-13

国密算法体系是什么

国密算法指中国商用密码标准中的算法集合,包含公开算法(SM2 公钥、SM3 杂凑、SM4 分组、SM9 标识密码、ZUC 序列密码)与以硬件形态提供的 SM1。它们与对应的国际算法在角色上相似但参数与标准不同:金融、政务、电信领域的合规改造通常同时要求算法替换、协议升级与产品认证。

基本信息

SM2公钥算法(签名、加密、密钥交换),GB/T 32918 系列
SM3密码杂凑算法,GB/T 32905-2016
SM4分组密码,GB/T 32907-2016
SM9标识密码,GM/T 0044
ZUC序列密码,GM/T 0001-2012
SM1对称算法,未公开,以硬件形态提供
协议层TLCP(GB/T 38636)承载国密套件

典型使用场景

  • 政务与金融系统改造:按监管要求完成国密算法替换
  • 国密 HTTPS:站点与网关使用 SM2 证书配合 TLCP
  • 设备与终端认证:安全芯片内置国密算法完成双向认证
  • 移动通信空口加密:ZUC 用于特定通信场景
  • 标识密码应用:SM9 用于基于身份标识的认证与加密

典型套件与标识

典型套件与标识
TLCP 套件示例:ECC_SM4_GCM_SM3、ECC_SM4_CBC_SM3、ECDHE_SM4_GCM_SM3
证书签名算法:SM2-with-SM3
摘要与消息认证:SM3、HMAC-SM3
# 对照关系:SM2 对应 RSA/ECDSA 角色,SM3 对应 SHA-2,SM4 对应 AES

确认工具链能力

确认工具链能力
# 查看 OpenSSL 支持的国密算法
openssl list -cipher-algorithms | grep -i sm4
openssl list -digest-algorithms | grep -i sm3
openssl ecparam -list_curves | grep -i sm2
# 查看版本,评估国密相关能力是否满足要求
openssl version -a | head -2

算法对照

算法类型主要标准典型用途
SM2公钥(签名、加密、交换)GB/T 32918 系列TLCP、国密证书
SM3密码杂凑GB/T 32905-2016签名摘要、HMAC、密钥派生
SM4分组密码GB/T 32907-2016传输与存储加密
SM9标识密码GM/T 0044标识认证、邮件加密
ZUC序列密码GM/T 0001-2012移动通信空口加密
SM1对称(未公开)硬件形态提供金融 IC 卡与安全模块
落地国密项目时,除算法本身还要评估三件事:协议版本(TLCP 与相关行业标准)、密码产品认证情况、以及设备与浏览器的兼容矩阵。多数互通问题出在这些外围环节,而不是算法实现本身。
混用不同年份或不同来源的标准版本(如既有草案又有正式版)会造成互通故障。项目启动阶段就应把采用的标准号与版本写进对接文档,并要求各方提供自检的测试向量结果。

易错点

  • 把国密改造理解为替换算法:证书体系、协议栈、硬件模块与运维流程都要同步调整
  • 不同厂商对标准版本理解不一致:套件与算法标识的写法差异会导致握手失败
  • 忽略密码产品认证要求:等保与密评可能要求使用经认证的密码模块
  • 混淆算法角色:SM2 做公钥运算、SM3 做摘要、SM4 做对称加密,混用会导致实现错误
  • 缺少互通测试:不同厂商设备之间未做交叉验证,上线后才发现兼容性问题

数据来源与参考

  • GB/T 32918 系列
  • GB/T 32905-2016
  • GB/T 32907-2016
  • GM/T 0001-2012
  • GM/T 0044
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌