[发明专利]一种CCA安全的可委托验证的代理重加密方法有效
申请号: | 201710206772.4 | 申请日: | 2017-03-31 |
公开(公告)号: | CN107086911B | 公开(公告)日: | 2020-04-07 |
发明(设计)人: | 詹宇;王保仓 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/32;H04L29/06;H04L29/08 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 韦全生;王品华 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提出一种CCA安全的可委托验证的代理重加密方法,用于解决现有技术存在的加密方法安全性不足的问题,实现步骤为:数据拥有者生成系统参数并计算自己的公私钥;数据接收者计算自己的公私钥;数据拥有者对明文进行第二层密文加密,并把结果上传至云服务器,同时计算重加密密钥并发送至云服务器;云服务器对第二层密文进行复合加密,并对结果签名,同时计算签名验证密钥,最后将第二层密文、公钥加密密文、签名值和签名验证密钥发送至数据接收者;数据接收者将收到的数据和公钥加密私钥发送至委托方;委托方对公钥加密密文进行合法性验证;委托方对重加密密文进行完整性及合法性验证;数据接收者根据验证结果决定是否解密密文。 | ||
搜索关键词: | 一种 cca 安全 委托 验证 代理 加密 方法 | ||
【主权项】:
一种CCA安全的可委托验证的代理重加密方法,其特征在于包括如下步骤:(1)数据拥有者根据自己的安全需求,生成系统参数param,包括:第一个群G中随机选择的七个成员g1,g2,h1,h2,u,v,w、加密参数L、四个哈希函数H0,H1,H2,H3、乘法循环群有限域和双线性映射e;(2)数据拥有者根据系统参数param中第一个群G中随机选择的成员g1、成员h1和乘法循环群计算数据拥有者公钥pki和数据拥有者私钥ski;(3)数据接收者根据系统参数param中第一个群G中随机选择的成员g1、成员h1和乘法循环群计算数据接收者公钥pkj和数据接收者私钥skj,并将数据接收者公钥pkj公布到公共信道中;(4)数据拥有者根据系统参数param中第一个群G中随机选择的成员g1、成员g2、成员u、成员v、成员w、加密参数L、哈希函数H0,哈希函数H1,和哈希函数H2,以及数据拥有者公钥pki,对数据接收者所需的明文消息m进行第二层密文加密,得到第二层密文C2,该第二层密文C2包括成员γc0c1c2c3c4c5,并将第二层密文C2发送至云服务器中存储;(5)数据拥有者根据系统参数param中第一个群G中随机选择的成员g1、成员g2和成员h2,计算重加密密钥rki→j并发送:数据拥有者从签名密钥空间随机选取签名密钥k,同时在公共信道查询数据接收者公钥pkj,并利用签名密钥k、数据接收者公钥pkj和数据拥有者私钥ski,计算重加密密钥rki→j,再将重加密密钥rki→j发送至云服务器;(6)云服务器对第二层密文C2进行复合加密,并对复合加密的结果进行签名,同时计算签名验证密钥K,实现步骤为:(6a)云服务器根据系统参数param中第一个群G中随机选择的成员h1和双线性映射e,以及重加密密钥rki→j,对第二层密文C2进行重加密,得到重加密密文C1,该重加密密文C1包括成员γ′,c′0,c′1,c′2,c′3;(6b)云服务器根据重加密密钥rki→j,对重加密密文C1进行公钥加密,得到公钥加密密文C';(6c)云服务器根据系统参数param中哈希函数H3,以及签名密钥k,计算公钥加密密文C'的签名值σ,σ=H3(C′)k;(6d)云服务器根据系统参数param中第一个群G中随机选择的成员g1,以及签名密钥k,计算签名验证密钥K,(7)云服务器将第二层密文C2、公钥加密密文C'、签名值σ和签名验证密钥K发送至数据接收者;(8)数据接收者将接收到的第二层密文C2、公钥加密密文C'、签名值σ和签名验证密钥K,以及数据接收者公钥加密私钥发送至委托方;(9)委托方对公钥加密密文C'的合法性进行验证:委托方根据系统参数param中第一个群G中随机选择的成员g1、哈希函数H3和双线性映射e,分别计算签名验证参数e(H3(C′),K)和签名验证参数e(σ,g1),然后判断签名验证参数e(H3(C′),K)和签名验证参数e(σ,g1)是否相等,若是,则公钥加密密文C'为合法,执行步骤(10),否则,公钥加密密文C'为非法,将判断结果返回至数据接收者,并执行步骤(13);(10)委托方根据数据接收者公钥加密私钥对公钥加密密文C'进行公钥加密解密,得到重加密密文C1;(11)委托方对重加密密文C1的完整性进行验证:委托方根据系统参数param中第一个群G中随机选择的成员g1、成员u、成员v、成员w、哈希函数H0和双线性映射e,首先计算用于完整性验证的中间参数ψ′,ψ′=H0(c′0,c′1),再计算完整性验证参数e(c′1,uψ′vγw)和完整性验证参数e(g1,c′3),然后判断完整性验证参数e(c′1,uψ′vγw)和完整性验证参数e(g1,c′3)是否相等,若是,则重加密密文C1为完整,执行步骤(12),否则,重加密密文C1为不完整,将判断结果返回至数据接收者,并执行步骤(13);(12)委托方对重加密密文C1进行合法性验证:第一判断,委托方判断重加密密文C1的成员γ′是否等于第二层密文C2的成员γ,第二判断,委托方判断重加密密文C1的成员c′0是否等于第二层密文C2的成员c0,第三判断,委托方判断重加密密文C1的成员c′1是否等于第二层密文C2的成员c1,第四判断,委托方判断重加密密文C1的成员c′3是否等于第二层密文C2的成员c5,然后委托方最终判断第一判断、第二判断、第三判断和第四判断的结果是否全部为是,若全部为是,则重加密密文C1为合法,将最终判断结果返回至数据接收者,并执行步骤(13),否则,重加密密文C1为非法,将最终判断结果返回至数据接收者,并执行步骤(13);(13)数据接收者根据接收的判断结果,决定是否解密密文,若验证的公钥加密密文C'为合法、重加密密文C1为完整且重加密密文C1为合法,则根据步骤(3)中计算的数据接收者私钥skj,对公钥加密密文C'进行公钥加密解密,得到重加密密文C1,再根据系统参数param中第一个群G中随机选择的成员h1、哈希函数H2和双线性映射e,以及数据接收者私钥skj对重加密密文C1进行重加密解密,得到明文消息m,否则不对密文进行解密。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710206772.4/,转载请声明来源钻瓜专利网。
- 上一篇:钉钉器
- 下一篇:一种多功能线束工装台