基于身份的代理重加密方法和系统的制作方法_3

文档序号:8322030阅读:来源:国知局
息M=C' ie(C' 2,H(K))。
[0085]实施例二
[0086]该实施例提供了一种基于身份的代理重加密系统,其具体结构如图2所示,包括如下的模块:密钥生成中心210、消息发送方220、委托者230、代理者240和受委托者250,
[0087]所述的密钥生成中心210,用于选择安全参数,基于所述安全参数生成并公开系统参数,根据所述系统参数和委托者、受委托者的身份信息分别生成委托者230、受委托者250的私钥,并将委托者230、受委托者250的私钥分别发送给所述委托者230、受委托者250 ;
[0088]所述的消息发送方220,用于加密明文信息得到密文消息,将所述密文消息发送给委托者230 ;
[0089]所述的委托者230,用于利用所述受委托者250的身份信息和委托者230的私钥生成重加密密钥,将所述重加密密钥和密文消息发送给代理者240 ;
[0090]所述的代理者240,用所述重加密密钥重新加密所述密文消息,得到重加密密文,将所述重加密密文发送给受委托者250 ;
[0091]所述的受委托者250,利用自己的私钥解密重加密密文,计算得到所述明文信息。
[0092]进一步地,所述的密钥生成中心210,具体用于基于安全参数k,选取定义在素数阶有限域上的椭圆曲线E,构造椭圆曲线E上的一个非对称性配对e: G1X G2 — Gt,,其中G1和G2为素数阶P的循环群,G1的生成元为P,G2的生成元为Q,随机选取参数α,β,Y e Zp,其中Zp=(0,1,…,p-1),选取安全的哈希函数H:GT — G2 ;
[0093]记P1 = α P,Q1 = a Q, R1 = y P, S1 = Y Q, v = e (P, Q) α 0 ;
[0094]设定主密钥为α β Q,公开参数为(G1, G2, e,P,Q,P1, Q1, R1, S1, Η, v);
[0095]设用户的身份Uid e Zp,其中Zp={0,1,..., p-1},随机选取Zp中非零参数r,计算(I1=Ct β Q+rUjnQi+rS^ d2=rQ,所述用户为委托者230或者受委托者250 ;
[0096]生成所述用户的私钥为d2),将所述用户的私钥dID传输给所述用户。
[0097]进一步地,所述的消息发送方220,具体用于选取待发送的明文信息M,其中M e Gt,
[0098]随机选取非零参数s e Zp,计算C1 = Mvs, C2 = sP, C3 = SUaPJsR1,其中Ua为委托者230的身份信息,
[0099]计算密文消息为CT = (C1, C2, C3),将密文消息CT发送给委托者230。
[0100]进一步地,所述的委托者230,具体用于随机选取消息K e Gt,和参数t e Zp,用受委托者250的身份Ub来加密消息K得到(C4, C5, C6),其中C4=Kvt,,C5=tP, C6=tUBP1+tR1,
[0101]将重加密密钥dA —B=(d' 1; d2,C4, C5, C6)和密文消息CT = (C1, C2, C3)发送给代理者240,其中d' I = di+H⑷,(Cl1,d2)为委托者230的私钥。
[0102]进一步地,所述的代理者240,具体用于计算C' ! = C1e(C3,d2)/e(C2,d/ J ,用所述重加密密钥七1重新加密所述密文消息CT,得到重加密密文(C' ,,C1 2,C4,C5,C6),其中CT 2=C2,将所述重加密密文发送给受委托者250。
[0103]进一步地,所述的受委托者250,用于收到所述重加密密文(C' ,,C1 2, C4, C5, C6)后,对于部分密文消息(dB1,dB2)为受委托者250的私钥。
[0104]计算得到明文信息M=C' ie(C' 2,H(K))。
[0105]用本发明实施例的系统进行基于身份的代理重加密的具体过程与前述方法实施例类似,此处不再赘述。
[0106]综上所述,本发明实施例在现有的基于身份的加密方案基础上构造出了基于身份的重加密方案,委托者即密文接收者可以将重加密密钥给代理者,代理者使用重加密密钥对密文消息进行重加密,受委托者可以使用自己的私钥对重加密密文进行解密得到明文信息。从而实现了代理重加密功能。代理重加密可以应用于邮件,委托,访问控制等。此方案是易于实现,而且代理者不能获得委托者的密钥和明文信息,受委托者可以通过自己的私钥从新的密文中获取明文信息,是安全的而且有效的。
[0107]本发明实施例可以实现传递的重加密功能,即受委托者可以继续将重加密密文传递给新的受委托者,仅使用同样的方式即可,新的密文消息长度会增加。
[0108]本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
[0109]通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0110]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0111]以上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
【主权项】
1.一种基于身份的代理重加密方法,其特征在于,包括: 密钥生成中心选择安全参数,基于所述安全参数生成并公开系统参数,根据所述系统参数和委托者、受委托者的身份信息分别生成委托者、受委托者的私钥; 消息发送方加密明文信息得到密文消息,将所述密文消息发送给所述委托者,所述委托者利用受委托者的身份信息和委托者的私钥生成重加密密钥,将所述重加密密钥和密文消息发送给代理者; 所述代理者用所述重加密密钥重新加密所述密文消息,得到重加密密文,将所述重加密密文发送给受委托者; 所述受委托者利用自己的私钥解密所述重加密密文,计算得到所述明文信息。
2.根据权利要求1所述的基于身份的代理重加密方法,其特征在于,所述密钥生成中心选择安全参数,基于所述安全参数生成并公开系统参数,包括: 密钥生成中心基于安全参数k,选取定义在素数阶有限域上的椭圆曲线E,构造椭圆曲线E上的一个非对称性配对O = G1XG2 — Gt,其中G1和G2为素数阶P的循环群,G1的生成元为P,G2的生成元为Q,随机选取参数α,β,y G Ζρ,其中Ζρ = {0,1,…,p_l},选取安全的哈希函数H:GT —G2 ;记 P1 = α P,Q1 = a Q,R1 = Y P, S1 = Y Q, V = e (P,
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1