当前位置: 首页 > 专利查询>吉林大学专利>正文

一种无双线性配对的代理重加密系统及加密方法技术方案

技术编号:19751056 阅读:16 留言:0更新日期:2018-12-12 05:43
本发明专利技术公开了一种无双线性配对的代理重加密系统,包括:系统参数设置模块、密钥生成模块、加密模块、代理重加密密钥生成模块、代理重加密模块和解密模块。本发明专利技术通过采用无双线性配对方法应用于代理重加密方法中,允许云存储平台在数据所有者的授权下将数据所有者加密的数据转发成数据共享者加密的数据,这样数据共享者直接从云存储中下载重加密的密文即可解密出数据,此过程节省了大量的资源,且云存储平台无法得到数据的任何信息。

【技术实现步骤摘要】
一种无双线性配对的代理重加密系统及加密方法
本专利技术涉及云计算
,更具体的说是涉及一种无双线性配对的代理重加密系统及加密方法。
技术介绍
近年来,随着云计算技术的发展应用以及万物互联进程的加深,云存储中的数据安全受到了广泛的关注。为了将云存储中的加密数据共享给其他用户,传统的做法是数据所有者从云存储中下载加密数据然后重新加密发给共享者,这个过程会消耗大量的网络和计算资源。为了提高计算效率,可以采取代理重加密算法解析加密数据,但是,现有的代理重加密方法通常采用双线性配对方法,其显著弊端在于计算量大,加密速度慢,大大降低了计算效率,无法适应当今大数据时代的需求,实用性大打折扣。因此,如何提供一种计算效率高、同时保证密文的不可延展性的无双线性配对的代理重加密系统及方法是本领域技术人员亟需解决的问题。
技术实现思路
有鉴于此,本专利技术提供了一种无双线性配对的代理重加密系统及加密方法,将无双线性配对的代理重加密方案与无证书签名方案相结合,解决了基于双线性配对的代理重加密的低效问题,在保证选择密文攻击安全性的同时,大大提高了计算效率,并保证密文的不可延展性。为了实现上述目的,本专利技术采用如下技术方案:一种无双线性配对的代理重加密系统,包括:系统参数设置模块、密钥生成模块、加密模块、代理重加密密钥生成模块、代理重加密模块和解密模块;其中,所述系统参数设置模块用于生成系统主密钥和系统公开参数,并将系统主密钥发送至所述加密模块,将系统公开参数发送至所述密钥生成模块、所述加密模块、所述代理重加密密钥生成模块、所述代理重加密模块和所述解密模块;所述密钥生成模块用于生成各个用户的公钥、私钥和身份信息,并将用户的公钥发送给所述加密模块和所述代理重加密密钥生成模块,将用户的私钥发送给所述代理重加密密钥生成模块和所述解密模块;所述加密模块用于生成要发送的明文消息的原始密文,将原始密文发送至所述代理重加密模块和所述解密模块;所述代理重加密密钥生成模块根据生成代理重加密密钥,并将代理重加密密钥发送至所述代理重加密模块;所述代理重加密模块根据系统参数设置模块发送的系统公开参数和密钥生成模块发送的用户身份信息对加密模块发送的原始密文和代理重加密密钥生成模块发送的代理重加密密钥进行签名认证,认证成功后将代理重加密密文发送至所述解密模块;所述解密模块用于判断接收到的密文是原始密文还是代理重加密密文,并恢复相应的明文信息。密钥生成模块所生成的用户的私钥包括委托方的私钥和受理方的私钥,用户的身份信息包括委托方的身份信息和受理方的身份信息。本专利技术还公开一种无双线性配对的代理重加密方法,包括以下步骤:S1、设定系统公开参数par和系统主密钥mk;S2、根据系统公开参数par,生成委托方的身份idi、受理方的身份idj、秘密值xi、公钥pki、委托方的私钥ski和受理方的私钥skj;S3、根据系统公开参数par、委托方的身份idi和公钥pki进行加密与签名,得到原始密文ci;S4、根据系统公开参数par、委托方的私钥ski和受理方的私钥skj生成代理重加密秘钥rkij;S5、根据系统公开参数par、原始密文ci、委托方的身份idi、受理方的身份idj和代理重加密密钥rkij,进行签名认证,认证成功后生成代理重加密密文cj,S6、判断所接收到的密文是原始密文还是代理重加密密文,并解密恢复相应的明文信息m。优选的,在上述一种无双线性配对的代理重加密方法中,S1具体包括以下步骤:S11、给定安全参数k,选取一个长度为k比特的素数q,G是Zq*的一个q阶子群,g是G的生成元;S12、选取四个哈希函数H1、H2、H3、和H4,H1:{0,1}*→Zq*,H2:{0,1}n0×{0,1}n1×G→Zq*,H3:G→{0,1}n0+n1,H4:{0,1}*×G→Zq*;其中no,n1是安全参数,明文空间为{0,1}n0;S13、随机选择系统主密钥mk,且满足mk∈Zq*,计算Z=mk*g,保密系统主密钥mk;S14、公开系统参数par{q,G,g,z,H1,H2,H3,H4,n0,n1}。优选的,在上述一种无双线性配对的代理重加密方法中,S2具体包括以下步骤:S21、输入系统公开参数par,给定委托方的身份标识idi、委托方的公钥pki和委托方的私钥ski;S22、随机选取xi,使xi∈Zq*;S23、设置委托方的公钥pki=gxi,设置委托方的私钥ski=xi。优选的,在上述一种无双线性配对的代理重加密方法中,S3具体包括以下步骤:S31、输入系统公开参数par、明文信息m、委托方的身份标识idi和委托方的公钥pki;S32、随机选取计算t=H2(m,r,pki),c1=pkit;S33、计算S34、选择需要签名的公私钥对(spki,sski),随机选取ui∈Zq*,计算Ui=g×ui,Di=ui+mk×H4(idi,Ui),Xi=xi×g,spki=(Xi,Ui),sski=(xi,Di),c3=sski;S35、运行签名算法,随机选取整数ei∈Zq*,计算Ei=ei×g,fi=H1(Ei||Xi||idi||m),hi=e/(xi+fi+Di),vi=xi/(xi+fi+Di),得到签名Si=(fi,hi,vi);S36、输出原始密文ci=(c1,c2,c3,Si)。优选的,在上述一种无双线性配对的代理重加密方法中,S4具体包括以下步骤:S41、输入委托方的私钥ski=xi和受理方的私钥skj=xj;S42、生成代理重加密秘钥rkij=skj/ski=xj/ximodq。优选的,在上述一种无双线性配对的代理重加密方法中,S5具体包括以下步骤:S51、输入系统公开参数par、原始密文ci、委托方的身份标识idi,受理方的身份标识idj和代理重加密密钥rkij;S52、签名验证,计算ai=H4(idi,Ui),检验hi×(Ui+Xi+ai*Z+fi*g)=Ei和vi×(Ui+Xi+ai*Z+fi*g)=Xi两式是否成立,若不成立则输出⊥,若成立则进行进行下一步骤;S53、计算S54、选择需要签名的公私钥对(spkj,sskj),随机选取uj∈Zq*,计算Uj=g×uj,Dj=uj+mk×H4(idj,Uj),Xj=xj×g,spkj=(Xj,Uj),sskj=(xj,Dj),c3’=sskj;S55、c4=pki;S56、运行签名算法,随机选取整数ej∈Zq*,计算Ej=ej×g,fj=H1(Ej||Xj||idj||m),hj=e/(xj+fj+Dj),vj=xj/(xj+fj+Dj),得到签名Sj=(fj,hj,vj);S57、输出代理重加密密文cj=(c1’,c2,c3’,c4,sj)。优选的,在上述一种无双线性配对的代理重加密方法中,S6具体包括以下步骤:S61、判断密文形式是原始密文还是重加密密文;S62、若密文为原始密文,则进行签名验证,计算ai=H4(idi,Ui),检验hi×(Ui+Xi+ai*Z+fi*g)=Ei和vi×(Ui+Xi+ai*Z+fi*g)=Xi两式是否成立,若不成立则输出⊥,若成立则进行下一步骤;S63、检验是否成立,若不成立则输出⊥,若成立则进行下一步骤;S64、计算输出明文消息m;S65、若密文为重加密密文,则进行签本文档来自技高网...

