一种无证书广义代理签密方法_2

文档序号:8499875阅读:来源:国知局
或签密人的身份、公钥、消息类 型和有效期等信息;原始签名或签密人A把代理授权0= (m,,U,V)通过公开信道传送给 代理签名或签密人P,P可W通过验证e(V,巧=e(Qa,U+hsPKA+hjPpJ等式来检验代理授权 曰是否有效,如果无效,则要求原始签名或签密人重新生成代理授权;
[0026] 所述步骤5广义代理签密具体包括:
[0027] 假设代理签名或签密人P想要给接收人B发送广义代理签密消息;设消息 MGUur,tagGUU};代理签名或签密人P首先计算f(IDB),当f(IDB) =0时 令tag=0,否则令tag=1;随机选取eZ;,计算R=巧,T=e(Ppub,Qb)t?tas,h4= tag?H4化T,巧Kb,IDp,PKp,IDb,PKb),S=M?h,,hs=H^ (m,,S,R,IDp,PKp,ID^,PK^),he= H3(nv,S,R,IDp,PKp,IDb,PKb),X=V+ (t+hsXp)Qp+heDp,输出0p=(mw,U,R,S,)(,tag)作为广 义代理签密文,其中?表示异或运算;
[002引 (1)代理签名模式姻果tag= 0,则0p= (m,,U,R,S=M,)(,tag= 0)为代理签 名;
[002引 似代理签密模式姻果tag=1,则0p= (m,,U,R,S,)(,tag)为代理签密;
[0030] 所述步骤6广义代理解签密具体包括:
[003U接收人B计算h2=H2(nv,U,IDa'PKa),ti3=H3(nv,U,IDa'PKa),hs=H2(m,,S,R,IDp,PKp,IDb,PKb),he=H3(m,,S,R,IDp,PKp,IDb,PKb);
[003引(1)tag= 0 ;接收人B验证e化巧=e(Qa,U+hsPVhsPp血)e(Qp,R+h日PKp+hePpJ是 否成立,不成立则返回丄表示拒绝;否则接受该代理签名0P= (m,,U,R,S,X,tag);
[003引(2)tag= 1 ;接收人B验证e化巧=e(Qa,U+hsPVhsPp血)e(Qp,R+h日PKp+hePpJ是 否成立,不成立则返回丄表示拒绝;否则接受该代理签密0p= 011,,口,氏5,乂,*3扣,计算114 =H4化e化Db),XbR,IDp,PKp,IDb,PKb),恢复消息M=S?&4。
[0034] 由于采用了上述技术方案,本发明的有益效果是:
[00巧]1、代理签名或签密人只需使用一个算法和一对密钥就可实现代理签名和代理签 密两项功能;
[0036] 2、基于无证书密码体制实现,既不存在密钥托管问题又降低了公钥管理的高昂费 用;
[0037] 3、实现了可公开验证的认证性,验证等式中的所有参数都是已知的或可计算的, 发生纠纷时任何人都能在不泄露任何秘密信息的情况下对广义签密文进行有效性验证;
[0038] 4、原始签名或签密人和代理签名或签密人之间不需要安全信道,降低了系统实现 的复杂性。
【附图说明】
[0039] 图1是本发明无证书广义代理签密方法的流程图;
[0040] 图2是本发明无证书广义代理签密方法的处理流程示意图。
【具体实施方式】
[0041] 下面结合附图对本发明做详细描述。
[0042] 如图1、2所示,本发明提供了基于无证书的广义代理签密方法,在所述广义代理 签密方法的应用场景中,原始签名或签密人授权一个他信任的代理签名或签密人代表他进 行签名或签密。对于敏感数据,代理签名或签密人可W使用代理签密方法;对于其它信息, 他可W使用代理签名方法。代理签名或签密人只需保存一对密钥和只使用一个算法,降低 了密钥的管理费用和系统实现的复杂性。本发明的具体过程如下:
[0043] 步骤1、系统初始化。
[0044] 安全参数k为整数,生成元为P的一个加法循环群Gi和一个乘法循环群G2,两 个群的阶都为素数q。e:GiXGi-G2为一个双线性映射。定义四个安全的化sh函数 巧:{〇,ir^《,电巧:脚r一Z;,町!〇,ir斗〇,1!"'。其中{〇,U*表示任意比特长的二进制序 列组成的集合,诗表示去掉单位元所得到的加法群,与是由所有大于等于1且小于q的正 整数组成的有限域,{〇, 1}-表示比特长为m的二进制序列组成的集合,m为预设参数,表示 消息的比特长度。一个特殊函数f(ID),其中IDG{〇,ir为用户身份;如果身份为空,令 f(ID) =0,否则令f(ID) =1。密钥生成中屯、KGC随机选取sez;作为主私钥,计算Ppub= sP作为主公钥。公开系统参数为{e,Gl,G2,P,Ppub,m,Hl,H2,H3,H4,faD)},保密主密钥s。
[0045] 步骤2、部分私钥生成。
[0046] KGC为原始签名或签密人计算部分私钥Da=sQA,其中Qa=H1(IDa);为代理签名 或签酱人计算部分私钥Dp=sQP,其中Qp=H1(IDp);为接收人计算部分私钥〇B=sQB,其中 Qb=Hi(IDb)。
[0047] 步骤3、用户密钥生成。
[0048]用户随机选取秘密值,计算公钥PKi=XiP,并设置完整私钥为SKi= 化,Xi)。则原始签名或签密人的秘密值为Xa,公钥为PKa,完整私钥为SKa=值a,Xa);身份为IDp的代理签名或签密人的秘密值为X P,公钥为PKp,完整私钥为SKp=值P,Xp);身份为IDb 的接收人的秘密值为Xb,公钥为PKb,完整私钥为SKb=值B,Xb)。
[0049] 步骤4、代理授权生成。
[0050] 原始签名或签密人A随机选取,'EZ;,计算u=rP,h2=H2(m,,U,IDA,PKA),ti3= &(m,,U,IDa,PKa),V= (r+hsXA)QA+hsDA,其中为所述原始签名或签密人给代理签名或签密 人的授权证书,m,中明确说明原始签名或签密人和代理签名或签密人的身份、公钥、消息类 型和有效期等信息;原始签名或签密人A把代理授权0=(m,,U,V)通过公开信道传送给 代理签名或签密人P。P可W通过验证e(V,巧=e(Qa,U+hsPKA+hjPpJ等式来检验代理授权 曰是否有效,如果无效,则要求原始签名或签密人重新生成代理授权。
[0051] 步骤5、广义代理签密。
[0052] 假设代理签名或签密人P想要给接收人B发送广义代理签密消息;设消息 MGUur,tagGUU};代理签名或签密人P首先计算f(IDB),当f(IDB) =0时 令tag= 0,否则令tag= 1 ;随机选取feZ;,计算R=巧,T=e(Ppub,Qb)t?tas,h4= tag?H4化T,巧Kb,IDp,PKp,IDb,PKb),S=M?A, ,hs=H^ (m,,S,R,IDp,PKp,ID^,PK^),he= H3(nv,S,R,IDp,PKp,IDb,PKb),X=V+ (t+hsXp)Qp+heDp,输出0p=(mw,U,R,S,)(,tag)作为广 义代理签密文,其中?表示异或运算。
[005引代理签名模式:如果tag= 0,则0p=(mWU,R,S=M,X,tag= 0)为代理签名。 [0054] 代理签密模式:如果tag= 1,则0p=(mWU,R,S,X,tag)为代理签密。
[00巧]步骤6、广义代理解签密。
[005引接收人B计算h2=H2(nv,U,IDa,PKa),ti3=H3(nv,U,IDa,PKa),hs=H2(m,,S,R,IDp,PKp,IDb,PKb),he=H3(m,,S,R,IDp,PKp,IDb,PKb);
[0057] (1)tag= 0 ;接收人B验证e化巧=e(Qa,U+hsPVhsPp血)e(Qp,R+h日PKp+hePpJ是 否成立,不成立则返回丄表示拒绝;否则接受该代理签名〇P= (m,,U,R,S,X,tag);
[005引(2)tag= 1 ;接收人B验证e化巧=e(Qa,U+hsPVhsPp血)e(Qp,R+h日PKp+hePpJ是 否成立,不成立则返回丄表示拒绝;否则接受该代理签密0P= 011,,口,氏5,乂,*3扣,计算114 =H4化e化Db),XbR,IDp,PKp,IDb,PKb),恢复消息M= 。
[0059] 本
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1