一种可证安全的可转换代理签密方法

文档序号:9352682阅读:244来源:国知局
一种可证安全的可转换代理签密方法
【技术领域】
[0001]本发明涉及云安全控制的、用于保护用户隐私的一种可证安全的可转换代理签密方法。
【背景技术】
[0002]云计算是通过网络为用户提供计算、数据存储、应用软件及系统平台等服务的一种计算模式,在云计算环境下,用户不在需要购买相应的基础设备与计算设备等硬件和软件,从而减少了项目前期投入成本以及后期管理成本。用户通过计算机网络从云计算中心获得所需服务资源、并支付相应的费用给云计算服务提供商。从如今云计算发展趋势来看,云计算具有广泛的应用前景。但是,随着云计算的发展,由欺诈行为为驱动的“黑云”则发展更快,导致云计算资源的拥有者、提供商与被供服务的用户间出现信任危机,阻碍了云计算成为主流服务平台。因此,云服务提供企业需要增强身份认证与欺诈识别能力以应对未经授权的接入、网络钓鱼、恶意软件,甚至是知识产权偷窃行为带来的安全威胁。提出的代理签密方法与一般的代理签密方案的主要区别是:原始签名人和代理签名人的公钥、代理证书和参数不能作为公开参数传输,也需要同消息一样进行恢复,本方法可以保证他们身份的保密性,以应用于云计算的认证协议。
[0003]本发明提出了一种可证安全的可转换代理签密方法。该方法主要由代理签名密钥的产生、签名、消息恢复与签名验证、签名转换等部分组成。

【发明内容】

