标准解读

《GM/T 0003.2-2012 SM2椭圆曲线公钥密码算法 第2部分:数字签名算法》是中国国密局发布的一项关于数字签名技术的国家标准,重点在于规范使用椭圆曲线密码学(ECC)进行数字签名的具体方法。此标准是SM2算法系列的一部分,专门针对数字签名过程,确保了电子文档或信息传输中的数据完整性和来源认证。下面是该标准内容的详细介绍:

1. 背景与目的

椭圆曲线密码学因其在相同安全级别下相比RSA等传统公钥密码系统所需密钥长度更短,而被广泛认为是一种高效的加密手段。SM2算法作为中国商用密码体系的重要组成部分,旨在提供一种基于椭圆曲线的公钥基础设施(PKI)解决方案,以满足国家对于信息安全自主可控的需求。

2. 算法基础

  • 椭圆曲线选择:标准中定义了特定的椭圆曲线参数,包括椭圆曲线方程、基点G及阶n,这些参数是算法安全性的基础。

  • 密钥生成:用户通过选择一个随机数k(私钥),计算其与基点G的乘积得到公钥P=kG。这一过程保证了从公钥难以推算出私钥。

3. 数字签名过程

数字签名算法主要涉及两个步骤:签名生成和签名验证。

签名生成:

  1. 消息哈希:首先,将待签名的消息通过安全哈希函数(如SM3)转换为固定长度的消息摘要。
  2. 随机数k选取:签名者生成一个一次性的随机数k,并确保其在[1, n-1]区间内,其中n是椭圆曲线的阶。
  3. 计算辅助点:利用k计算得到一个临时点R = kG。
  4. 签名计算:结合消息摘要、临时点的x坐标及私钥,通过特定的数学变换计算得到两个签名分量s1和s2。
  5. 输出签名:签名由(s1, s2)组成,其中可能还会包含用于恢复原始消息摘要的信息。

签名验证:

  1. 重新计算R:接收方利用s1和公钥P计算得到一个点R'。
  2. 检查一致性:验证R'是否与签名中提供的R信息一致,以及通过特定方程检验签名分量s1和s2是否与消息摘要、公钥及R'匹配。
  3. 验证结果:如果所有检查均通过,则签名被认为是有效的,否则视为无效。

4. 安全性考虑

  • 随机数k的安全性:标准强调了在每次签名时使用不同且不可预测的随机数k的重要性,以防止攻击者通过多次签名分析私钥信息。
  • 抗量子计算特性:虽然当前椭圆曲线密码尚未被证明能完全抵抗量子计算机的攻击,但相较于RSA等算法,ECC被认为在后量子时代具有相对更好的安全性潜力。

实施细节

标准还提供了详细的算法实现步骤、参数规格以及安全性要求,指导开发者如何正确实施SM2数字签名算法,确保其实现既高效又安全。


如需获取更多详尽信息,请直接参考下方经官方授权发布的权威标准文档。

....

查看全部

  • 现行
  • 正在执行有效
  • 2012-03-21 颁布
  • 2012-03-21 实施
©正版授权
GM/T 0003.2-2012SM2椭圆曲线公钥密码算法第2部分:数字签名算法_第1页
GM/T 0003.2-2012SM2椭圆曲线公钥密码算法第2部分:数字签名算法_第2页
GM/T 0003.2-2012SM2椭圆曲线公钥密码算法第2部分:数字签名算法_第3页
GM/T 0003.2-2012SM2椭圆曲线公钥密码算法第2部分:数字签名算法_第4页
GM/T 0003.2-2012SM2椭圆曲线公钥密码算法第2部分:数字签名算法_第5页
免费预览已结束,剩余11页可下载查看

下载本文档

GM/T 0003.2-2012SM2椭圆曲线公钥密码算法第2部分:数字签名算法-免费下载试读页

文档简介

ICS35040

L80.

备案号36827—2012

:

中华人民共和国密码行业标准

GM/T00032—2012

.

SM2椭圆曲线公钥密码算法

第2部分数字签名算法

:

PublickeycryptographicalgorithmSM2basedonellipticcurves—

Part2Diitalsinaturealorithm

:ggg

2012-03-21发布2012-03-21实施

