GM-T 0130-2023 基于SM2算法的无证书及隐式证书公钥机制_第1页
GM-T 0130-2023 基于SM2算法的无证书及隐式证书公钥机制_第2页
GM-T 0130-2023 基于SM2算法的无证书及隐式证书公钥机制_第3页
GM-T 0130-2023 基于SM2算法的无证书及隐式证书公钥机制_第4页
GM-T 0130-2023 基于SM2算法的无证书及隐式证书公钥机制_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中华人民共和国密码行业标准国家密码管理局发布IGM/T0130—2023 Ⅲ 1 1 1 24.1符号 24.2缩略语 3 3 3 4 45.4用户标识信息 4 56.1主密钥生成机制 56.2用户密钥对生成机制 56.3用户密钥对生成流程 5 66.5用户密钥对校验流程 7 77.1数字签名的生成机制 77.2数字签名的验证机制 8 88.1加密机制 88.2解密机制 8附录A(资料性)机制数据示例 9附录B(资料性)机制在隐式证书应用中的应用示例 附录C(资料性)机制在工业互联网标识解析系统中的应用示例 附录D(资料性)密钥生成中心用户密钥的确定性生成方法 21 Ⅲ本文件按照GB/T1.1—2020《标准化工汽车研究院有限公司、国家工业信息安全发展研究中心电汽数据(天津)有限公份有限公司、中国联通中讯邮电咨面没目院有限公蛮温国得能家电研究院有限公司、国家信息安股份有限公司本文件主要起草人:程朝用方悲泽、刘建陈雪冯定里、翟眼江宗斌、冯梅,王冲华、袁峰、李志虎、马照亭、刘奇旭、谭儒徐国爱、张永强强、李丽娟、工娜娜张金池、陈中林、周光涛、Al-Riyami和Paterson在2003年提出无证书公钥密码(Certificateless-PublicKeyCryptography)。无证书公钥系统不依赖数字证书验证用户的标识和公钥委托功能。扩展后的无证书公钥密码模型和安全定义允许基于标准公钥密码算法构造无证书公钥隐式证书(ImplicitCertificate)不包括证书签发机构的签名且证书处理者需要根据证书中的数据本文件描述基于SM2算法构造的无证书公钥机制和隐式证书公钥本文件的发布机构提请注意,声明符合本文件时,可能涉及与第6章、第7章相关的ZL2017该专利持有人已向本文件的发布机构承诺,他愿意同任何申请人在合理且无歧视的条款和条件下,就专利授权许可进行谈判。该专利持有人的声明已在本文件地址:深圳市宝安区宝兴路海纳百川B座16楼请注意除上述专利外,本文件的某些内容仍可能涉及专利。本文件的发布机构1基于SM2算法的无证书及隐式证书公钥机制1范围本文件规定基于SM2算法的无证书及隐式证书公钥机制,包括密钥生成与校验机制、数字签名机本文件规定的数字签名机制适用于商用密码应用中的数字签名和验证,加密机制适用于商用密码应用中的消息加解密。本文件规定的机制特别适合带宽和计算资源受限的应用环境。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适射于本文件,不注1期的引用文件,其最新版木(包括所有的修改单)适用于本文件。GB/T32918.1-2016信息安全技本SM²椭圆曲线公钥密码算法二第工部分:总则GB/T32918.4—2016信息安个技术椭圆曲公钥密码算法第重部分:公钥加密算法GB/T32918.5—2017信息安全技术陌圆曲钥密码算法第5部分:参数定义3术语和定义GB/T329181、GB人T32918.2、GB/T32918.4界定的密钥生成中心keygenerationcenter;KGC负责选择椭圆曲线系统参数、生成主密钥并产生用户部分私钥和声明公钥的可信机构。标识identity由实体无法否认的信息组成,如实体的可识别名称、电子邮箱、身份证号、电话号码、街道地址等,可唯一确定一个实体身份的信息。标识可进一步包括其他辅助信息,如标识用途、标识有效期等。主密钥masterkey处于无证书密码系统密钥分层结构最顶层的密钥,包括系统主私钥和系统主公钥,其中系统主公钥公开,系统主私钥由KGC秘密保存。用户的声明公钥user'sclaimedpublickey用于与椭圆曲线系统参数、系统主公钥、用户的标识一起计算用户实际公钥的公开值。2d'A:用户A的部分私钥dA:用户A的私钥IDA:用户A的标识3PA:用户A的实际公钥xc,yc:点G的x轴值和y轴值LHS:本地Handle服务(Loca与校验机制包括主密钥的生成机制以及用户密钥对的生成与校验机制和流程。主密钥由KGC生无证书以及基于隐式证书的数字签名机制和公钥加密机制分别基于标准的基础数字签名算法4椭圆曲线系统参数及其验证应符合GB/T32918.1—2016中第5章及GB/T32918.5—2017的本文件规定使用的数字签名生成算法SIGN和数字签名验证算法VERIFY分别遵循GB/T32918.2—2016中第6章和第7章的要求。6章和第7章的要求。用户A具有长度为entlenA比特的标识IDA,记ENTLA是由整数entlena转换而成的两个字节。都采用密码杂凑算法求得用户A的杂凑值HA。按GB/T32918.1—2016中4.2.6和4.2.5给出的方5HA=H₂56(ENTLAⅡIDAlallbl|xcllyallxpubllypb)。6密钥生成机制及流程6.1主密钥生成机制KGC使用随机数ms∈[1,n-1]作为系统主私钥,计算系统主公钥Ppb=[ms]G。KGC应采取必要安全措施保障主私钥ms的安全性。用户A和KGC一起协同生成用户的密钥对:用户私钥dA和声明公钥WA。两者应实现以下运算A₁:用户A用随机数发生器产生随机数d'A∈[1,n-1];A₂:用户A计算UA=[d'A]G,并将标识IDA和UA提交KGC;KGC₁:KGC计算HA=Hz56(ENTLAllIDAllallblⅡxcllyallKGC₃:KGC计算WA=[w]G+UA;KGC₄:KGC按GB/T32918.1—2016中4.2.6和4.2.5给出的方法将WA的坐标xwA、ywA的数据类型转换为比特串,计算λ=H₂56(xwallywAllHA)modn,按GB/T32918.1—2016中KGC₅:KGC计算tA=(w+λ*ms)modn,并将tA和WA安全地返回给用户A;A₃:用户A计算dA=(ta+d'A)modn;A₄:如果0<dA<n-1,则输出(dA,WA);否则返回A₁。生成加密密钥对时,KGC可使用确定性方法生成tA和WA。生成方法见附录D。KGC将tA返回用户A时可使用UA作为公钥使用加密方法ENC加密包括tA的数据后将密文传递到用户A。用户A使用d'A解密密文后还原包括ta的数据。用户密钥对生成流程见图1。6用户A的原始数据(椭圆曲线系统参数、系统主公钥、标识/DA)KGC的原始数据(椭圆曲线系统参数、系统主公钥、系统主私钥)KGC第1步:计算HA=H2s(ENTLAIDAIalblx₀Iy₀Ixpub!y)否是输出(dWA7A₁:计算HA=H2s(ENTLAIDAllallblⅡxcllygllxpabllypub);A₂:按GB/T32918.1-2016中4.2.6和4.2.5给出的方法将WA的坐标xwA、ywA的数据类型转换为比特串,计算λ=H₂5₆(xwallywallHA)modn,按GB/T32918.1—2016中4.2.4和4.2.3给出的方法将λ的数据类型转换为整数;As:检查PA=P'A是否成立,若成立则验证通过;否则验证不通过。6.5用户密钥对校验流程用户密钥对校验流程见图2。第步:日t否是图2用户密钥对校验流程7数字签名机制7.1数字签名的生成机制设待签名的消息为M,为了获取消息M的数字签名(r,s),作为签名者的用户A应实现以下运算8在隐式证书系统中,执行SIGN(param,ZE,ICAIlM,dA)并输出签名(B₁:计算HA=H₂s₆(ENTLAllIDAllallb||B₃:计算PA=WA+[λ]Ppb;B₃:计算PA=WA+[λ]Ppu;A₁:执行DEC(param,C,dA)并输出结果。9(资料性)机制数据示例A.1概述本附录选用GB/T32905给出的密码杂凑算法。本附录选用GB/T32918.5给出的SM2算法参数。本附录中,所有用16进制表示的数,左边为高位,右边为低位。本附录中,字符串采用GB/T1988编码,消息和明文采用16进制表示。A.2无证书系统密钥生成机制数据示例椭圆曲线系统参数(param):q:FFFFFFFEFFFFDFFFFFFFFFFFFFFFFa:FFFFFFEEFFDFFFFEFFFFFFFFFFFFFFEEFFFFFFFF00000000FFFFFFFFFEFFFFFCb:28E9FA9E9D9F5E344D5A⁹E4BCF6509A⁷F39789FS-15AB8F92DDBCBD414D940E93n:FFFFFFFE/FFFFFFFCEF的DTEFFP7203DF6B-2Hxc:32g4AF2C1F1981159666A348FBFF2860BISKy:BO⁸736A2F4F67BBCE3653主密钥:ms:6BDD93210F7941FroOngcic208FF7Den0022135c9m9ApFF9Xpb:F294B710601DE1CSD34120Ct02DseA306400315700BFT4013E56yPub:5C003EBiB50B9BBB25880778-2AA3C38E-A800E23B30B777FA用户密钥对生成过程数据:d'A:04914C20251A59A2C311102944C600430A02285A04331442xu:DE0ED7FDOB7D7144763189yu:3340A21A74CBD4BOD902AA50780F45E9D79E8C94C035CFP66357F9288CD02C27HA=H₂s6(ENTLAllIDAllCC2DC29253D9C77385781813985D421A6C6F9CCBCE61FAD37EC79D8Bw:6CB28D99385C175C94F94E934817663FC176D925DD72B727260xwa:DB65BF80F08E3FEA9758A9490F2CywA:0728185A257F64B79DFA929C16C987ED956FB32λ=H₂s₆(xwallywallHA)modn:F84BBC966F668583D734971C2F4DE1CC8A620CD6E4D09488E1FBE2052EFDC9E0tA:BBB6EBEB993D1EE3E5F4C265107D3AF7C094169A0E7DDDOA7400638BE27C048380BBE577886A905D28Eyp:8C5AF329D45B9E6270D07645F10B283C35D8BF9A35F58AB41E8CD4A1DD70D18BM:6D657373616765206469676HA=H₂s₆(ENTLAlⅡIDAIlalbllxclygllxpubllCC2DC29253D9C77385781813985D421AdA:C048380BBE577886A905D28E55433B3ACA963EF412BOF14C9C14EQ\*jc3\*hps22\o\al(\s\up3(k:3),[k])EQ\*jc3\*hps22\o\al(\s\up3(49),G)EQ\*jc3\*hps22\o\al(\s\up3(0),₁,)EQ\*jc3\*hps22\o\al(\s\up3(25),y)y₁:1214F7E5C4D4121DE8845B5D81F1373CBEB43EBBD6AA5B747FAA537194CE979754A401AB5BODA37BHA=H₂56(ENTLAllIDAllallb|xcllygllxCC2DC29253D9C77385781813985D421A6C6F9CCBCE61FAD37EC7λ=H₂56(xwAllywAllHA)modn:yp:8C5AF329D45B9E6270D07645F10B2x'1:80C8022B011044A139231y':1214F7E5C4D4121DE8845B5D81F138A25707C7600FC63A62D2F007C056FC080473CBEB43EBBD6AA5B747FAA537194CE979754A401AB5BODA37BM:010101010101010101010101010101010101010101010101010101010100101010101010101010101010101010101010101010101010101010HA=H₂56(ENTLAl|IDAllal|bl|xgllycllCC2DC29253D9C77385781813985D421A6C6F9CCBCE61FAD37EC79D8B6EFC8F71ywa:0728185A257F64B79DFA929C16C987ED956FB32D00B6CAλ=H₂56(xwAllywA|lHA)modn:F84BBC966F668583D734971C2F4DE1CC8A620CD6E4D09488E1FBE2052EFDC9E0xp:12B72E936C902048F99D77F4C556D112F72FDF6A7yp:8C5AF329D45B9E6270D07645F10B283k:4C62EEFD6ECFC2B95B92FD6C3D9575148AFA17425xi:11C88AE04CEC1BA554D03D5B5970333A83585826C2A98y₁:84B52D344FB21AA8EA38A4940C8332692B8D4DA2393549212EAFDCOF11CA5C9Cx₂:2629AB80DA9141F57C3B2BACB37D7EFF609AE3D7y₂:39A685A93BF11374C582395938A₅B40A50381F94E7A23B84B52D344FB21AA8EA38A4940C8330705DE4AD1F60968DE489936BFD3BE7E4765BAD37BAEDEF16992224F40B3A6C2F216B4BC722FA32672DA830E10BAE84Eq:FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFFa:FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFFFFFCb:28E9FA9E9D9F5E344D5A9E4BCF6509A7F39789F515AB8F92DDBCBD414D940E93n:FFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF7203DF6B21C60521F1981195F9904466A39C9948FE30BBFF2660BE1715AF4F6779C59BDCEE36B692153DOA9877CC62A474002DF32E52139FOA0ms:6BDD93B210F79415FE0F6388C1C932C208319FF7D7E99C972B3535C9F19A9FF9XPub:F294B710601DE1C5D34420C4902D81C3A30644903E5799BFE4013E56YPub:5C003EB1B50B9BBB2E8807782AA3C38EA800E23B30B777FAAD8FOF71用户密钥对生成过程数据:d'A:04914C20251A59A2C311102944C600430A02285Axu:DEOED7FDOB7D714476318954yu:3340A21A74CBD4B0D902AA5E780F45F9D79E8C按照B.3.2中隐式证书数据和标识数据对应关系获得18000000A0808080808080808080909090002002373008400HA=H₂6(ENTLAlTDAllallbxgllygll2138FC2CBF4B591D156757D998A245BAEAD4FFA85586342Ew:6CB28D99385C175C94F94E934817663FC176D925DD72B72726QDBAAE1FB2FXwA:DB6GBF80F08E3FEA9758A9490ywA:0728185人257FG⁴B79DEA929CI6CR87D956IB32D00B6CAP678156E6GE01530F43EOEBFDFFE622eCDB6C2641A27BOCC14F47D516C42E400FAED85用户公钥:xp:5E6203B3E₅B8BGEDRICqyp:AOCFE288A04D33DD6BA589DA3AB307175AGED2CDTD9108AB29B29CD40A624按照附录中隐式证书的格式编码后形成ICA:0003018082122232425262728008000000a08080808080808080800023730084Q0C8812183DB65BF80F08E3FEA9758A9490F2C257A2D8ADEAA59DAA.6隐式证书系统数字签名机制数据示例M:6D65737361676520646967600030183082122232425262728008000000a0808080808080808080909002373008400C8812183DB65BF80F08E3FEA9758A9490F2C257A2D8786CBFAFEF221E78按照B.3.2中隐式证书数据和标识数据对应关系获得IDA:8000000a0808080808080808080909090002002373008400C8基于隐式证书ICA解压缩获得的WA=(xwA,ywA):xwA:DB65BF80F08E3FEA9758A9490F2C2ywa:0728185A257F64B79DFA929C16C987ED基于隐式证书的签名过程示例:dA:43EOBBFDFFE6224ACCDB6C2905E41A27C1ABOCC141F47D516C42E400FAED8500CF308D3912BFD34444F7EDB5379160E74D4CEF12159C9749C16A391k:34914C20251A59A2C311102944C600430A02285A0433144228142A1848x₁:80C8022B011044A1392310CD3B7E722E444y₁:1214F7E5C4D4121DE8845B5D81F1384FF88F6513D017E57E1AFE82730FD3161F94787FA5E526A8F2C6HA=H₂56(ENTLʌl|IDAllallbl|xg2138FC2CBF4B591D156757D998A245BAλ=H₂56(xwAllywAllHA)modn:D343E4E6679DBDBFBFED3F7Exp:5E6203B3E5B8B4C6FDA394C9ED0940C4143D7AECC933C129A3B5CB1A6yp:AOCFE288A₀4D33DD6BA589DA3AB397CF308D3912BFD34444F7EDB5379160E74D4CEF12159C9749C16A39y'1:1214F7E5C4D4121DE8845B5D81F134FF88F6513D017E57E1AFE82730FD3161F94787FA5E526A8F2C62AD135784E99M:010101010101010101010101010101010101010101010101010101010100101010101010101010101010101010101010101010101010101010100030183082122232425262728008000000a0808080808080808080002373008400C8812183DB65BF80F08E3FEA9758A9490F2C257A2D8000000A08080808080808ywa:0728185A257F64B7HA=H₂ss(ENTLAllIDAll2138FC2CBF4B591D156757D998A245BAEAD4FFA85586342EFFDAλ=H₂56(xwAllywʌl|HA)modn:D343E4E6679DBDBFBFED3F7E9EF2491DEDF1FC14D6372A5A2530C731846D8F21πp:5E6203B3E5B8B4C6FDA394C9ED0940C4143D7AECC933C129A3B5CB1A6A950D1Byp:A0CFE288A04D33DD6BA589DA3AB397Fk:4C62EEFD6ECFC2B95B92FD6C3D9575148AFA17425546D49018E5388D49x₁:11C88AE04CEC1BA5-54D03D5B5970333A_83585826C2A985DE5520EA38A4940C8332692B8D4DA2393549212EAFDCOy₂:75697A80A3EC9DCB711EC=(C₁,C₃,C₂)A91CF8CAFB9357ACA160COFCA276AD6247455CD31CC2AA3C83BBB54A503D0138D5970333A-83585896C2A985DE5520D9E93438984B52D344FB212A8EA38AT00(8332602B8EID12293549553B13CD4FC7158BDC6E3B84CQB95XAF0850702B3E2TBDE80DB基于隐式证书的解密过程系107EOB5390655908E21DBE段设置为1SubjectAssuranceOPTNULLOPTIONAL,PublicEncryptionKeyOPTIONAL,VerificationKeyIndi(WITHCOMPONENTS{..,appPermissionsPRESENT}ICOMPONENTS{...,certIssuCOMPONENTS{..,certRequesToBeSignedCertifica——cracaId用于识别负责发布证书撤销列表的证书撤销授权CA,它的证书可能出现在证书撤销 certRequestPermissions表示证书持有者使用此证书签署证书请求的权限——verifyKeyIndicator包含可用于恢复公钥的公钥还原数a)CA生成系统私钥ms,系统公钥Ppub=[ms]G;b)CA将[ms]G作为其签名公钥向其根CA申请一张CA证书。步骤b)中证书申请过程为标准证书申请过程,生成的证书为根CA为该CA签发的CA证书。若无根CA,则该CA可生成自签名的CA证书。本文件中的IDA至少包括ToBeSignedCertificate中从id域开始到encryptionKey域之前的数据域。若encryptionKey域存在且是普通公钥,则IDA包括该数据域,否则IDA不包括该数据域。IDA所包括的数据域的编码格式与ToBeSignedCertificate的编码格式一致。IDA所包括的数据域的顺序a)实体执行6.2中的步骤A₁和A₂,产生随机数d'A∈[1,n—1],计算UA=[d'A]G。c)CA验证隐式证书申请的合法性后,生成隐式证书中除密钥verifyKeyIndicator的其他部分,即从id开始到encryptionKey的部分。如果encryptionKey域存在且是普通公钥,则该密钥按照普通密钥生成方法生成。若encryptionKey域存在且是隐式证书类型的加密公钥,则密钥按照6.2规定的生成机制生成。CA按照B.3.2的方法构造IDA,执行6.2中的步骤KGC₁~步骤KGC₅,获得tA和WA。d)CA将WA作为隐式证书中数据域verifyKeyIndicator的数据进行编码,生成完整的隐式e)如果实体在证书申请过程中生成了加密公私密钥对(Q,c),并在证书申请中提供加密公钥g)实体执行6.2中的步骤A₃和A₄计算完整签名私钥dA并从隐式证书的数据域verifyKey-性和数据源真实性对Handle系统的安全至关重要。对于查询或者管理需要额外授权的受控访问a)GHR的公私密钥对:用于为命名权威机构Handle解析提供数据完整性和数据源真Handle值方式对外发布。LHS的公私密钥对由LHS的管理机构生成。LHS的公钥通过Handle某个Handle的管理权限以及进行身份认证使用的密钥Handle引用。<HS_ADMIN>类型Handle

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论