[0004]为了保证云服务中用户身份保密性的目的,本发明提出了一种可证安全的可转换代理签名方法。该方法主要由代理签名密钥产生、签名、消息恢复与签名验证、签名转换组成。
[0005]密钥生成中心KGC选取大素数q,E(GFq)是定义在有限域GF(q)上的椭圆曲线,P是E(GFq)的生成元,I是安全参数,KGC为原始签名人、代理签名人、指定接收人产生公私钥对(X0属于z*q,y。= X0P),(Xd属于Z*q,yd= XdP)和 ^属于冗'^= xvP),H(): {O, I}*— {O, 1} 256是安全的Hash函数(例如SHA-2),Ee O和De O是以ε为密钥的安全对称加密和解密算法(例如AES) ο
[0006]1.一种可证安全的可转换代理签密方法,包括以下步骤:
[0007]步骤1、代理签名密钥产生;
[0008]1.1原始签名人随机选择he Z V k。是一个大素数,其中q为大素数集,从密钥生成中心KGC选取,KGC为原始签名人、代理签名人、指定接收人产生公私钥对(X。属于Z ',y0=xQP),(xd属于 Z ',yd= X dP)和匕属于 Z ',yv= X VP),x0, xd, xv都是一个大素数,Z '为大素数集中的正整数集,计算r。= kQP,P是E(GFq)的生成元,E(GFq)是定义在有限域GF(q)上的椭圆曲线,r。是素数k。与生成元P的乘积值,c ο= H(r0),HO: {O, 1}*一 {O, 1} 256是安全的Hash函数,其中C。是通过Hash函数将r。映射生成,构造代理证书mw,然后把(c。,mw)发送给代理签名人;
[0009]1.2代理签名人收到(cQ,mw)后,随机选择Ic1G Z *q,Ic1是一个大素数计算并发送r i=给原始签名人,其中巧和r。类似,是素数k占生成元P的乘积值;
[0010]1.3原始签名人验证qr1= O是否成立,其中q为大素数集,O为椭圆曲线上的无穷远点;如果成立,则计算r = T^r1, ο = k0+x0H (r | | mw | | yd | | y0), σ是公式k0+x0H(r |mj |yd I y0)的计算值,然后把(r。,。)发送给代理签名人;如果不成立,则要求代理签名人重新计算!T1= k P ;
[0011]1.4代理签名人计算r = IvkT1,通过下式验证(c。,mw, σ )的合法性:
[0012]C0= H(r o), C0= Η(σ P-y 0Η (r | | mw | | yd | | y0))
[0013]如果都成立,则代理签名人计算代理签名密钥Xs= o+k^HCr |mj |yd| y0),其对应的公钥为Y = r+H (r mw |yd| | y。)(y0+yd);否则要求原始签名人重新计算(r。,σ );
[0014]步骤2、签名;
[0015]代理签名人对消息m进行签名,随机选择a e Z*q, R1 = aP,R 2= ay v,c =a+xsH(R1 |yvI R2 |m),R3= E R2(c mj y0 |r| yd m);其中 a 是大素数,R1 是素数 a 与生成元P的乘积值,工;3是一个大素数,c公式a+xsH(R」|yv| R2 m)的计算值Er2是定义在有限域GF(R2)上的椭圆曲线,R3是在有限域GF(R2)上的椭圆曲线的一个点,最后,代理签名人把(R1, R3)发送给指定接收人;
[0016]步骤3、消息恢复与签名验证;
[0017]当指定接收人收到来自代理签名人的(R1 ;R 3)以后,计算R2= X ,c |mw| y0 |r| |yd| |m = R2(R3),恢复原始签名人和代理签名人的公钥7。和y d,代理证书mw和参数r,部分签名c以及签名的消息m,然后从KGC的公告牌中检查y。和y d的合法性,最后通过下面的式子验证签名:
[0018]cP = Ri+H (R11 I yw | | R21 | m) (r+H (r | | mw | | yd | | y0) (y0+yd))
[0019]如果成立,则签名有效;否则,签名无效;
[0020]步骤4、签名转换;
[0021]如果代理签名人事后抵赖,则所述接收人可以公开参数(c,r, mw, R1, R2, m, y0, yd),仲裁者通过验证式验证签名的有效性。
[0022]本发明的优点在于:原始签名人和代理签名人的公钥、代理证书和参数不能作为公开参数传输,也需要同消息一样进行恢复,这样可以保证他们身份的保密性,以应用于云计算的认证协议。
【附图说明】
[0023]图1为本发明的消息图
[0024]图2为本发明的流程图
【具体实施方式】
[0025]结合附图1、2,通过具体实施例对本发明进一步说明。
[0026]1.一种可证安全的可转换代理签密方法,包括以下步骤:
[0027]步骤1、代理签名密钥产生;
[0028]1.1原始签名人随机选择he Z *q,其中q为大素数集,从密钥生成中心KGC选取,KGC为原始签名人、代理签名人、指定接收人产生公私钥对(X。属于Z*q,Y0= x0P),(Xd属于Z V yd= X dP)和匕属于Z yv= X VP),Z*q为大素数集中的正整数集,计算r。=k0P, P是E(GFq)的生成元,E(GFq)是定义在有限域GF(q)上的椭圆曲线,C(j=H(r。),HO: {O, 1}*一 {O, 1} 256是安全的Hash函数,构造代理证书mw,然后把(c0, mw)发送给代理签名人;
[0029]1.2代理签名人收到(cQ,mw)后,随机选择Ic1G Z %计算并发送!T1= k ^给原始签名人;
[0030]1.3原始签名人验证qr1= O是否成立,其中O为椭圆曲线上的无穷远点;如果成立,则计算r = r0+r!, ο = k0+x0H (r mw |yd| |y。),然后把(r。,σ )发送给代理签名人;如果不成立,则要求代理签名人重新计算A= Ic1P ;
[0031]1.4代理签名人计算r = IvkT1,通过下式验证(c。,mw, σ )的合法性:
[0032]C0= H (r 0),C0= H ( σ P-y 0H (r | | mw | | yd | | y0))
[0033]如果都成立,则代理签名人计算代理签名密钥Xs= σ +k !+XdH (r mw |yd| I y。),其对应的公钥为Y = r+H (r |mw| |yd| | y。)(y0+yd);否则要求原始签名人重新计算(r。,σ );
[0034]步骤2、签名;
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1