法律状态公告日
法律状态信息
法律状态
2020-07-21
授权
授权
2019-01-04
实质审查的生效 IPC(主分类):G06F21/62 申请日:20180628
实质审查的生效
2018-12-11
公开
公开
技术领域
本发明属于云计算安全技术领域,具体涉及一种在云环境下实现密文空间数据的访问控制和范围查询方法。
背景技术
云计算是学术界与工业界最为关注的下一代信息技术(InformationTechnology,IT)架构,它具有迄今为止众多已成熟应用于工业界的IT技术所不具备的诸多特性,诸如:按需获取自助式服务、无处不在的网络接入、独立于地点的资源池、资源的快速伸缩、按使用付费以及风险转嫁。云计算汇集了庞大的计算资源、存储资源以及其他服务资源,为用户提供了多种新颖便捷可靠的服务,给云服务提供商们带来了巨大的商机和利益。在诸多服务中,云存储服务由于其为用户提供了一种更为简便、高效以及可靠的数据管理方式,而成为广受学术界与工业界关注的焦点。用户可以将自己的海量数据存储于云服务器中,在需要的时候对这些数据进行存取操作。这一服务模式缓解了用户本地数据存储与维护的压力,并能让用户不受时间与空间的约束,按需存取这些数据。总之,这一服务模式为用户带来了极大的便利。
空间数据的范围查询已经被应用到许多现实场景中,由于近年来数据的爆炸式增长,越来越多的公司和企业倾向于将本地空间数据外包给云服务器,从而进一步降低自身的计算和存储开销。然而,由于云服务器并非是完全可信的第三方,如果空间数据仅以明文方式存储到云服务器中,云服务器能够轻易地获取用户的敏感信息,如居住地址、历史足迹等。为保证用户的隐私数据不被泄露,迫切需要设计出一种在云环境下实现密文空间数据的范围搜索方案。
然而,现有的云环境下实现密文空间数据的范围搜索方案存在以下几点问题:(a)在效率方面,目前的范围搜索方案其密文查询效率和存储开销线性增长于搜索范围,即随着查询范围的不断扩大,现有方案需要对该范围的所有密文进行匹配,除此之外,相应密文指令所需的存储空间也随之增加;(b)在安全性方面,现有的范围查询方案都不支持用户的权限分配,即默认合法用户享有对所有密文的访问权限,然而,在现实生活中,不同用户往往只能访问其相应授权的用户数据。
发明内容
本发明的目的是克服现有技术的不足,提供一种在云环境下实现密文空间数据的访问控制和范围查询方法。
本发明所提出的技术问题是这样解决的:
一种在云环境下实现密文空间数据的访问控制和范围查询方法,包括以下步骤:
步骤1.系统初始化:系统生成公共参数,并生成用于AES(高级加密标准)、安全内积运算和保序加密所需的密钥;
步骤2.生成数据索引:数据拥有者使用AES对原始空间数据加密并发送给云服务器;同时,为了提高密文范围查询的效率,数据拥有者使用安全内积运算和保序加密对每个数据生成一个与之关联的索引,其中所有密文索引以R-树的方式存储;
步骤3.生成搜索指令:用户根据其当前权限和需要查询的几何范围,使用安全内积运算和保序加密对当前几何范围进行加密,并将密文指令发送给云服务器;
步骤4.查询阶段:云服务器根据用户的搜索指令在R-树上进行高效搜索,并为用户返回符合条件的密文数据;
步骤5.解密阶段:用户使用数据拥有者预先发送的密钥对密文结果进行解密,最终获得当前几何范围下的密文查询结果。
本发明的有益效果是:
本发明提供了一种在云环境下高效的范围搜索方法,并实现合法用户的访问权限分配。为保证搜索过程中的安全性,本发明使用安全内积运算、多项式拟合技术和保序加密算法;为保证搜索过程的高效性,本发明使用R-树来缩小搜索区间并减少匹配时间。综上,本发明的有益效果如下:
1)本发明实现了云环境下高效的空间数据范围搜索。利用多项式拟合技术以及R-树来进一步减小搜索过程中的计算开销,除此之外,利用保序加密保证密文搜索的顺利进行;
2)本发明设计出一种新颖的用户访问控制策略。利用基于多项式的权限分配策略,使得特定用户只能访问其被授权的密文空间数据;
3)本发明提供空间数据的强安全性保护,包括原始空间数据的机密性、索引和搜索指令的不可分辨性。
附图说明
图1为多项式拟合示例图;
图2为R-树建立过程示意图;
图3为搜索指令生成示意图。
具体实施方式
下面结合附图和实施例对本发明进行进一步的说明。
本实施例提供一种在云环境下实现密文空间数据的访问控制和范围查询方法,包括以下步骤:
步骤1.系统初始化:系统生成公共参数,并生成用于AES、安全内积运算和保序加密所需的密钥;
步骤2.生成数据索引:数据拥有者使用AES对原始空间数据加密并发送给云服务器;同时,为了提高密文范围查询的效率,数据拥有者使用安全内积运算和保序加密对每个数据生成一个与之关联的索引,其中所有密文索引以R-树的方式存储;
步骤3.生成搜索指令:用户根据其当前权限和需要查询的几何范围,使用安全内积运算和保序加密对当前几何范围进行加密,并将密文指令发送给云服务器;
步骤4.查询阶段:云服务器根据用户的搜索指令在R-树上进行高效搜索,并为用户返回符合条件的密文数据;
步骤5.解密阶段:用户使用数据拥有者预先发送的密钥对密文结果进行解密,最终获得当前几何范围下的密文查询结果。
步骤1的具体过程如下:
输入安全参数λ,数据拥有者随机生成密钥
步骤2的具体过程如下:
步骤2-1.对于每一个空间数据点i(假设云服务器中空间数据的个数为K,1≤i≤K),首先利用密钥sk1对其进行AES加密,并将密文数据外包存储到云服务器中;
步骤2-2.数据拥有者为每个数据点的坐标(xi,yi)生成与之关联的密文索引:首先,生成明文索引
步骤3的具体过程为:
步骤3-1.当用户收到密钥ψ时,将会生成两个密文搜索指令
初始的搜索区域由两条曲线θ1和θ2围成,利用多项式拟合得到两条拟合曲线
U1′=(a0,a1,a2,…aN,-1,1,t,t2,…tκ,s1,s2,…sT)
U2′=(b0,…bN,-1,1,t,t2,…tκ,s1′,s2′,…sT′)
其中t代表用户的权限,(s1,s2,…sT)和(s1′,s2′,…sT′)为随机添加的噪声向量,其满足条件
步骤3*2.与生成数据索引的过程类似,二进制向量S和可逆矩阵
如果S[l]=0,被分割后的密文向量
此外,为了缩减搜索空间,本发明为拟合曲线做了一个外切矩形,并使用保序加密技术,用密钥sk2将该外切矩形的左下顶点ωll和右上顶点ωur分别加密成[ωll]和[ωur];显然,仅用两个顶点[ωll]和[ωur]足以表示整个加密矩形;最后,被加密的搜索指令Q*={Q1,Q2,[ωll],[ωur]}将会提交给云服务器。
步骤4的具体过程如下:
云服务器接收到加密后的索引Ri和加密后的搜索指令Q*后,将会遍历整个R-树,并找到和加密后的矩形([ωur],[ωll])相交的所有最深非叶子节点;具体遍历过程如下:
步骤4-1.对于存储在云服务器上任意非叶子节点
步骤4-2.云服务器对于任意非叶子节点Dm,若其满足
步骤4-3.云服务器找到一个和密文矩形([ωll],[ωur])相交的非叶子节点,对这个非叶子节点中包含的所有子节点(xi,yi),云服务器执行如下操作:
类似地有:
其中,权限多项式
因此如果同时满足条件
步骤5的具体过程如下:
当合法用户得到密文Ii,其利用数据拥有者事先发送给他的ASE加密密钥sk1,Ii解密,最终得到所需明文。
机译: 密文比较系统,密文比较方法,密文生成装置,密文比较装置以及密文生成装置和密文比较装置的控制方法和控制程序
机译: 非线性处理器,流密文加密设备,流密文加密设备,掩码处理方法,流密文加密方法,流密文加密方法和程序
机译: 密文解密授权系统,密文解密授权方式,密文转换设备,该设备的解密授权持有者和密文转换程序