[发明专利]云环境中支持图加密数据的关键词查询方法有效
申请号: | 201910517594.6 | 申请日: | 2019-06-14 |
公开(公告)号: | CN110222520B | 公开(公告)日: | 2022-12-02 |
发明(设计)人: | 高军涛;刘新相;刘伟杰;牛照程 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F21/62 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 王品华 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于云环境中支持图加密数据的关键词查询方法,主要解决现有技术中搜索模式泄漏和重建索引困难的问题,其实现方案为:用户为每一个节点构造索引;用户搜索关键字,并对每个关键字随机选取r/2个陷门发送到服务器,执行关键字查询;用户添加新节点,并通过服务器返回新节点的邻接点索引和不相关的节点索引,更新索引;用户删除节点,并通过服务器直接删除该节点索引和数据;用户重建索引,并通过日志信息重建图结构的索引。用户根据更新和重建的索引再进行关键字查询。本发明能保证搜索过程中搜索模式不被泄漏,且对索引进行有效的更新和重建时泄漏最少信息,可用于对存储在远程服务器上的图加密数据进行搜索。 | ||
搜索关键词: | 环境 支持 加密 数据 关键词 查询 方法 | ||
【主权项】:
1.一种基于云环境中支持图加密数据的关键词查询方法,其特征在于,包括如下:(1)初始化:(1a)用户根据本地的通信传输速度选择错误概率e,利用对称密钥生成算法,用户使用密钥种子K生成(r+y)个密钥(sk1,…,ski,…,skr+y),i∈(1,r+y),ski是第i个密钥,r是陷门的数量,由用户选择的错误概率
确定,y≥4,其中skr+1为数据密钥,skr+2为指针密钥,skr+3为数据摘要密钥,skr+4为日志密钥;(1b)使用日志算法构建节点日志(log1,…,logj,…,logn)其中logj是第j个节点的节点日志,j∈(1,n),n表示图中节点的总数,每个日志logj,包含节点j的标识符IDj、节点j的邻接点标识符集uIDj、邻接点出入度IO、数据摘要vj和数据项信息mj;(2)扫描日志信息,为每一个节点生成关键字集Sj,该关键词集合包含该节点的邻接点标识符和数据项中的唯一关键字,并使用基于布隆过滤器的方法为每一个节点构造索引Ij,j∈(1,n);(3)用户使用高级加密标准AES和数据密钥skr+1加密节点数据mj,得到数据密文cj;(4)对于节点j,用户选择未使用的数据存储地址addj,根据地址addj访问节点j的数据密文,使用置换函数π(·),计算数据指针pj,使用指针密钥skr+2加密数据指针得到指针密文cpj,使用数据摘要密钥skr+3加密数据摘要得到摘要密文cvj,并将对应于节点j的索引Ij、指针密文pj和数据摘要密文cvj一起存储;(5)用户初始化数组
并使用高级加密标准AES和日志密钥skr+4加密日志logj,得到日志密文CLj,将该日志密文存储在数组的第j个位置RAM[j]中,j∈(1,n);(6)用户将数组RAM和每一个节点的索引Ij、数据密文cj上传到远端服务器;(7)用户搜索包含关键字(w1,…,wt,…,wq)的节点,其中wt是第t个关键字t∈(1,q),q是用户搜索关键字的总数;计算陷门值
其中
是关键字wt的陷门,用户从每个关键字的r个陷门中随机选取r/2个陷门发送到服务器,服务器使用陷门检查每个节点的索引Ij,将满足陷门条件的数据返回给客户端,用户对数据进行筛选,删除错误数据,完成搜索;(8)添加节点数据:(8a)用户添加一个新的节点z,将节点z的标识符及其邻接点标识符保存在本地;(8b)构造该节点的日志信息logz,使用日志密钥skr+4加密logz得到日志密文CLz,将CLz上传到服务器;(8c)运行步骤(2)‑(4),为新的节点z构造索引;(8d)用户计算节点z的添加陷门U(z)并发送到服务器;服务器将对应于陷门值的节点数据返回给用户;(8e)用户向节点z的邻接点布隆过滤器中插入节点z的码字,向不相关节点的索引中随机插入数量小于r的字符“1”,更新数据摘要;(8f)重新选取数据存储地址,解密数据项部分,用户使用高级加密标准AES重新加密数据mx,得到数据密文cx;(8g)用户将更新完的节点数据存储到服务器,完成数据添加;(9)对于待删除节点d,用户将节点d的标识符保存在本地,用户计算陷门De(d)并发送到服务器,服务器收到陷门后,删除陷门De(d)对应的节点信息和日志密文;(10)结构重建:(10a)在服务器创建一个新的结构体;(10b)随机选取两条未重建的日志密文
返回给客户端,
其中
存储在RAM[j1]中,
存储在RAM[j2]中,用户解密日志数据得到两条日志
再根据本地保存的信息,添加节点以及删除节点的信息,更新日志并创建副本,使用安全的排序函数对两条日志进行排序,重新加密后上传到服务器;(10c)用户更换所有节点的唯一标识符IDj,再根据两条日志信息
运行步骤(2)‑(4),得到两条重建索引
和两个数据密文
并上传到服务器的新结构体中;10d)重复步骤(10b)‑(10c),使用数组
中的所有日志密文重建索引,用户根据重建索引查找出关键词。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910517594.6/,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置