SM2消息格式新国标正式实施:国密应用互通有了统一依据
11月1日,GB/T 35275-2026《网络安全技术 SM2密码算法加密签名消息格式》正式实施,全部代替2017年的旧版标准。目前看来,SM2算法本身一行没改,改的是算法运算结果怎么"打包"的规则。打个比方,算法是印章,格式是信封,这次换的不是印章,是信封的制作规范。
一、这份新的标准管的是哪一层?
国密体系是一套分工清晰的组合:SM2算法本体定义在GB/T 32918,使用规范在GB/T 35276,数字证书格式在GB/T 20518,而GB/T 35275只管其中一层:一份SM2签名、一次SM2加密的输出结果,如何封装、如何标识、接收方如何解析。
这一层过去恰恰是国密改造里最缺标准的地带。项目联调中最常见的尴尬是算法合规及密钥合规,比如A厂商生成的签名报文,B厂商的密码机验不过。
排查下来,发生这种问题的根源多半不在算法运算,而在消息封装格式的细节差异,像签名值的编码写法、用户标识的约定、摘要算法有没有在报文里显式声明。过去这些属于"实现细节",靠联调硬磨,但现在有了统一标准,实现偏差本身就成了有据可查的问题。

二、新标准改了什么地方:总计八处变化,三处动代码
对比2017版,新版共有八处主要技术变化,其中大部分是文档与定义层面的优化,真正需要改造代码的集中在三处。

一是数据类型从六类扩展到八类,新增了摘要数据类型(DigestedData)与鉴别数字信封类型(AuthEnvelopedData)。这两个新增不是凑数,而是补上了过去只能靠厂商自定义的空白:前者用于"只要防篡改、不要签名身份"的场景,后者在传统数字信封之上叠加完整性鉴别,密文一旦被改动即解密失败,一次同时提供机密性与完整性。过去没有独立类型,厂商各自约定封装方式,两套系统各自跑得通,一对接就露馅。
二是版本号取值统一调整为2,新旧格式的消息由此可以被区分、被各自解析,过渡期里不至于出现"新的读不了、旧的认不出"。
三是签名者信息结构改用SignerIdentifier,签名计算过程也有了详细说明,验签方可以按同一套步骤复算。
其余变化包括删除冗余缩略语与旧基本类型、调整对象标识符(OID)、更新引用标准等。SM2算法、SM3杂凑算法、数字证书格式均未改动。
三、三件事需要清楚
第一,与SSL证书无关。本次修订管的是应用层SM2签名加密报文的封装格式,不属于传输层握手协议,不存在"需要更换 SSL 证书"的要求。网站证书用户无需因此做任何变更。
第二,推荐性国标,不是强制换代。历史电子签章文件、归档报文继续沿用原格式完成验证即可。落地要求是"新写旧读":产品既能生成新格式,又能兼容解析 2017 版报文,不能直接舍弃历史格式。
第三,它是一套组合拳的一部分。12月1日,GB/T 33560-2026《网络安全技术 密码应用标识》也将实施,规定算法标识与商用密码 OID 的定义。两个标准一前一后落地,加上同日实施的 SM9 消息格式标准,国密的"算法、格式、标识"三件套正在补齐,共同指向密评与监管核查中的一个核心要求:用了什么、怎么用的,要能拿出证据。
四、建议企业的自查清单
对使用国密签章、证书系统的企业,落地动作可以收敛为四步,无需替换底层算法库。
先做摸底,把现有的SM2调用点和历史报文存量理清楚,看看在用的消息类型有哪些。然后对齐,按新版标准核对签名与信封的编码规则、版本号取值。接着是兼容验证,完成新旧格式的双向联调,覆盖签发、传输、验签、归档全链路,特别要留意异常报文的处理,两端应当给出相同判定。
最后是举证留存,把消息结构样例、跨厂商联调记录、密钥与证书凭据台账、算法标识对照表归档备查,这些既是项目验收的材料,也是密评和监督检查时的证据。

几处最容易出问题的地方也提前点名,比如跨厂商验签的编码一致性、数字信封的密钥封装规范,还有密钥与证书凭据是否统一托管。联调时只测"能不能通"是不够的,报文被截断、字段被篡改、版本号超出预期这类异常输入,收发双方应给出相同判定。
▼
国密改造走到今天,大体经历了三段:先是换算法,再是过测评,如今进入互认互通的阶段。格式新国标补上的,正是最后这一段里最缺标准的一环。
对天威诚信来说,这份标准与我们日常服务的国密改造、电子签章与密评场景直接相关。我们会持续跟踪标准落地的实践反馈,并在相关的证书应用与服务方案中完成适配。
