[发明专利]一种支持动态更新及多关键字安全排序的可搜索加密方法有效
申请号: | 201510035076.2 | 申请日: | 2015-01-23 |
公开(公告)号: | CN104615692B | 公开(公告)日: | 2017-09-19 |
发明(设计)人: | 周由胜;陈亚琼;罗文俊;刘宴兵 | 申请(专利权)人: | 重庆邮电大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 重庆市恒信知识产权代理有限公司50102 | 代理人: | 刘小红 |
地址: | 400065 *** | 国省代码: | 重庆;85 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明请求保护一种支持动态更新、多关键字检索并且实现安全排序的可搜索加密方法,本发明采用红黑树作为索引结构,对文件集合生成未加密的索引,叶子节点存储文件向量,内部节点存储子节点的并运算结果。树中每个节点的向量用非对称标量积加密。在关键字检索时,客户端生成陷门,和红黑树的子节点进行匹配。根据叶子节点存储的词频进行计算,能够实现检索时返回top‑k文件。在增加和删除文件时,客户端发送文件名和操作,服务器返回相关联的节点,同时在服务器实现结构更新。客户端进行解密和更新数据,发给服务器。服务器实现索引的部分更新。本发明能够较好地解决云存储数据的动态更新问题,并且能够通过多关键字检索和安全排序提高用户的体验。 | ||
搜索关键词: | 一种 支持 动态 更新 关键字 安全 排序 搜索 加密 方法 | ||
【主权项】:
一种支持动态更新及多关键字安全排序的可搜索加密方法,其特征在于,包括以下步骤:101、初始化,在云存储的客户端,用户随机生成密钥{M1,M2,S,K},其中M1,M2为(d+1)×(d+1)的矩阵,S为(d+1)维的二进制向量,d为字典中关键字的个数,K为加密文件的对称密钥;102、当生成步骤101的密钥后,用户端根据字典和红黑树结构生成待上传文件集合的未加密索引,其中待上传文件集合由待上传文件Fi组成,其中还生成了文件的标识符即标志位数字;步骤102中用户端根据红黑树法生成待上传文件集合的未加密索引的步骤具体:2a)根据用户端待上传文件集合中的每个待上传文件Fi的关键字,建立一个字典,所述字典为所有待上传文件Fi去重之后的关键字集合;2b)根据步骤2a)中字典的关键字和该关键字在待上传文件Fi中的词频,对每个待上传文件Fi建立d+1维列向量P,d为字典中的关键字个数,Pj为关键字Wj的词频,且Pd+1=1,如果,Pj≠0则说明文件Fi中含有关键字Wj;如果Pj=0,则说明文件文件Fi中不含有关键字Wj;2c)根据步骤2b)对每个待上传文件Fi建立的列向量P,及步骤2a)中建立的关键字字典建立红黑树,红黑树的叶子节点存放的是文件的词频Pj,而内部节点存放的是两个待上传文件Fi列向量的或运算结果,叶子节点的父亲节点的计算规则是:如果叶子节点向量不为0,则取1;如果为0,则取0,内部节点为0,1向量,如果内部节点的向量某一位为1,表示至少有一条路线从此内部节点到某个叶子节点,这个叶子节点代表存储有标志位1的关键字的文件,该红黑树就是未加密的索引;103、对步骤102中未加密索引的待上传文件集合进行非对称标量积索引加密,生成节点的索引加密向量I;步骤103中非对称标量积索引加密的步骤具体为:3a)依据密钥中二进制(d+1)维向量S中不同位置的值,对红黑树的每个节点进行随机拆分,拆分之后为两个d+1维向量p1及p2,当向量Sj=1,即节点的第j位可以拆分,拆分之后两个随机数之和等于拆分之前第j位的值,即p1j+p2j=pj;当向量S某一位j为0,即节点的第j位不可以拆分,即p1j=p2j=pj;3b)对每个节点存放的两个向量p1,p2进行非对称标量积加密:(M1Tq1,M2Tq2);M1T表示矩阵M1的转置,M2T表示矩阵M2的转置;3c)此时加密之后的红黑树就是加密索引;104、文件加密,用户端完成了对待上传文件集合的索引加密后,对每个待上传文件进行加密,密钥为K,加密算法采用对称加密算法;105、数据外包,将步骤103加密之后的索引和对称加密后的待上传文件上传到云服务器上,云服务器会根据用户生成的陷门,在加密数据上进行计算;106、当用户端用户进行多关键字检索时,用户生成查询向量并进行加密后,和红黑树的子节点进行匹配,根据叶子节点存储的词频进行计算得分,实现检索时返回top‑k文件,即与要搜索的关键字最相近的前k个文件;107、当有已经上传的文件需要增加和删除时,用户向云服务器发送请求,包含操作的种类和要进行操作的文件的标识符,增加和删除的文件即为更新文件,云服务器根据文件的标识符进行结构更新,但不访问节点的索引加密向量I,同时返回更新文件所关联的节点和对应的索引加密向量I;根据返回的节点和要更新文件的文件向量,用户端在本地重新计算每个节点的向量,进行加密和结构更新,生成索引加密向量Ⅱ;用户端上传加密向量,服务器复制更新之后的索引加密向量Ⅱ到加密索引中。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆邮电大学,未经重庆邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510035076.2/,转载请声明来源钻瓜专利网。