国家密码管理局发布

GM/T00032—2012

.

目次

前言…………………………

引言…………………………

范围………………………

11

规范性引用文件…………………………

21

术语和定义………………

31

符号………………………

41

数字签名算法……………

52

总则…………………

5.12

椭圆曲线系统参数…………………

5.22

用户密钥对…………………………

5.33

辅助函数……………

5.43

概述……………

5.4.13

密码杂凑函数…………………

5.4.23

随机数发生器…………………

5.4.33

用户其他信息………………………

5.53

数字签名的生成算法及流程……………

63

数字签名的生成算法………………

6.13

数字签名生成算法流程……………

6.23

数字签名的验证算法及流程……………

74

数字签名的验证算法………………

7.14

数字签名验证算法流程……………

7.25

附录资料性附录数字签名与验证示例……………

A()6

一般要求………………

A.16

Fp上的椭圆曲线数字签名……………

A.26

Fm上的椭圆曲线数字签名…………

A.327

GM/T00032—2012

.

前言

椭圆曲线公钥密码算法分为个部分

GM/T0003—2012《SM2》5:

第部分总则

———1:;

第部分数字签名算法

———2:;

第部分密钥交换协议

———3:;

第部分公钥加密算法

———4:;

第部分参数定义

———5:。

本部分为的第部分

GM/T00032。

本部分依据给出的规则起草

GB/T1.1—2009。

请注意本文件的某些内容可能涉及专利本文件的发布机构不承担识别这些专利的责任

。。

本部分的附录为资料性附录

A。

本部分由国家密码管理局提出并归口

本部分起草单位北京华大信安科技有限公司中国人民解放军信息工程大学中国科学院数据与

:、、

通信保护研究教育中心

本部分主要起草人陈建华祝跃飞叶顶峰胡磊裴定一彭国华张亚娟张振峰

:、、、、、、、。

GM/T00032—2012

.

引言

和在年各自独立地提出将椭圆曲线应用于公钥密码系统椭圆曲线公

N.KoblitzV.Miller1985。

钥密码所基于的曲线性质如下

:

有限域上椭圆曲线在点加运算下构成有限交换群且其阶与基域规模相近

———,;

类似于有限域乘法群中的乘幂运算椭圆曲线多倍点运算构成一个单向函数

———,。

在多倍点运算中已知多倍点与基点求解倍数的问题称为椭圆曲线离散对数问题对于一般椭圆

,,。

曲线的离散对数问题目前只存在指数级计算复杂度的求解方法与大数分解问题及有限域上离散对

,。

数问题相比椭圆曲线离散对数问题的求解难度要大得多因此在相同安全程度要求下椭圆曲线密

,。,,

码较其他公钥密码所需的密钥规模要小得多

本部分描述了基于椭圆曲线的数字签名算法

GM/T00032—2012

.

SM2椭圆曲线公钥密码算法

第2部分数字签名算法

:

1范围

的本部分规定了椭圆曲线公钥密码算法的数字签名算法包括数字签名生成算

GM/T0003SM2,

法和验证算法并给出了数字签名与验证示例及其相应的流程

,。

本部分适用于商用密码应用中的数字签名和验证可满足多种密码应用中的身份认证和数据完整

,

性真实性的安全需求同时本部分还可为安全产品生产商提供产品和技术的标准定位以及标准化的

、。,

参考提高安全产品的可信性与互操作性

,。

2规范性引用文件

下列文件对于本文件的应用是必不可少的凡是注日期的引用文件仅注日期的版本适用于本文

。,

件凡是不注日期的引用文件其最新版本包括所有的修改单适用于本文件

。,()。

椭圆曲线公钥密码算法第部分总则

GM/T0003.1—20

温馨提示

  • 1. 本站所提供的标准文本仅供个人学习、研究之用,未经授权,严禁复制、发行、汇编、翻译或网络传播等,侵权必究。
  • 2. 本站所提供的标准均为PDF格式电子版文本(可阅读打印),因数字商品的特殊性,一经售出,不提供退换货服务。
  • 3. 标准文档要求电子版与印刷版保持一致,所以下载的文档中可能包含空白页,非文档质量问题。

评论

0/150

提交评论