[发明专利]基于IP签名的代理重签名方法有效
申请号: | 201611136103.6 | 申请日: | 2016-12-12 |
公开(公告)号: | CN106789066B | 公开(公告)日: | 2019-09-24 |
发明(设计)人: | 李慧贤;邵璐;韩智鹏;庞辽军 | 申请(专利权)人: | 西北工业大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/08 |
代理公司: | 西北工业大学专利中心 61204 | 代理人: | 王鲜凯 |
地址: | 710072 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 ip 签名 代理 方法 | ||
1.一种基于IP签名的代理重签名方法,其特征在于包括以下步骤:
步骤一、系统参数生成;
系统管理者选择阶为2p的有限域K,系统管理者选择三个正整数n、u和q;
其中,p表示系统管理者选取的正整数,K表示运算所在的有限域,u表示二次多项式方程组阶数的正整数,n表示二次多项式方程组变量个数的正整数,q表示哈希函数H(x)运算后的二进制值的位数;
系统管理者选择密码学中的一个抗碰撞的哈希函数H(x):{0,1}*→{0,1}q;
系统管理者选择具有n个变量的u阶二次多项式方程组Q,其形式为:
Q:;
其中,xi,xj表示多项式方程组的变量,γijk表示二次项的系数,μik表示一次项的系数,δk表示常数项;
系统管理者公布系统生成的参数(n,u,q,K,Q,H(x));
步骤二、密钥生成;
根据初始化赋值阶段由步骤一给定的二次多项式方程组Q,受托者选择秘密可逆仿射变换(Ma,Na),委托者选择秘密可逆仿射变换(Mb,Nb),其形式如下:
Ma:
Na:
Mb:
Nb:
其中,Ma表示受托者选择的具有u个变量的可逆仿射变换,Na表示受托者选择的具有n个变量的可逆仿射变换;Mb表示委托者选择的具有u个变量的可逆仿射变换,Nb表示委托者选择的具有n个变量的可逆仿射变换;是可逆仿射变换Ma和Mb的初始变量,是可逆仿射变换Na和Nb进行计算后生成的值;
受托者计算委托者计算其中,Aa表示受托者的部分公钥,Ab表示委托者的部分公钥;表示映射合成运算;
受托者选择秘密可逆仿射变换ska=(Sa,Ta)为签名私钥、委托者选择秘密可逆仿射变换skb=(Sb,Tb)为签名私钥,具体形式如下:
Sa:Sa(y1,y2,…,yu)=(y1′,y2′,…,yu′),
Ta:Ta(x1′,x2′,…,xn′)=(x1,x2,…,xn),
Sb:Sb(y1,y2,…,yu)=(y1′,y2′,…,yu′),
Tb:Tb(x1′,x2′,…,xn′)=(x1,x2,…,xn);
其中,ska表示受托者的私钥,Sa表示受托者选择的具有u个变量的可逆仿射变换的部分私钥,Ta表示受托者选择的具有n个变量的可逆仿射变换的部分私钥;skb表示委托者的私钥,Sb表示委托者选择的具有u个变量的可逆仿射变换的部分私钥,Tb表示委托者选择的具有n个变量的可逆仿射变换的部分私钥;yi(i=1,2,…,n)是可逆仿射变换Sa和Sb的初始变量,xi′(i=1,2,…,n)是可逆仿射变换Ta和Tb的初始变量,yi′(i=1,2,…,u)是可逆仿射变换Sa和Sb进行计算后生成的值,xi(i=1,2,…,u)是可逆仿射变换Ta和Tb进行计算后生成的值;
受托者通过计算得到受托者的另一部分公钥Ba,委托者通过计算得到委托者的另一部分公钥Bb;则受托者的公钥为pka=(Aa,Ba),委托者的公钥为pkb=(Ab,Bb);
其中,Ba表示与Aa同构的受托者的部分公钥;Bb表示与Ab同构的委托者的部分公钥;pka表示受托者的公钥,pkb表示委托者的公钥;
步骤三、重签名密钥生成;
重签名密钥为rka→b=(rk1,rk2,rk3,rk4),重签名密钥生成过程如下:
代理者随机选择四个秘密可逆仿射变换C、D、E、F发送给受托者,受托者计算一组值:
;
其中,C表示形如Ma的可逆仿射变换,E表示形如Sa的可逆仿射变换,D表示形如Na的可逆仿射变换,F表示形如Ta的可逆仿射变换;
受托者将计算结果(Z1,Z2,Z3,Z4)发送给委托者;委托者收到后计算一组值:
;
其中的“-1”为求逆运算;委托者将计算结果(Z1′,Z2′,Z3′,Z4′)发送给代理者;
代理者收到后计算一组值:
;
则得到重签名密钥为其中rka→b表示重签名密钥,rk1、rk2、rk3、rk4表示重签名的四个部分密钥;
步骤四、签名;
受托者输入待签名消息m,他的公钥对(Aa,Ba)、私钥对(Sa,Ta);受托者随机选择q对可逆仿射变换((S1′,T1′),(S2′,T2′),…,(Sq′,Tq′)),计算Si′(y1,y2,…,yu)=(y1(i),y2(i),…,yu(i)),Ti′(x1(i),x2(i),…,xn(i))=(x1,x2,…,xn),i=1,2,…,q;其中,yj(j=1,2,…,u)是可逆仿射变换Si′的初始变量,xj(i)(j=1,2,…,n)是可逆仿射变换Ti′的初始变量,yj(i)(j=1,2,…,u)是可逆仿射变换Si′进行计算后生成的值,xj(j=1,2,…,n)是可逆仿射变换Ti′进行计算后生成的值;
其次,受托者计算i=1,2,…,q;
受托者计算哈希值并计算(Si,Ti)值如下:
;
其中H[i]表示的二进制值中第i位比特位的二进制值,这里二进制位顺序采取从低位到高位的顺序;表示受托者计算出的签名中的哈希值部分;||表示链接运算;
最后受托者计算其中,Va表示消息m对应的受托者的签名;输出生成的签名Va;
步骤五、重签名;
代理者输入:签名Va,重签名密钥rka→b=(rk1,rk2,rk3,rk4),受托者的公钥(Aa,Ba),消息m;
验证签名正确性:代理者输入m,Va,(Aa,Ba),代理者首先对签名进行验证运算,计算:计算哈希值H′=H(m||C1′||C2′||…||Cq′)后,代理者将H′与签名Va中值进行对比;当时,签名通过验证,代理者进行下一步重签名生成;否则,输出⊥,结束运算;其中,⊥表示拒绝;
重签名生成:代理者输入签名Va和重签名密钥rka→b=(rk1,rk2,rk3,rk4),代理者进行计算:
代理者输出签名其中,Vb表示经过代理者转换后的对应消息m的委托者的签名;
步骤六、验证;
任意验证者输入待签名消息m,委托者的公钥(Ab,Bb),转换后的签名Vb;验证者进行计算:计算哈希值Hb′=H(m||C1b′||C2b′||…||Cqb′)后,将Hb′与签名Vb中值进行对比;当时,签名通过验证,即代理重签名验证成功;否则,输出⊥。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611136103.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:蒽油加氢注硫装置
- 下一篇:一种天然香料制备设备