新闻中心

NEWS

首页 - 新闻中心 -

前沿技术|GM/T 0009《SM2密码算法使用规范》新老标准对比分析

发布时间: 2024-07-09 18:03

摘要
本文档对比GM/T 0009SM2密码算法使用规范》的新版本(2023版)和老版本(2012版)的差异,并给出支持新版本标准的升级建议以供参考。

 

背景

202312月,国家密码管理局在第45号公告[1]中发布信息:自202461日起实施GM/T 00092023SM2密码算法使用规范》[2](以下简称新版标准)等25项密码行业标准,被代替的老版本GM/T 00092012SM2密码算法使用规范》[3](以下简称老版标准)自202461日起予以废止。

GM/T 0009SM2密码算法使用规范》介绍SM2密码算法使用,其主要内容包括:

§ 定义SM2使用方法,例如计算Z值,计算签名验签的杂凑值e等;

§ 定义相关数据格式,例如公私钥格式、密文格式、签名数据格式等。

本标准是一个处于底层的密码基础类标准,且影响范围较大——涉及支持SM2算法的设备和系统。因此该标准的修订版不可能和之前版本有太大的差异——牵一发而动全身。

本文对比GM/T 0009新版本和老版本的差异,并给出支持新版本标准的建议以供参考。

注:本文仅代表个人观点。如有谬误,敬请批评指正。联系方式见文末。



差异对比

2.1

差异综述

按新版本的前言所述,GM/T 0009新老版本之间主要有如下差异(见下表)。

 

 

新老版本差异总结如下:

§  新版本向下兼容老板本

§  新版本变化小

§  支持SM2算法的设备系统的影响小

各差异点的详细分析可见本章后续内容。

 

2.2

 差异1SM2私钥的描述

差异点1SM2私钥的描述”,其差异如下表所示。表中信息直接摘录新老版本标准的描述内容,见老版本5.2节和新版本5.2节。

 

本差异点主要是文字性修订。其中,关于“私钥长度”补充如下说明:

§ 老版本:在此处专门说明私钥长度为256比特;

§ 新版本:在此处未指明私钥长度,但在条款7.4 b)中明确说明“私钥明文为高字节在前的8位字节串,其长度固定为32字节”,因此私钥仍为256比特。

综上,私钥长度无实质性差异。本差异点影响:极小。

 

2.3

 差异2SM2公钥的描述


差异点2SM2公钥的描述”,其差异如下表所示。表中信息直接摘录新老版本标准的描述内容,见老版本5.2节和新版本5.2节。


 

本差异点主要是文字性修订。此外,如前所述,因为私钥长度无变化仍为256比特,所以公钥的xy坐标长度不变,都是256比特。

本差异点影响:极小。

 

2.4

 差异3SM2公钥的数据格式


差异点3SM2公钥的数据格式”,其差异如下表所示。表中信息直接摘录新老版本标准的描述内容,见老版本7.1节和新版本7.1节。

 

 

本差异点主要是新版本增加对公钥压缩点的支持,这使得公钥可表述为:

——04 || X || Y:老版本描述的非压缩点形式;

——02 || X:新版本新增的压缩点形式,当公钥y分量的最低位为0时;

——03 || X:新版本新增的压缩点形式,当公钥y分量的最低位为1时。

本差异点影响:中。

 

2.5

 差异4—密钥对保护数据格式的描述

差异点4“密钥对保护数据格式的描述”,其差异如下表所示。表中信息直接摘录新老版本标准的描述内容,见老版本7.4节和新版本7.4节。


 

本差异点主要是文字性修订。

如前所述(见2.2节),新版本在此处说明“私钥明文为高字节在前的8位字节串,其长度固定为32字节”,即明确私钥仍为256比特。

本差异点影响:极小。

 

2.6

 差异5—预处理1计算Z值的描述

预处理1是签名验签等涉及的计算Z值的运算。差异点5“预处理1计算Z值的描述”,其差异如下表所示。表中信息直接摘录新老版本标准的描述内容,见老版本8.1节和新版本8.1节。

 

本差异点主要是文字性修订,个别记号做了微调。

       本差异点影响:极小。


升级建议

     根据第二章的分析(见2.1 差异综述)可知,新版本向下兼容老板本,且新版本变化小,对支持SM2算法的设备和系统的影响小。短期之内按老版本执行应该没有明显问题,但仍然建议升级增补公钥的压缩点形式以支持新标准。

 

 

参考文献

[1]国家密码管理局公告(第45号)[EB/OL]. (2023-12-23).

https://www.oscca.gov.cn/sca/xxgk/2023-12/23/content_1061160.shtml

[2]密码行业标准化技术委员会. GM/T 00092023 密码算法使用规范.

[3]密码行业标准化技术委员会. GM/T 00092012 密码算法使用规范.

 

售后在线客服

售前咨询
010-59790009转8055

售后服务
400-109-9696

XML 地图