[发明专利]一种云计算中安全最近邻检索方法在审
申请号: | 201710168365.9 | 申请日: | 2017-03-21 |
公开(公告)号: | CN107103031A | 公开(公告)日: | 2017-08-29 |
发明(设计)人: | 李睿 | 申请(专利权)人: | 东莞理工学院 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 成都环泰知识产权代理事务所(特殊普通合伙)51242 | 代理人: | 邓瑞 |
地址: | 523015 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算 安全 近邻 检索 方法 | ||
技术领域
本发明属于云计算、信息安全领域,尤其涉及一种云计算中安全最近邻检索方法。
背景技术
最近邻查询是很多领域中的基础问题之一,随着云计算和大数据时代的到来,把数据外包到云服务器变得非常流行,但是存储在云中的数据有可能被泄露和篡改,给数据的安全和隐私带来了巨大威胁,因此如何安全高效地进行最近邻查询是迫切需要解决的难题。在现有技术中,如基于保序加密的安全最近邻查询方法、一种非对称数量积保持的加密方法(ASPE)等,都不可以抵抗选择性明文攻击,数据的安全与隐私得不到保证;还有一类方法基于非对称加密并且需要线性级的查询时间,有的方法执行一次查询需要用户和云服务器进行多次通讯,随着数据量的增大,查询所需时间会越来越长,给用户带来不好的体验,还有一类方法需要依赖于安全的硬件,使得这类方法很难被推广。
综上所述,现有技术存在的问题是:现有的技术无法同时保证安全性和高效性。安全最近邻查询的主要难点在于:为了保证数据安全性,数据拥有者需要先对数据进行编码和加密,然后外包给云服务器。用户在需要查询数据的时候,同样需要对查询条件进行加密,云服务器需要在密文条件下进行计算,最后返回给用户加密的查询结果。由于数据量非常大,需要设计安全高效的索引结构,构建出不可区分的加密索引。现有的技术不能够保证安全性和高效性的原因一方面是其数据结构和算法不够安全,攻击者能通过选择性明文攻击等方式获取数据信息或者查询信息,另一方面就是其索引不够高效,执行查询操作的时间复杂度高,导致用户在查询数据的时候需要很长时间。
发明内容
针对现有技术存在的问题,本发明提供了一种云计算中安全最近邻检索方法。
本发明是这样实现的,一种云计算中安全最近邻检索方法,所述云计算中安全最近邻检索方法采用Voronoi图对2-D空间划分;采用两个数组构建单窝布鲁姆过滤器和多窝鲁姆过滤器两种安全数据结构,用多窝布鲁姆过滤器来构建不可区分的索引,单窝布鲁姆过滤器用来构建陷门,从而实现亚线性级的查询时间,并达到IND-CPA的安全要求;
所述Voronoi图对2-D空间划分记2-D空间数据集S={d1,d2,···,dn},2-D空间为Ω;具体包括:
第一步,根据已有数据集S,构建出Voronoi图V,V由n个不相交的凸多边形构成,记为{P1,P2,···,Pn};
第二步,待划分的区域为R,R的初始值为Ω,随机选取x维或者y维,把 R划分为两个矩形R1和R2,保证max(P(R1∩Ω),P(R2∩Ω))最小,其中P(Ri∩Ω)表示Ω中被Ri覆盖的凸多边形的个数,i=1或i=2;
第三步,递归执行第二步,对于每个矩形R,和划分后的矩形R1,R2满足以下条件:max(P(R1∩Ω),P(R2∩Ω))=P(R),则终止划分,其中P(R)表示Ω中被R覆盖的凸多边形的个数;
采用Q和D表示两个数组,长度都为nc,Q用来构建布鲁姆过滤器,D用来构建布鲁姆过滤器,Sq表示待存入Q中的元素集合,Sd表示待存入D中的元素集合;nc≥1.2×|Sq|;用H1,H2,···,Hm表示m个hash函数(m≥2),对于一个输入的元素,每个hash函数都输出[0,nc-1]中的一个位置ID,用h1,h2,···,hk表示另外k个不同的hash函数,对于一个输入的元素,输出[0,w-1]中的一个位置ID,其中w表示一个整数的位数。
进一步,所述Q的构建方法如下:
第一步,把Q中的每个单元Qi都初始化为0;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东莞理工学院,未经东莞理工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710168365.9/2.html,转载请声明来源钻瓜专利网。