GB/T 32918.5-2017 信息安全技术 SM2椭圆曲线公钥密码算法 第5部分:参数定义
GB/T 32918.5-2017 Information security technology—Public key cryptographic algorithm SM2 based on elliptic curves—Part 5:Parameter definition
基本信息
发布历史
-
2017年05月
研制信息
- 起草单位:
- 北京华大信安科技有限公司、中国人民解放军信息工程大学、中国科学院数据与通信保护研究教育中心
- 起草人:
- 陈建华、祝跃飞、叶顶峰、胡磊、裴定一、彭国华、张亚娟、张振峰
- 出版信息:
- 页数:15页 | 字数:24 千字 | 开本: 大16开
内容描述
ICS35.040
L80(3B
中华人民共和国国家标准
GB/T32918.5—2017
信息安全技术
SM2椭圆曲线公钥密码算法
第5部分:参数定义
Informationsecuritytechnology—Publickeycryptographicalgorithm
SM2basedoneipticcurves—Part5:Parameterdefinition
2017-05-12发布2017-12-01实施
发布
GB/T32918.5—2017
目次
冃U有I
引言n
i范围i
2规范性引用文件1
3符号1
4参数定义1
附录A(资料性附录)数字签名与验证示例3
附录E(资料性附录)密钥交换及验证示例5
附录C(资料性附录)消息加解密示例9
参考文献11
GB/T32918.5—2017
■>r■—>—
刖弓
GB/T32918《信息安全技术SM2椭圆曲线公钥密码算法》分为5个部分:
第1部分:总则;
——第2部分:数字签名算法;
——第3部分:密钥交换协议;
——第4部分:公钥加密算法;
——第5部分:参数定义。
本部分为GB/T32918的第5部分。
本部分按照GB/T1.1-2009给出的规则起草。
请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。
本部分由国家密码管理局提出。
本部分由全国信息安全标准化技术委员会(SAC/TC260)归口。
本部分起草单位:北京华大信安科技有限公司、中国人民解放军信息T程大学、中国科学院数据与
通信保护研究教育中心。
本部分主要起草人:陈建华、祝跃飞、叶顶峰、胡磊、裴定一、彭国华、张亚娟、张振峰。
T
GB/T32918.5—2017
引言
N.Koblitz和V.Mier在1985年各自独立地提出将椭圆曲线应用于公钥密码系统。椭圆曲线公
钥密码所基于的曲线性质如下:
一一有限域上椭圆曲线在点加运算下构成有限交换群,且其阶与基域规模相近;
一一类似于有限域乘法群中的乘幕运算,椭圆曲线多倍点运算构成一个单向函数。
在多倍点运算中,已知多倍点与基点,求解倍数的问题称为椭圆曲线离散对数问题。对于一般椭圆
曲线的离散对数问题,目前只存在指数级计算复杂度的求解方法。与大数分解问题及有限域上离散对
数问题相比,椭圆曲线离散对数问题的求解难度要大得多。因此,在相同安全程度要求下,椭圆曲线密
码较其他公钥密码所需的密钥规模要小得多。
SM2是国家密码管理局组织制定并提出的椭圆曲线密码算法标准。GB/T32918的主要目标
如下:
-GB/T32918.1-2016定义和描述了SM2椭圆曲线密码算法的相关概念及数学基础知识,并
概述了该部分同其他部分的关系。
——GB/T32918.2—2016描述了一种基于椭圆曲线的签名算法,即SM2签名算法。
-GB/T32918.3—2016描述了一种基于椭圆曲线的密钥交换协议,即SM2密钥交换协议。
-GB/T32918.4-2016描述了一种基于椭圆曲线的公钥加密算法,即SM2加密算法,该算法需
使用GB/T32905—2016定义的SM3密码杂凑算法。
-GB/T32918.5-2017给出了SM2算法使用的椭圆曲线参数,以及使用椭圆曲线参数进行
SM2运算的示例结果。
n
GB/T32918.5—2017
信息安全技术
SM2椭圆曲线公钥密码算法
第5部分:参数定义
1范围
GB/T32918的本部分规定了SM2椭圆曲线公钥密码算法的曲线参数。
本部分适用于数字签名与验证(参见附录A)、密钥交换与验证(参见附录B)、消息加解密示例(
见附录C)。
2规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文
件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB/T32905—2016信息安全技术SM3密码杂凑算法
GB/T32918.1—2016信息安全技术SM2椭圆曲线公钥密码算法第1部分:总则
GB/T32918.2—2016信息安全技术SM2椭圆曲线公钥密码算法第2部分:数字签名算法
GB/T32918.3—2016信息安全技术SM2椭圆曲线公钥密码算法第3部分:密钥交换协议
GB/T32918.4—2016信息安全技术SM2椭圆曲线公钥密码算法第4部分:公钥加密算法
3符号
下列符号适用于本文件。
p大于3的素数。
a,bFq中的元素,它们定义F"上的一条椭圆曲线E。
基点G的阶[”是#E(Fq)的素因子]。
工G生成元的工坐标
生成元的坐标
4参数定义
SM2使用素数域256位椭圆曲线。
椭圆曲线方程:y彳=工:<+a_r+"
曲线参数:
p=FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF
a=FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFC
〃=28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93
1
GB/T32918.5—2017
“=FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C6052B53BBF40939D54123
zg=32C4AE2C1F1981195F9904466A39C9948FE30BBFF2660BE1715A4589334C74C7
,g=BC3736A2F4F6779C59BDCEE36B692153D0A9877CC62A4740O2DF32E52139FOAO
2
GB/T32918.5—2017
附录A
(资料性附录)
数字签名与验证示例
A.1综述
本附录选用GB/T32905—2016给出的密码杂凑算法,其输入是长度小于2皿的消息比特串,输出
是长度为256比特的杂凑值,记为«256()0
本附录使用GB/T32918.2—2016规定的数字签名算法计算得到各步骤中的相应数值。
本附录中,所有用16进制表示的数,左边为高位,右边为低位。
本附录中,消息采用GB/T1988编码。
设ZDa的GB/T1988为:31323334353637383132333435363738。EN7Xa=0080。
A.2SM2椭圆曲线数字签名
椭圆曲线方程为:护=云+a_z+/丿
示例1:F.-256
素数/八FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF
系数a:FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFC
系数/7:28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93
基点G=(/<;,》■<;),其阶记为n。
坐标不;:32C4AE2C1F1981195F9904465A39C9948FE30BBFF266OBE1715A4589334C74C7
坐标w:BC3736A2F4F6779C59BDCEE36B692153D0A9877CC62A474002DF32E52139FOAO
阶”:FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C6052B53BBF49939D54123
待签名的消息M:messagedigest
M的GB/T1988编码的16进制表示:6D65737361676520646967657374
私钥〃a:3945208F7B2144B13F36E38AC6D39F95889393692860B51A42FB81EF4DF7C5B8
公钥「a=QaO'a):
坐标/a:09F9DF311E5421A5ODD7D161E4BC5C672179FAD1833FC076BBO8FF356F35020
坐标va:CCEA490CE26775A52DC6EA718CC1AA600AED05FBF35EO84A6632F6072DA9AD13
杂凑值Za=H256(E.VTLaII/Da||a||b||口,||%||仆Ba)»
Za:B2E14C5C79C6DF5B85F4FE7ED8DB7A262B9DA7E07CCB0EA9F4747B8CCDA8A4F3
签名各步骤中的有关值:
W=ZA||M.
B2E14C5C79C6DF5B85F4FE7ED8DB7A262B9DA7E07CCB0EA9F4747B8CCDA8A4F3
6D65737361676520646967657374
密码杂凑算法值。=〃256(帀):F0B43E94BA45ACCAACE692ED534382EB17E6AB5A19CE7B31
F4486FDFC0D28640
产生随机数怡:59276E27D506861A16680F3AD9C02DCCEF3CC1FA3CDBE4CE6D54B80D
EAC1BC21
计算椭圆曲线点Gn,yi)=M]G:
坐标.rj:04EBFC718E8D1798620432268E77FEB6415E2EDE0E073C0F4F640ECD2E149A73
坐标》i:E858F9D81E5430A57B36DAAB8F950A3C64E6EE6A63094D99283AFF767E124DF0
3
GB/T32918.5—2017
计算,-=(°+厂)med”:F5AO3BO648D2C463OEEAC513E1BB81A15944DA3827D5B74143AC7EAC
EEE72OB3
(1+〃a)7:4DFE9D9C1F59O1D4E6F58E4EC3DO4567822D255OF9B88E826D1B5B3AB9CDOFEO
计算5=((1+Ja)-'•(k-r•t/.A))mod»:BlB6AA29DF212FD8763182BCOD421CA1BB9O38FD
1F7F42D484OB69C485BBC1AA
消息M的签名为(r,.O:
值r:F5AO3BO648D2C463OEEAC513E1BB81A15944DA3827D5B74143AC7EACEEE72OB3
值5:B1B6AA29DF212FD8763182BCOD421CA1BB9O38FD1F7F42D484OB69C485BBC1AA
验证各步骤中的有关值:
密码杂凑算法值e'=II256(M^:FOB43E94BA45ACCAACE692ED534382EB17E6AB5A19CE7B31
F4486FDFC0D28640
计算/=&'+s')mcd”:A756E53127F3F43B851C47CFEEFD9E43A2D133CA258EF4EA73FBF468
3ACDA13A
计算椭圆曲线点(乳,讥)=[/JG:
坐标H:2B9CE14E3C8D1FFC46D693FA0B54F2BDC4825A5O66O7
推荐标准
- GB/T 35738-2017 物流仓储配送中心输送、分拣及辅助设备 分类和术语 2017-12-29
- GB/T 35736-2017 公共安全指纹识别应用 图像技术要求 2017-12-29
- GB/T 35735-2017 公共安全 指纹识别应用 采集设备通用技术要求 2017-12-29
- GB/T 35734-2017 便携式管激发X射线荧光分析仪 分类、安全要求及其试验 2017-12-29
- GB/T 35726-2017 并联型有源电能质量治理设备性能检测规程 2017-12-29
- GB/T 35737-2017 多绳缠绕式矿井提升机 2017-12-29
- GB/T 35727-2017 中低压直流配电电压导则 2017-12-29
- GB/T 35731-2017 火力发电厂分散控制系统运行维护与试验技术规程 2017-12-29
- GB/T 35732-2017 配电自动化智能终端技术规范 2017-12-29
- GB/T 35730-2017 非能动安全系统压水堆核电厂总设计要求 2017-12-29