针对资源受限装置的配对运算方法及系统制造方法及图纸

技术编号:28986939 阅读:57 留言:0更新日期:2021-06-23 09:37
针对资源受限装置的配对运算方法:第一方为资源受限装置,第一方为非资源受限装置;有双线性映射e:G

【技术实现步骤摘要】
针对资源受限装置的配对运算方法及系统
本专利技术属于密码
,特别是针对资源受限装置的用于SM9签名验证的配对运算方法及系统。
技术介绍
基于标识的密码(IdentityBasedCryptography,IBC)与采用数字证书技术的PKI(PublicKeyInfrastructure)相比,由于省去了获取私钥拥有者的公钥数字证书这一麻烦环节,技术实现简单,目前日益受到人们的重视,具有广阔的应用前景。基于标识的密码,既可以用于数据加密(称为IdentityBasedEncryption,IBE),也可以用于数字签名(称为IdentityBasedSignature,IBS)。目前基于标识的密码算法大多是采用基于双线性映射(bilinearmapping,也称配对运算,Pairing)的算法,其中的双线性映射(配对运算)为:e:G1×G2→GT时,其中G1、G2(配对或双线性映射的群)是加法循环群,GT是一个乘法循环群,G1、G2、GT的阶是素数n(SM9规范中使用G1、G2、GT的阶是大写字母N),即若P、Q、R分别为G1、G2中的元,则e(P,Q)为GT中的元,且:e(P+R,Q)=e(P,Q)e(R,Q),e(P,Q+R)=e(P,Q)e(P,R),e([a]P,[b]Q)=e(P,Q)ab。这里a、b是[0,n-1]中的一个整数,[a]P、[b]Q表示点的P、Q的多倍点加或数乘。SM9是国家密码管理局颁布的一种基于双线性映射(配对运算)的标识密码算法。基于SM9密码算法能实现基于标识的数字签名、密钥交换及数据加密。在SM9密码算法中,使用用户用于签名的的SM9标识私钥dA针对消息M生成数字签名的过程如下:计算得到w=gr,这里r是签名计算时在[1,n-1]区间内随机选择的整数,g=e(P1,Ppub),P1为G1中的生成元,Ppub为主公钥(即Ppub=[s]P2,s为主私钥或主密钥,P2为G2中的生成元,参见SM9规范;注意,这里的主私钥或主密钥,主公钥,用户的用于签名的SM9标识私钥的符号与SM9规范中的不一样);然后,计算h=H2(M||w,n),其中H2为SM9中规定的散列函数,M||w表示M和w的字串合并,n为G1、G2、GT的阶(参见SM9规范,注意这里群的阶使用的符号与SM9规范略有不同,使用的小写字母n,而SM9规范使用的是大写字母N);若r≠h,计算S=[r-h]dA,则(h,S)为生成的数字签名;若r=h,则重新选择r,重新计算w、h,直到r≠h。给定一个消息M的数字签名(h,S),验证签名有效性的方法如下(参见SM9规范,注意,SM9规范中签名验证过程描述使用的符号为M'、(h',S'))。B1:检验h∈[1,n-1]是否成立,若不成立则验证不通过;B2:检验S∈G1是否成立,若不成立则验证不通过;B3:计算群GT中的元素g=e(P1,Ppub);B4:计算群GT中的元素t=gh;B5:计算整数h1=H1(IDA||hid,n)(这里是IDA用户的标识,hid是用一个字节表示的签名私钥生成函数识别符,H1()是SM9规范中定义的散列或哈希函数);B6:计算群G2中的元素P=[h1]P2+Ppub;B7:计算群GT中的元素u=e(S,P);B8:计算群GT中的元素w'=u·t;B9:计算整数h2=H2(M||w',n),检验h2=h是否成立,若成立则验证通过;否则验证不通过(H2()是SM9规范中定义的散列或哈希函数)。在以上签名验证过程中需要进行配对运算u=e(S,P),而配对运算复杂,需要有充分的计算能力、计算资源的计算装置才能在可接受的时间内完成有关,而对于一些资源受限装置,如无线传感器、物联网中的各种微小计算装置,如智能仪表、现场控制器等,很难有足够的计算能力、计算资源完成或在可接受的时间内完成复杂的配对运算。
技术实现思路
本专利技术的目的是针对资源受限装置进行配对运算计算能力不足的问题,提出相应的解决方案。为了实现以上目的,本专利技术的技术方案包括针对资源受限装置的配对运算方法及系统。本专利技术的技术方案涉及双线性映射(配对运算)e:G1×G2→GT;群G1、G2为加法群(通常是椭圆曲线点群),群GT为乘法群(通常是整数乘法群);群G1、G2、GT的阶为素数n;群G1、G2的生成元分别为P1、P2;基于双线性映射e定义:e1(V,T)=e(V,T),其中V是群G1中的元,T是群G2中的元;e2(V,T)=e(T,V),其中V是群G2中的元,T是群G1中的元。下面对本专利技术的技术方案进行描述,在以下描述中,如无特别说明,a-1为a的模n乘法逆(即(a-1a)modn=1)。本专利技术的针对资源受限装置的配对运算方法涉及两方:第一方和第二方,其中第一方为资源受限装置,第二方为非资源受限装置(具有足够计算能力、计算资源的装置)。本专利技术的针对资源受限装置的配对运算方法又包括五个方案,具体如下。方案一、第一方有[1,n-1]内(随机选择)的整数秘密c、k(常数),(预先或实时)计算有Q=[ck]Pj+[c]Ppubj或Q=[k]Pj+[c]Ppubj,其中[]表示对群G1和G2中的元的多倍点加运算(数乘运算),j=2或1,Ppubj=[sj]Pj为群Gj中的主公钥,sj为针对群Gj的主密钥(主私钥);当第一方需要计算u=ei(S,P)时,其中i=3-j,S为群Gi中的元,P=[h1]Pj+Ppubj,h1为[1,n-1]内整数,第一方和第二方按如下方式进行配对运算u=ei(S,P)的协同计算:第一方将S、Q发送给第二方;第二方计算g1=ei(S,Pj),g2=ei(S,Q),然后将g1、g2发送给第一方;第一方利用g1、g2计算得到u=ei(S,P)的值;第一方利用g1、g2计算得到u=ei(S,P)的值方式包括:若Q的计算式为Q=[ck]Pj+[c]Ppubj,则计算t=(h1-k)modn,u=(g1^t)(g2^c-1),或者,计算t=(c(h1-k))modn,u=((g1^t)g2)^c-1;若Q的计算式为Q=[k]Pj+[c]Ppubj,则计算t=(h1-c-1k)modn,u=(g1^t)(g2^c-1),或者,计算t=(ch1-k)modn,u=((g1^t)g2)^c-1;在以上计算中,^表示幂运算(对^前面的元进行幂运算,^后面为幂运算的次数),c-1为c的模n乘法逆(即(cc-1)modn=1)。方案二、第一方有[1,n-1]内(随机选择)的整数秘密b、c、k(常数),(预先或实时)计算有Q1=[b]Pj,Q2=[ck]Pj+[c]Ppubj或Q2=[k]Pj+[c]Ppubj,其中[]表示对群G1和G2中的元的多倍点加运算(数乘运算),j=2或1,Ppubj=[sj]Pj本文档来自技高网
...

【技术保护点】
1.一种针对资源受限装置的配对运算方法,其特征是:/n所述方法涉及双线性映射e:G

【技术特征摘要】
1.一种针对资源受限装置的配对运算方法,其特征是:
所述方法涉及双线性映射e:G1×G2→GT;群G1、G2为加法群,群GT为乘法群;群G1、G2、GT的阶为素数n;群G1、G2的生成元分别为P1、P2;
基于双线性映射e定义:
e1(V,T)=e(V,T),其中V是群G1中的元,T是群G2中的元;
e2(V,T)=e(T,V),其中V是群G2中的元,T是群G1中的元;
所述方法涉及两方:第一方和第二方,其中第一方为资源受限装置,第二方为非资源受限装置;
第一方有[1,n-1]内的整数秘密c、k,计算有Q=[ck]Pj+[c]Ppubj或Q=[k]Pj+[c]Ppubj,其中[]表示对群G1和G2中的元的多倍点加运算,j=2或1,Ppubj=[sj]Pj为群Gj中的主公钥,sj为针对群Gj的主密钥;
当第一方需要计算u=ei(S,P)时,其中i=3-j,S为群Gi中的元,P=[h1]Pj+Ppubj,h1为[1,n-1]内整数,第一方和第二方按如下方式进行配对运算u=ei(S,P)的协同计算:
第一方将S、Q发送给第二方;
第二方计算g1=ei(S,Pj),g2=ei(S,Q),然后将g1、g2发送给第一方;
第一方利用g1、g2计算得到u=ei(S,P)的值;
第一方利用g1、g2计算得到u=ei(S,P)的值方式包括:
若Q的计算式为Q=[ck]Pj+[c]Ppubj,则计算t=(h1-k)modn,u=(g1^t)(g2^c-1),或者,计算t=(c(h1-k))modn,u=((g1^t)g2)^c-1;
若Q的计算式为Q=[k]Pj+[c]Ppubj,则计算t=(h1-c-1k)modn,u=(g1^t)(g2^c-1),或者,计算t=(ch1-k)modn,u=((g1^t)g2)^c-1;
在以上计算中,^表示幂运算,c-1为c的模n乘法逆。


2.一种基于权利要求1所述的针对资源受限装置的配对运算方法的针对资源受限装置的配对运算系统,其特征是:
所述配对运算系统包括资源受限装置和非资源受限装置,当资源受限装置需要进行配对运算u=ei(S,P)时,所述资源受限装置作为第一方,所述非资源受限装置作为第二方,按所述针对资源受限装置的配对运算方法完成配对运算u=ei(S,P)的计算。


3.一种针对资源受限装置的配对运算方法,其特征是:
所述方法涉及双线性映射e:G1×G2→GT;群G1、G2为加法群,群GT为乘法群;群G1、G2、GT的阶为素数n;群G1、G2的生成元分别为P1、P2;
基于双线性映射e定义:
e1(V,T)=e(V,T),其中V是群G1中的元,T是群G2中的元;
e2(V,T)=e(T,V),其中V是群G2中的元,T是群G1中的元;
所述方法涉及两方:第一方和第二方,其中第一方为资源受限装置,第二方为非资源受限装置;
第一方有[1,n-1]内的整数秘密b、c、k,计算有Q1=[b]Pj,Q2=[ck]Pj+[c]Ppubj或Q2=[k]Pj+[c]Ppubj,其中[]表示对群G1和G2中的元的多倍点加运算,j=2或1,Ppubj=[sj]Pj为群Gj中的主公钥,sj为针对群Gj的主密钥;b和c不必不同;
当第一方需要计算u=ei(S,P)时,其中i=3-j,S为群Gi中的元,P=[h1]Pj+Ppubj,h1为[1,n-1]内整数,第一方和第二方按如下方式进行配对运算u=ei(S,P)的协同计算:
第一方将S、Q1、Q2发送给第二方;
第二方计算g1=ei(S,Q1),g2=ei(S,Q2),然后将g1、g2发送给第一方;
第一方利用g1、g2计算得到u=ei(S,P)的值;
第一方利用g1、g2计算得到u=ei(S,P)的值的方式包括:
若Q2的计算式为Q2=[ck]Pj+[c]Ppubj,则计算t=((h1-k)b-1)modn,u=(g1^t)(g2^c-1),或者,计算t=(c(h1-k)b-1)modn,u=((g1^t)g2)^c-1;
若Q2的计算式为Q2=[k]Pj+[c]Ppubj,则计算t=((h1-c-1k)b-1)modn,u=(g1^t)(g2^c-1),或者,计算t=((ch1-k)b-1)modn,u=((g1^t)g2)^c-1;
在以上计算中,^表示幂运算,b-1为b的模n乘法逆,c-1为c的模n乘法逆。


4.一种基于权利要求3所述的针对资源受限装置的配对运算方法的针对资源受限装置的配对运算系统,其特征是:
所述配对运算系统包括资源受限装置和非资源受限装置,当资源受限装置需要进行配对运算u=ei(S,P)时,所述资源受限装置作为第一方,所述非资源受限装置作为第二方,按所述针对资源受限装置的配对运算方法完成配对运算u=ei(S,P)的计算。


5.一种针对资源受限装置的配对运算方法,其特征是:
所述方法涉及双线性映射e:G1×G2→GT;群G1、G2为加法群,群GT为乘法群;群G1、G2、GT的阶为素数n;群G1、G2的生成元分别为P1、P2;
基于双线性映射e定义:
e1(V,T)=e(V,T),其中V是群G1中的元,T是群G2中的元;
e2(V,T)=e(T,V),其中V是群G2中的元,T是群G1中的元;
所述方法涉及两方:第一方和第二方,其中第一方为资源受限装置,第二方为非资源受限装置;
第一方有[1,n-1]内的整数秘密c,计算有Q1=[c]Pj,Q2=[c]Ppubj,其中[]表示对群G1和G2中的元的多倍点加运算,j...

【专利技术属性】
技术研发人员:龙毅宏
申请(专利权)人:武汉理工大学
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1