[发明专利]一种基于KP‑ABE的有效可验证的公钥可搜索加密方法有效
申请号: | 201410316818.4 | 申请日: | 2014-07-03 |
公开(公告)号: | CN104038349B | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | 马华;刘鹏亮;王剑锋;聂海新 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30;H04L29/06 |
代理公司: | 北京科亿知识产权代理事务所(普通合伙)11350 | 代理人: | 汤东凤 |
地址: | 710071 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于KP‑ABE的有效可验证的公钥可搜索加密方法,该方法包括可信权威中心、数据拥有者、云服务器、数据用户;可信权威中心为所有云用户生成证书;数据拥有者外包数据文件和关键词给云服务器;云服务器是提供存储服务并在收到用户发送的搜索请求后执行搜索操作;数据用户生成搜索口令发送给云服务器寻找目标文件。本发明首先为数据拥有者和云服务器生成了公私钥对,在发送密文关键词和搜索口令时,首先使用云服务器的公钥对其再加密,这样有效地防止了外部攻击者的离线猜测攻击行为,提高了信息和数据的安全性,而且,复杂度降低,大大减少了用户的运算量,效率得到了很大提高。 | ||
搜索关键词: | 一种 基于 kp abe 有效 验证 公钥可 搜索 加密 方法 | ||
【主权项】:
一种基于KP‑ABE的有效可验证的公钥可搜索加密方法,其特征在于,所述的基于KP‑ABE的有效可验证的公钥可搜索加密方法包括以下步骤:数据拥有者从外包的数据文件F中提取关键词w;并生成关键词w密文cph发送给云服务器;云服务器对数据拥有者发送来的数据提供存储服务并在收到用户发送的搜索口令tk后执行搜索,并将搜索结果和搜索证据返回给用户;数据用户用私钥sk生成搜索口令tk并发送给云服务器;在收到云服务器返回的搜索结果后,对结果的正确性和完整性进行验证;所述的基于KP‑ABE的有效可验证的公钥可搜索加密方法的具体方案为:可信权威中心运行RSA算法为云服务器和数据拥有者生成公私钥对:{(n1,e1),d1}和{(n2,e2),d2};数据拥有者通过数字签名来保证数据文件的完整性;用云服务器的公钥对密文关键词进行再加密来防止外部攻击者的离线猜测攻击,当数据拥有者用SYMEnc()加密算法对数据文件加密后外包给云服务器,服务器返回加密文件的地址,记为ID{Fi},这样包含关键词w的数据文件即可表示为IDw=ID{F1}||ID{F2}…||ID{Fi};具体包括:步骤一、初始化(1l):可信权威中心选择双线性对:e:G×G→GT,G和GT是阶为p的循环群,p为l比特长的素元,选择随机预言机模型下的哈希函数H1:{0,1}*→G;H2:{0,1}*→Zp是单向哈希函数,选择a,b,c←Zp,g←G,pm=(H1,H2,e,g,p,ga,gb,gc,G,GT),mk=(a,b,c)接着选取k个独立的哈希函数H′1,…,H'k,构造m比特的布隆过滤器BF发送给数据拥有者,为数据拥有者和云服务器生成公私钥对{(n1,e1),d1}和{(n2,e2),d2};步骤二、密钥生成(mk,T):可信权威中心执行Share(T,ac)算法,访问树T的每一个叶子节点都会得到有关秘密ac的部分分享qv(0),对每一个叶子节点v∈lvs(T),选取t←Zp,计算和Bv=gt,记私钥sk=(T,Av,Bv)|v∈lvs(T);步骤三、对关键词和文件地址的加密:(w,atts,ID(w)),数据拥有者通过可信权威中心发送的哈希函数生成布隆过滤器,BF←BFGen({H′1,…,H'k},{w1,…,wl}),对含有关键词w数据文件地址IDw和布隆过滤器BF,用SYMEnc()对称加密算法加密,其中对称密钥为sk1:BFEnc=SYM(BF),(IDw)Enc=SYM(IDw);用户数据拥有者对BFEnc和(IDw)Enc进行签名:对sk1用ABE()加密算法进行加密:C=ABE(sk1);在搜索结束后,属性满足访问策略的合法用户就可以解密C得到sk1,进而解密获取目标文件;选择r1,r2←Zp,计算F=(f1,f2)其中对每一个atj∈Atts,计算用服务器的公钥对W加密得到这样可记密文关键词为:cph=(Atts,W',WE,W0,Wj,F,A,B,C);步骤四、生成搜索口令(sk,w):选择s←Zp,对每个叶子节点v∈lvs(T)计算搜索口令为tok2=gcs,用服务器的公钥对tok2进行加密:记tk=(tok1,(tok2)Enc,T,(A′v,B′v)|v∈lvs(T));步骤五、搜索(tk,cph):服务器从cph中选取属性集S来满足搜索口令中指定的访问树,如果这样的集合S不存在,返回0;反之,对每一个atj∈S,计算att(v)=atj,v∈lvs(T),结合(T,Ev|att(v)∈S),计算出进而得到服务器用自己的私钥解密WE,(tok2)Enc得到W和tok2,如果e(W',tok1)Eroot=e(W,tok2),返回{W,F,A,B,C}给用户;否则,只返回A;步骤六、验证{W,F,A,B,C}:数据用户接收到云服务器返回的搜索结果后,进行验证操作。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410316818.4/,转载请声明来源钻瓜专利网。
- 上一篇:十一速双离合器变速器
- 下一篇:一种用于拖曳式线列阵的配重装置及拖曳式线列阵