GM/T 0003.4-2012 SM2椭圆曲线公钥密码算法 第4部分:公钥加密算法

GM/T 0003.4-2012 Public key cryptographic algorithm SM2 based on elliptic curves—Part 4:Public key encryption algorithm

行业标准-密码 中文简体 现行 页数:15页 | 格式:PDF

基本信息

标准号
GM/T 0003.4-2012
标准类型
行业标准-密码
标准状态
现行
中国标准分类号(CCS)
国际标准分类号(ICS)
发布日期
2012-03-21
实施日期
2012-03-21
发布单位/组织
国家密码管理局
归口单位
国家密码管理局
适用范围
GM/T 0003的本部分规定了SM2椭圆曲线公钥密码算法的公钥加密算法,并给出了消息加解密示例和相应的流程。
本部分适用于商用密码应用中的消息加解密,消息发送者可以利用接收者的公钥对消息进行加密,接收者用对应的私钥进行解密,获取消息。同时,本部分还可为安全产品生产商提供产品和技术的标准定位以及标准化的参考,提高安全产品的可信性与互操作性。

发布历史

研制信息

起草单位:
北京华大信安科技有限公司、中国人民解放军信息工程大学、中国科学院数据与通信保护研究教育中心
起草人:
陈建华、祝跃飞、叶顶峰、胡磊、裴定一、彭国华、张亚娟、张振峰
出版信息:
页数:15页 | 字数:23 千字 | 开本: 大16开

内容描述

ICs35,040

L80

备案号:36829-2012

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

GM/T0003。⒋

-2012

SM2椭圆曲线公钥密码算法

第4部分:公钥加密算法

ˉ

PublickeycryptographicaIgorithΠ

lsˇΙ

Part4:PubⅡ

ckeyencryptionalgorithm

⒛12-03-21发布⒛12-0S-21实施

国家密码管理局发布

GM/T0003.4-ˉ2012

目次

ⅡI

………¨………¨¨…………………

¨¨¨¨¨¨¨¨……………¨¨¨¨……

目刂舀∵

引言·…·…………·…………………………

1111

1范围·…………屮…………∵…………¨

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

3术语和定义·………………·…………·…………………

……………………·

4符号¨

……………

5算法参数与辅助函数………………·………2

………………¨¨¨……………

·…………¨………………

5.1`总贝刂2

……·卩……¨…………………

5.2椭圆曲线系统参数2

………………·………………………

5.3用户密钥对2

·……………

5.4辅助函数2

·……·…………·…………………·……

5.4.1概述?·2

5.4,2密码杂凑函数2

5.4,3密钥派生函数3

·……………

5.4,4随机数发生器3

6加密算法及流程·………∴..………·……………………3

·…·………·………………

6.1加密算法3

¨……………·………

6,2加密算法流程3

……………·……………

7解密算法及流程5

·…·………………·………………………

7.1解密算法5

·………………………

7,2解密算法流程5

·…………………

附录A(资料性附录)消息加解密示例7

…·………………………

A.1一般要求…7

………………………

A,2Fp上消息加解密7

椭圆曲线

………………………

A,3F2″上椭圆曲线消息加解密9

GM/T0003.4-⒛12

目刂舀

GM/T0003亠⒛12《SM2椭圆曲线公钥密码法》5个:

算分为部分

——第1部分:总则;

——第2部分:数字签名算法;

——第3部分:密钥交换协议;

——第4部分:公钥加密算法;

——第5部分:参数定义。

本部分为GM/T0003的第4部分。

本部分依据GB/T1.1-2009给出的规则起草。

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

本部分的附录A为资料淫附录。

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

本部分起草单位:北京华大信安科技有限司、工

公中国人民解放军信息程大学、

中国科学院数据与

通信保护研究教育中心。

本部分主要起草人:陈、、一

建华祝跃飞叶顶峰、磊、、、亚

胡裴定彭国张、

华娟张振峰。

GM/T0003.4—2012

引言

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

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

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

——

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

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

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

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

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

本部分描述了基于椭圆曲线公钥加密算法。

GM/T0003.4-2012

sM2椭

圆曲公码

线钥密算法

第4部分:公钥加密算法

1范围

GM/TO003的本部分规定了SM2椭圆曲线公钥密码算法的公钥加密算法,并给出了消息加解密

示例和相应的流程。

本部分适用于商用密码应用中的消息加解密,消息发送者可以利用接收者的公钥对消息进行加密,

接收者用对应的私钥进行解密,获取消息。同时,本部分还可为安全产品生产商提供产品和技术的标准

定位以及标准化的参考,提高安全产品的可信性与互操作性。

2规范性引用文件

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

(包

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

GM/T0003.1—⒛12SM2椭圆曲线公钥密码算法第1部分:总则

3术语和定义

下列术语和定义适用于本文件。

3.1

秘密密钥secretkey

码双、三不道一。

在密体制中收发方共同拥有的而第方知的种密钥

3,2

消息message

·

任意有限长度的比特串。

3.3

密钥派生函数keyderivationFunctiom

通过作用于共享秘密和双方都知道的其他参数,产生一个或多个共享秘密密钥的函数。

符号

下列符号适用于本部分。

A,B:使用公钥密码系统的两个用户。

色F日一E。

,乙:Fg中的元素,它们定义上的条椭圆曲线

歹::用户B的私钥。

E(F日):F日上椭圆曲线E的所有有理点(包括无穷远点O)组成的集合。

F日:包q个。

含元素的有限域

GM/T0003,4-⒛12

G:椭圆曲线的一个基点,其阶为素数。

H勿s九():密码杂凑函数。

HvO:消要v比

息摘长度为特的密码杂凑函数。

KDFO:密钥派生函数。

M:待加密的消息。

M′:解密得到的消息。

刀:基点G的阶(″是#E(Fq)的因子)。

O:椭圆曲线上的一个特殊点,称为无穷远点或零点,是椭圆曲线加法群的单位元。

P::用户B的公钥。

q:有限域Fq中元素的数目。

r‖y:贸与丿的拼接,J、丿

P:椭上P=P+P+.¨

[硐圆曲线点T创

EJ,爿:大于或等于丿的整数的集合。

「l:顶,J的

函于。,「.31=9。

数最小整数例如l=7,飞

L」:底函刁、

#E(Fg)

5算法参

5,1总则

公钥加到的密文

进行解密还

5.2椭圆曲

椭圆曲线系括有限域Fq的规模g(当q=2″时,还包括元素表示约化多项式);

E(¢乙Fq;E(Fg)上G=(JG,

定义椭圆曲线两个元素、∈的基点),其中c是

=G和丿

Fq中的两个元素;G可选项(如″的余因子无等)。

椭圆曲线系统参数GM/T0003.⒈2012

5.3用户密钥对

用户B的密对包括私d:和P:=EJ:]G。

钥其钥公钥

用户密钥对的生成算法与公钥验证算法应符合GM/T0003.⒈2012第6章的规定。

5,4辅助函数

5.4.1概述

本部分规定的椭圆曲线公钥加密算法涉及三类辅助函数:密码函、

杂凑数密钥派生函数和随机数发

生器。这三类辅助函数的强弱直接影响加密算法的安全性。

5,4.2密码杂凑函数

本部分规定使用国家密码管理局批准的密码杂凑算法,如SM3密码杂凑算法。

2

GM/T0003,4-2012

5.4,3密钥派生函数

密钥派生函数的作用是从一个共享的秘密比特串中派生出密钥数据。在密钥协商过程中,密钥派

生函数作用在密钥交换所获

推荐标准