【技术保护点】
1.一种无双线性配对的代理重加密系统,其特征在于,包括:系统参数设置模块、密钥生成模块、加密模块、代理重加密密钥生成模块、代理重加密模块和解密模块;其中,所述系统参数设置模块用于生成系统主密钥和系统公开参数,并将系统主密钥发送至所述加密模块,将系统公开参数发送至所述密钥生成模块、所述加密模块、所述代理重加密密钥生成模块、所述代理重加密模块和所述解密模块;所述密钥生成模块用于生成各个用户的公钥、私钥和身份信息,并将各个用户的公钥发送给所述加密模块和所述代理重加密密钥生成模块,将各个用户的私钥发送给所述代理重加密密钥生成模块和所述解密模块;所述加密模块用于生成要发送的明文消息的原始密文,并将原始密文发送至所述代理重加密模块和所述解密模块;所述代理重加密密钥生成模块用于生成代理重加密密钥,并将代理重加密密钥发送至所述代理重加密模块;所述代理重加密模块用于生成代理重加密密文,并将代理重加密密文发送至所述解密模块;所述解密模块用于判断接收到的密文是原始密文还是代理重加密密文,并恢复相应的明文信息。

【技术特征摘要】
1.一种无双线性配对的代理重加密系统,其特征在于,包括:系统参数设置模块、密钥生成模块、加密模块、代理重加密密钥生成模块、代理重加密模块和解密模块;其中,所述系统参数设置模块用于生成系统主密钥和系统公开参数,并将系统主密钥发送至所述加密模块,将系统公开参数发送至所述密钥生成模块、所述加密模块、所述代理重加密密钥生成模块、所述代理重加密模块和所述解密模块;所述密钥生成模块用于生成各个用户的公钥、私钥和身份信息,并将各个用户的公钥发送给所述加密模块和所述代理重加密密钥生成模块,将各个用户的私钥发送给所述代理重加密密钥生成模块和所述解密模块;所述加密模块用于生成要发送的明文消息的原始密文,并将原始密文发送至所述代理重加密模块和所述解密模块;所述代理重加密密钥生成模块用于生成代理重加密密钥,并将代理重加密密钥发送至所述代理重加密模块;所述代理重加密模块用于生成代理重加密密文,并将代理重加密密文发送至所述解密模块;所述解密模块用于判断接收到的密文是原始密文还是代理重加密密文,并恢复相应的明文信息。2.根据权利要求1所述的一种无双线性配对的代理重加密系统,其特征在于,密钥生成模块所生成的用户的私钥包括委托方的私钥和受理方的私钥,用户的身份信息包括委托方的身份信息和受理方的身份信息。3.一种无双线性配对的代理重加密方法,其特征在于,包括以下步骤:S1、设定系统公开参数par和系统主密钥mk;S2、根据系统公开参数par,生成委托方的身份idi、受理方的身份idj、秘密值xi、公钥pki、委托方的私钥ski和受理方的私钥skj;S3、根据系统公开参数par、委托方的身份idi和公钥pki进行加密与签名,得到原始密文ci;S4、根据系统公开参数par、委托方的私钥ski和受理方的私钥skj生成代理重加密秘钥rkij;S5、根据系统公开参数par、原始密文ci、委托方的身份idi、受理方的身份idj和代理重加密密钥rkij,进行签名认证,认证成功后生成代理重加密密文cj,S6、判断所接收到的密文是原始密文还是代理重加密密文,并解密恢复相应的明文信息m。4.根据权利要求3所述的一种无双线性配对的代理重加密方法,其特征在于,S1具体包括以下步骤:S11、给定安全参数k,选取一个长度为k比特的素数q,G是Zq*的一个q阶子群,g是G的生成元;S12、选取四个哈希函数H1、H2、H3、和H4,H1:{0,1}*→Zq*,H2:{0,1}n0×{0,1}n1×G→Zq*,H3:G→{0,1}n0+n1,H4:{0,1}*×G→Zq*;其中no,n1是由安全参数k所决定的安全参数,明文空间为{0,1}n0;S13、随机选择系统主密钥mk,且满足mk∈Zq*,计算Z=mk*g,保密系统主密钥mk;S14、公开系统参数par{q,G,g,z,H1,H2,H3,H4,n0,n1}。5.根据权利要求4所述的一种无双线性配对的代理重加密方法,其特征在于,S2具体包括以下步骤:S21、输入系统公开参数par,给定委托方的身份标识idi、委托方的公钥pki和委托方的私钥ski;S22、随机选取xi,使xi∈Zq*;S23、设置委托方的公钥pki=gxi,设置委托方的私钥ski=xi。6.根...

【专利技术属性】
技术研发人员:于银辉任嘉鹏杨莹潘昊
申请(专利权)人:吉林大学
类型:发明
国别省市:吉林,22

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

1