CN106874379B - 一种面向密文云存储的多维区间检索方法与*** - Google Patents
一种面向密文云存储的多维区间检索方法与*** Download PDFInfo
- Publication number
- CN106874379B CN106874379B CN201710007109.1A CN201710007109A CN106874379B CN 106874379 B CN106874379 B CN 106874379B CN 201710007109 A CN201710007109 A CN 201710007109A CN 106874379 B CN106874379 B CN 106874379B
- Authority
- CN
- China
- Prior art keywords
- cloud storage
- data
- index
- ciphertext
- retrieval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种面向密文云存储的多维区间检索方法与***,在有效保护数据隐私的同时,可以实现海量密文数据的快速多维区间检索,属于信息安全技术领域。本发明的原理是使用R树为数据构造索引,并提出一种可以隐藏矩形相对位置的相交判定方法,基于该判定方法,云存储***可以快速搜索R树,且***露数据的排序特征、检索条件等。本***包括若干客户端和云存储***,所述客户端分别通过网络与所述云存储***连接。
Description
技术领域
本发明属于信息安全技术领域,具体涉及一种面向密文云存储的多维区间检索方法与***。
背景技术
由于云计算技术具有高可靠性、高可扩展性和按需服务等特点,越来越多的个人和组织机构将所需要处理的海量数据存储到云存储***,并在需要的时候访问数据。然而,数据隐私问题已成为阻碍云计算技术发展的主要原因之一。用户将数据存储到云存储***后,就失去了对数据的直接控制,云存储***中的数据面临着外部网络攻击和内部管理人员的双重威胁。为保护数据隐私,用户通常在本地将数据加密后再提交给云存储***,当需要访问数据时,用户将全部密文数据下载到本地后再解密。目前已有联想、Wuala、Spideroak等多个云服务提供商提供密文云存储服务。
密文检索技术可以实现用户在不解密密文数据的前提下查找所需的内容。一般情况下,云存储***没有解密密钥,无法直接对密文数据进行检索,用户只能下载全部密文数据,在本地进行解密后再判断其是否符合检索条件。这个过程不仅要求较大的带宽支持,还要求客户端具有较大的存储能力和计算能力,其代价是难以承受的。而在密文检索技术中,用户为数据生成安全索引,并将密文数据和安全索引一同存储到云存储***。当进行检索时,用户根据检索条件生成安全陷门,并提交给云存储***,云存储***根据安全陷门和安全索引进行查找,并将符合条件的密文数据返回给用户。密文检索技术可以有效降低传输代价以及对客户端的要求,且检索过程中不会泄露检索条件以及数据内容。
区间检索是数据库的基本检索类型之一,主要用于数值类属性,检索属性值满足给定区间的数据。对于密文多维区间检索,虽然可以使用密文单维区间检索方案对各属性分别进行检索后求结果的交集,但是这个过程检索效率较低且会泄露数据的单维隐私。目前针对密文多维区间检索的方案,普遍检索效率较低,而检索效率较高的方案则会泄露数据的排序特征。因此,设计并实现可有效保护数据隐私的安全索引,支持快速多维区间检索,对提高当前密文云存储***的安全性至关重要。
发明内容
针对上述问题需求,本发明提供了一种面向密文云存储的多维区间检索方法与***,可以实现海量密文数据的快速多维区间检索。
为了实现上述目的,本发明采用以下技术方案:
一种面向密文云存储的多维区间检索方法,通过客户端和云存储***实现,包括以下步骤:
1.客户端分别生成用于加解密数据的密钥以及加密索引和陷门的密钥。
优选地,客户端可以使用任意安全可靠的加密算法对数据进行加解密操作,如SMS4、AES256等。
优选地,客户端可以使用任意保留向量内积正负性的加密算法对索引和陷门进行加密操作,如ASPE。
2.客户端构造一个数对集合T,每个维度至少在集合中出现一次。
优选地,当维数n为偶数时,构造数对集合T={(1,2),(3,4),...,(n-1,n)};当维数n为奇数时,构造数对集合T={(1,2),(3,4),...,(n-2,n-1),(n,1)}。
3.客户端为数据构造一个R树索引(各节点对应一个超矩形),并将各节点表示为向量形式,生成初始索引。所述超矩形是指包围该节点的所有子树中的数据的最小n维矩形,其中n为维数。
优选地,节点对应的超矩形为P=[l1,h1]×[l2,h2]×…×[ln,hn],其中[li,hi]表示超矩形在i维上对应的区间;对于任意(i,j)∈T,根据li,hi,lj,hj构造向量Vi-j,A,Vi-j,B:
Vi-j,A=(1,li,lj,hi,hj,lihi+ljhj)T,
Vi-j,B=(1,li,lj,hi,hj,lilj,hihj,lihi,lihj,ljhi,ljhj,lihihj,ljhihj,liljhi,liljhj,liljhihj)T。
4.客户端将初始索引中的各向量分别进行加密,生成安全索引。
5.客户端将数据进行加密,然后将密文数据和安全索引发送给云存储***。
6.当用户需要检索属性值满足某个范围的数据时,客户端将检索条件表示为向量形式,生成初始陷门。
优选地,检索条件对应的超矩形为Q=[l′1,h′1]×[l′2,h′2]×…×[l′n,h′n],其中[l′i,h′i]表示超矩形在i维上对应的区间;对于任意(i,j)∈T,根据l′i,h′i,l′j,h'j构造向量Wi-j,A,Wi-j,B:
Wi-j,A=(-l′ih′i-l'jh'j,l′i,l'j,h′i,h'j,-1)T,
Wi-j,B=(l′il'jh′ih'j,-l′il'jh'j,-l′il'jh′i,-l'jh′ih'j,-l′ih′ih'j,l′il'j,h′ih'j,l′jh'j,l′ih'j,l'jh′i,l′ih′i,-h'j,-h′i,-l'j,-l′i,1)T。
7.客户端将初始陷门中的各向量分别进行加密,得到安全陷门。
8.客户端将安全陷门发送给云存储***。
9.云存储***在收到安全陷门后,检索安全索引。检索过程与R树相同,从根节点开始,若某非叶子节点与检索条件相交,则继续搜做其孩子节点,否则停止搜索该分支;若某叶子节点与检索条件相交,则将其包含的所有数据返回给客户端,否则忽略该叶子节点。
优选地,若节点P=[l1,h1]×[l2,h2]×…×[ln,hn]与检索条件Q=[l′1,h′1]×[l'2,h'2]×…×[l'n,h'n]相交,则对于任意(i,j)∈T,矩形Pi-j=[li,hi]×[lj,hj]与矩形Qi-j=[l′i,h′i]×[l'j,h'j]相交。如图1所示,若Qi-j的中心(o′i,o′j)位于矩形Si-j=[li-a,hi+a]×[lj-b,hj+b]内,则Pi-j与Qi-j相交,即将矩形相交问题转换为点包含问题。如图2所示,若(o′i,o'j)位于Si-j的外接圆内,且位于由Si-j划分的区域{I,III,V,VII,IX}内,则(o′i,o'j)位于Si-j内,即Pi-j与Qi-j相交。具体地,
Vi-j,A·Wi-j,A=r2-(oi-o′i)2-(oj-o'j)2,
Vi-j,B·Wi-j,B=(o′i-li+a)(o'j-lj+b)(hi+a-o′i)(hj+b-o'j),
若Vi-j,A·Wi-j,A≥0且Vi-j,B·Wi-j,B≥0,则Pi-j与Qi-j相交。综上,若对于任意(i,j)∈T,均满足Vi-j,A·Wi-j,A≥0且Vi-j,B·Wi-j,B≥0,则节点与检索条件相交。
10.客户端将云存储***发来的密文数据进行解密。
本发明提供的能保护数据隐私的快速密文多维区间检索***,该***包括若干客户端和云存储***,所述客户端分别通过网络与所述云存储***连接,所述客户端包括安全模块、索引操作模块、陷门操作模块,所述云存储***包括检索服务器和密文存储服务器,其中:
所述安全模块主要用于对数据进行加解密操作,以及对初始索引和初始陷门进行加密操作;
所述索引操作模块主要用于生成初始索引,由安全模块加密数据和初始索引后,将密文数据和安全索引传输给云存储***;
所述陷门操作模块主要用于生成初始陷门,由安全模块加密初始陷门后,将安全陷门发送给云存储***;
所述检索服务器主要用于存储安全索引,并根据安全索引和安全陷门进行检索操作,将检索到的数据对应的标识号码id发送给密文存储服务器;
所述密文存储服务器主要用于存储密文数据,并将检索服务器发来的标识号码id对应的密文数据返回给客户端。
进一步地,所述安全模块又包含数据加解密组件和索引陷门加密组件,其中:
所述数据加解密组件主要用于生成加解密数据所需的密钥和相关参数,并对需要加解密操作的数据进行加密和解密操作;
所述索引陷门加密组件主要用于生成加密初始索引和初始陷门所需的密钥和相关参数,并对需要加密操作的初始索引和初始陷门进行加密操作。
进一步地,所述索引操作模块又包含初始索引构造组件和传输组件,其中:
所述初始索引构造组件主要为用户的数据构造初始索引;
所述传输组件主要用于将安全模块加密后的密文数据和安全索引等信息发送给云存储***。
进一步地,所述陷门操作模块又包含初始陷门构造组件和传输组件,其中:
所述初始陷门构造组件主要为用户的检索条件构造初始陷门;
所述传输组件主要用于将安全模块加密后的安全陷门发送给云存储***。
本发明的有益效果如下:
本发明使用R树为数据构造索引,并提出一种可以隐藏矩形相对位置的相交判定方法。基于该判定方法,云存储***可以快速搜索R树,且***露数据的排序特征、检索条件等。该方法安全、高效,在有效保护数据隐私的同时,可以实现海量密文数据的快速多维区间检索。
附图说明
图1是本发明矩形相交问题的判定方法示意图;
图2是本发明点包含问题的判定方法示意图;
图3是本发明密文多维区间检索的场景图;
图4是本发明密文多维区间检索的***结构图;
图5是本发明密文多维区间检索的安全索引构造流程图;
图6是本发明密文多维区间检索的检索流程图;
图7是本发明实施例中构造的R树示意图。
具体实施方式
下面结合附图和实施例对本发明各个方面的特征进行详细描述,但不以任何方式限制本发明的范围。
如图3所示,本方法涉及用户、云存储***和攻击者三个实体:
1.用户:用户为数据所有者,将密文数据及安全索引提交给云存储***,并在检索时为检索条件生成安全陷门。
2.云存储***:云存储***包括检索服务器和密文存储服务器,其中,检索服务器用于存储安全索引,并根据安全陷门对安全索引进行检索操作,然后将满足条件的数据对应的标识号码id发送给密文存储服务器;密文存储服务器用于存储密文数据,并将检索服务器发来的标识号码id对应的密文数据返回给用户。
3.攻击者:攻击者可以窃听到用户和云存储***之间的交互信息,如安全索引、安全陷门、检索结果等,并根据这些信息对数据和检索条件进行猜测。
本发明提供的面向密文云存储的多维区间检索***的结构如图4所示,包括通过网络连接的一云存储***和若干客户端。云存储***包括检索服务器和密文存储服务器,每一客户端包括安全模块、索引操作模块、陷门操作模块。其中安全模块包含了数据加解密组件、索引陷门加密组件;索引操作模块包含了初始索引构造组件、传输组件;陷门操作模块包含了初始陷门构造组件、传输组件。
本发明提供的面向密文云存储的多维区间检索方法包括三个核心场景:
一、***初始化
客户端生成用于加解密操作的密钥。加解密数据可以使用任意安全可靠的加密算法,如SMS4、AES256等。加密索引和陷门可以使用任意保留向量内积正负性的加密算法,如ASPE等。
二、安全索引构造
本发明安全索引构造的流程如图5所示。具体地,假设数据的维数为n。
1.客户端构造数对集合T:当维数n为偶数时,构造数对集合T={(1,2),(3,4),...,(n-1,n)};当维数n为奇数时,构造数对集合T={(1,2),(3,4),...,(n-2,n-1),(1,n)}。
2.客户端为数据构造R树索引。
3.客户端将R树索引中的各节点表示为向量形式,生成初始索引。假设某节点对应的超矩形为P=[l1,h1]×[l2,h2]×…×[ln,hn],对于任意(i,j)∈T,根据li,hi,lj,hj构造向量Vi-j,A,Vi-j,B:
Vi-j,A=(1,li,lj,hi,hj,lihi+ljhj)T,
Vi-j,B=(1,li,lj,hi,hj,lilj,hihj,lihi,lihj,ljhi,ljhj,lihihj,ljhihj,liljhi,liljhj,liljhihj)T。
4.客户端将初始索引中的各向量依次加密,得到安全索引。
5.客户端对数据进行加密,并将密文数据和安全索引发送给云存储***。
三、区间检索
本发明检索流程如图6所示。具体地,
1.客户端将检索条件表示为向量形式,生成初始陷门。假设检索条件对应的超矩形为Q=[l′1,h′1]×[l'2,h'2]×…×[l'n,h'n],对于任意(i,j)∈T,根据l′i,h′i,l'j,h'j构造向量Wi-j,A,Wi-j,B:
Wi-j,A=(-l′ih′i-l'jh'j,l′i,l'j,h′i,h'j,-1)T,
Wi-j,B=(l′il'jh′ih'j,-l′il'jh'j,-l′il'jh′i,-l′jh′ih'j,-l′ih′ih'j,l′il'j,h′ih'j,l'jh'j,l′ih'j,l'jh′i,l′ih′i,-h'j,-h′i,-l'j,-l′i,1)T。
2.客户端将初始陷门中的向量依次加密,得到安全陷门。
3.客户端将安全陷门发送给云存储***。
4.云存储***收到安全陷门后,从根节点开始检索安全索引。对于非叶子节点,若对于任意(i,j)∈T,均满足Vi-j,A·Wi-j,A≥0且Vi-j,B·Wi-j,B≥0,则继续搜索其孩子节点,否则停止搜索该分支;对于叶子节点,若对于任意(i,j)∈T,均满足Vi-j,A·Wi-j,A≥0且Vi-j,B·Wi-j,B≥0,则将该节点所包含的所有数据返回给客户端。
5.客户端将云存储***发来的密文数据进行解密。
实施例:
在本实施例中,数据的维数为2,需要上传的数据共4个:{p1=(0,2),p2=(2,0),p3=(4,5),p4=(6,4)}。
本实施例的流程如下:
1.客户端分别生成用于AES256加密算法和ASPE加密算法的密钥及相关参数。
2.客户端构造数对集合T={(1,2)}。
3.如图7所示,客户端为需要上传的数据构造R树索引,树的出度为2。
4.根节点root所包含的数据为{p1=(0,2),p2=(2,0),p3=(4,5),p4=(6,4)},其对应的矩形为[0,6]×[0,5]。对于(1,2)∈T,构造向量Vroot,A,Vroot,B:
Vroot,A=(1,0,0,6,5,0)T,
Vroot,B=(1,0,0,6,5,0,30,0,0,0,0,0,0,0,0,0)T。
节点A所包含的数据为{p1=(0,2),p2=(2,0)},其对应的矩形为[0,2]×[0,2]。对于(1,2)∈T,构造向量VA,A,VA,B:
VA,A=(1,0,0,2,2,0)T,
VA,B=(1,0,0,2,2,0,4,0,0,0,0,0,0,0,0,0)T。
节点B所包含的数据为{p3=(4,5),p4=(6,4)},其对应的矩形为[4,6]×[4,5]。对于(1,2)∈T,构造向量VB,A,VB,B:
VB,A=(1,4,4,6,5,44)T,
VB,B=(1,4,4,6,5,16,30,24,20,24,20,120,120,96,80,480)T。
节点a所包含的数据为{p1=(0,2)},其对应的矩形为[0,0]×[2,2]。对于(1,2)∈T,构造向量Va,A,Va,B:
Va,A=(1,0,2,0,2,4)T,
Va,B=(1,0,2,0,2,0,0,0,0,0,4,0,0,0,0,0)T。
节点b所包含的数据为{p2=(2,0)},其对应的矩形为[2,2]×[0,0]。对于(1,2)∈T,构造向量Vb,A,Vb,B:
Vb,A=(1,2,0,2,0,4)T,
Vb,B=(1,2,0,2,0,0,0,4,0,0,0,0,0,0,0,0)T。
节点c所包含的数据为{p3=(4,5)},其对应的矩形为[4,4]×[5,5]。对于(1,2)∈T,构造向量Vc,A,Vc,B:
Vc,A=(1,4,5,4,5,41)T,
Vc,B=(1,4,5,14,5,20,20,16,20,20,25,80,100,80,100,400)T。
节点d所包含的数据为{p4=(6,4)},其对应的矩形为[6,6]×[4,4]。对于(1,2)∈T,构造向量Vd,A,Vd,B:
Vd,A=(1,6,4,6,4,52)T,
Vd,B=(1,6,4,6,4,24,24,36,24,24,16,144,96,144,96,576)T。
5.客户端将初始索引中的各向量依次加密,得到安全索引。
6.客户端对数据进行加密,并将密文数据和安全索引发送给云存储***。
7.假设用户的检索条件为Q=[0,1]×[0,5],客户端将检索条件表示为向量形式,生成初始陷门。对于(1,2)∈T,构造向量WA,WB:
WA=(0,0,0,1,5,-1)T,
WB=(0,0,0,0,0,0,5,0,0,0,0,-5,-1,0,0,1)T。
8.客户端将初始陷门中的各向量进行加密,得到安全陷门。
9.客户端将安全陷门发送给云存储***。
10.云存储***收到安全陷门后,从根节点开始检索安全索引。
计算根节点root,得到Vroot,A·WA=31,Vroot,B·WB=150,则继续搜索其孩子节点。
计算节点A,得到VA,A·WA=12,VA,B·WB=20,则继续搜索其孩子节点。
计算叶子节点a,得到Va,A·WA=6,Va,B·WB=0,则a包含的数据{p1}需要被返回给客户端。
计算叶子节点b,得到Vb,A·WA=-2,Vb,B·WB=0,则忽略该叶子节点。
计算节点B,得到VB,A·WA=-13,VB,B·WB=-90,则停止继续搜索该分支。
综上,检索结果为{p1},云存储***将其密文返回给客户端。
11.客户端解密返回的结果,得到{p1=(0,2)}。
表1为本文方案与Peng Wang等人发表于2013年ICDE(IEEE Internationalconference on data engineering)的方案(Secure and efficient range queries onoutsourced databases using R-trees)的对比。该表格分别给出了对于不同的维数,PengWang的方案与本文方案索引构造时间的比值,以及判定一个节点是否与检索条件相交的时间的比值。
表1.不同方案的数据对比
维数 | 索引构造时间的比值 | 相交判定时间的比值 |
2 | 2.00 | 2.22 |
3 | 1.50 | 2.33 |
4 | 2.00 | 3.12 |
5 | 1.67 | 3.07 |
6 | 2.00 | 3.18 |
本方案除R树外还可以使用kd树,但是kd树本身会泄露敏感数据的排序特征,因此推荐使用R树。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。
Claims (10)
1.一种面向密文云存储的多维区间检索方法,通过客户端和云存储***实现,包括以下步骤:
1)客户端分别生成用于加解密数据的密钥以及加密索引和陷门的密钥;
2)客户端构造一个数对集合T,当维数n为偶数时,构造数对集合T={(1,2),(3,4),...,(n-1,n)};当维数n为奇数时,构造数对集合T={(1,2),(3,4),...,(n-2,n-1),(n,1)};
3)客户端为数据构造一个R树索引,其中各节点对应一个超矩形,并将各节点表示为向量形式,生成初始索引;
4)客户端将初始索引中的各向量分别进行加密,生成安全索引;
5)客户端将数据进行加密,然后将密文数据和安全索引发送给云存储***;
6)当用户需要检索属性值满足某个范围的数据时,客户端将检索条件表示为向量形式,生成初始陷门;
7)客户端将初始陷门中的各向量分别进行加密,得到安全陷门;
8)客户端将安全陷门发送给云存储***;
9)云存储***在收到安全陷门后,检索安全索引,将检索到的密文数据发送给客户端;
10)客户端将云存储***发来的密文数据进行解密。
2.如权利要求1所述的一种面向密文云存储的多维区间检索方法,其特征在于,所述客户端使用任意安全可靠的加密算法对数据进行加解密操作,包括SMS4、AES256。
3.如权利要求1所述的一种面向密文云存储的多维区间检索方法,其特征在于,所述客户端使用任意保留向量内积正负性的加密算法对索引和陷门进行加密操作,包括ASPE。
4.如权利要求1所述的一种面向密文云存储的多维区间检索方法,其特征在于,步骤3)中,节点对应的超矩形为P=[l1,h1]×[l2,h2]×…×[ln,hn],其中[li,hi]表示超矩形在i维上对应的区间;对于任意(i,j)∈T,根据li,hi,lj,hj构造向量Vi-j,A,Vi-j,B:
Vi-j,A=(1,li,lj,hi,hj,lihi+ljhj)T,
Vi-j,B=(1,li,lj,hi,hj,lilj,hihj,lihi,lihj,ljhi,ljhj,lihihj,ljhihj,liljhi,liljhj,liljhihj)T。
5.如权利要求1所述的一种面向密文云存储的多维区间检索方法,其特征在于,步骤6)中,检索条件对应的超矩形为Q=[l′1,h′1]×[l'2,h'2]×…×[l'n,h'n],对于任意(i,j)∈T,根据l′i,h′i,l'j,h'j构造向量Wi-j,A,Wi-j,B:
Wi-j,A=(-l′ih′i-l'jh'j,l′i,l'j,h′i,h'j,-1)T,
Wi-j,B=(l′il'jh′ih'j,-l′il'jh'j,-l′il'jh′i,-l'jh′ih'j,-l′ih′ih'j,l′il'j,h′ih'j,l'jh'j,l′ih'j,l'jh′i,l′ih′i,-h'j,-h′i,-l'j,-l′i,1)T。
6.如权利要求1所述的一种面向密文云存储的多维区间检索方法,其特征在于,步骤9)中的检索过程与R树相同,从根节点开始,若某非叶子节点与检索条件相交,则继续搜索其孩子节点,否则停止搜索;若某叶子节点与检索条件相交,则将其包含的所有数据返回给客户端,否则忽略该叶子节点;判定节点和检索条件相交的方法是:对于节点P=[l1,h1]×[l2,h2]×…×[ln,hn]与检索条件Q=[l′1,h′1]×[l'2,h'2]×…×[l'n,h'n],若对于任意(i,j)∈T,矩形Pi-j=[li,hi]×[lj,hj]与矩形Qi-j=[l′i,h′i]×[l'j,h'j]相交,即Vi-j,A·Wi-j,A≥0且Vi-j,B·Wi-j,B≥0,则节点和检索条件相交。
7.一种采用权利要求1~6中任一权利要求所述方法的面向密文云存储的多维区间检索***,其特征在于,包括若干客户端和云存储***,所述客户端分别通过网络与所述云存储***连接,所述客户端包括安全模块、索引操作模块、陷门操作模块,所述云存储***包括检索服务器和密文存储服务器,其中:
所述安全模块主要用于对数据进行加解密操作,以及对初始索引和初始陷门进行加密操作;
所述索引操作模块主要用于生成初始索引,由安全模块加密数据和初始索引后,将密文数据和安全索引传输给云存储***;
所述陷门操作模块主要用于生成初始陷门,由安全模块加密初始陷门后,将安全陷门发送给云存储***;
所述检索服务器主要用于存储安全索引,并根据安全索引和安全陷门进行检索操作,将检索到的数据对应的标识号码id发送给密文存储服务器;
所述密文存储服务器主要用于存储密文数据,并将检索服务器发来的标识号码id对应的密文数据返回给客户端。
8.如权利要求7所述的一种面向密文云存储的多维区间检索***,其特征在于,所述安全模块包含数据加解密组件和索引陷门加密组件,其中:
所述数据加解密组件主要用于生成加解密数据所需的密钥和相关参数,并对需要加解密操作的数据进行加密和解密操作;
所述索引陷门加密组件主要用于生成加密初始索引和初始陷门所需的密钥和相关参数,并对需要加密操作的初始索引和初始陷门进行加密操作。
9.如权利要求7所述的一种面向密文云存储的多维区间检索***,其特征在于,所述索引操作模块包含初始索引构造组件和传输组件,其中:
所述初始索引构造组件主要为用户的数据构造初始索引;
所述传输组件主要用于将安全模块加密后的密文数据和安全索引发送给云存储***。
10.如权利要求7所述的一种面向密文云存储的多维区间检索***,其特征在于,所述陷门操作模块包含初始陷门构造组件和传输组件,其中:
所述初始陷门构造组件主要为用户的检索条件构造初始陷门;
所述传输组件主要用于将安全模块加密后的安全陷门发送给云存储***。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710007109.1A CN106874379B (zh) | 2017-01-05 | 2017-01-05 | 一种面向密文云存储的多维区间检索方法与*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710007109.1A CN106874379B (zh) | 2017-01-05 | 2017-01-05 | 一种面向密文云存储的多维区间检索方法与*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106874379A CN106874379A (zh) | 2017-06-20 |
CN106874379B true CN106874379B (zh) | 2021-01-12 |
Family
ID=59165335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710007109.1A Active CN106874379B (zh) | 2017-01-05 | 2017-01-05 | 一种面向密文云存储的多维区间检索方法与*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106874379B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108011713B (zh) * | 2017-11-16 | 2020-11-20 | 南京邮电大学 | 一种云存储中基于同态加密的密文检索方法 |
CN108875401B (zh) * | 2018-04-17 | 2021-11-26 | 安徽师范大学 | 一种基于改进kd树数据结构的隐私保护方法 |
CN109815730B (zh) * | 2018-12-29 | 2020-11-20 | 中国科学院软件研究所 | 一种支持skyline查询的可搜索加密方法与*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024054A (zh) * | 2010-12-10 | 2011-04-20 | 中国科学院软件研究所 | 一种面向密文云存储的文档检索方法与*** |
WO2013107681A1 (en) * | 2012-01-18 | 2013-07-25 | International Business Machines Corporation | Cloud-based content management system |
CN104408177A (zh) * | 2014-12-15 | 2015-03-11 | 西安电子科技大学 | 基于云文档***的密文检索方法 |
CN104636462A (zh) * | 2015-02-06 | 2015-05-20 | 中国科学院软件研究所 | 一种能抵抗统计分析攻击的快速密文检索方法和*** |
CN106127075A (zh) * | 2016-06-27 | 2016-11-16 | 湖南大学 | 一种云存储环境下基于隐私保护的可搜索加密方法 |
-
2017
- 2017-01-05 CN CN201710007109.1A patent/CN106874379B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024054A (zh) * | 2010-12-10 | 2011-04-20 | 中国科学院软件研究所 | 一种面向密文云存储的文档检索方法与*** |
WO2013107681A1 (en) * | 2012-01-18 | 2013-07-25 | International Business Machines Corporation | Cloud-based content management system |
CN104408177A (zh) * | 2014-12-15 | 2015-03-11 | 西安电子科技大学 | 基于云文档***的密文检索方法 |
CN104636462A (zh) * | 2015-02-06 | 2015-05-20 | 中国科学院软件研究所 | 一种能抵抗统计分析攻击的快速密文检索方法和*** |
CN106127075A (zh) * | 2016-06-27 | 2016-11-16 | 湖南大学 | 一种云存储环境下基于隐私保护的可搜索加密方法 |
Non-Patent Citations (1)
Title |
---|
基于单断言的安全的密文区间检索;蔡克 等;《计算机学报》;20111115;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106874379A (zh) | 2017-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106815350B (zh) | 一种云环境中动态的密文多关键词模糊搜索方法 | |
CN108388807B (zh) | 一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法 | |
CN112270006A (zh) | 电商平台中隐藏搜索模式和访问模式的可搜索加密方法 | |
CN111026788B (zh) | 一种混合云中基于同态加密的多关键词密文排序检索方法 | |
US10664610B2 (en) | Method and system for range search on encrypted data | |
CN112800088A (zh) | 基于双向安全索引的数据库密文检索***及方法 | |
CN105681280A (zh) | 一种云环境中基于中文的可搜索加密方法 | |
WO2017036547A1 (en) | Method for providing encrypted data in a database and method for searching on encrypted data | |
Egorov et al. | ZeroDB white paper | |
CN109739945A (zh) | 一种基于混合索引的多关键词密文排序检索方法 | |
CN109213731B (zh) | 云环境中基于迭代加密的多关键词密文检索方法 | |
CN106874379B (zh) | 一种面向密文云存储的多维区间检索方法与*** | |
CN114679272B (zh) | 一种使用量子密钥加密的云存储***及方法 | |
Peng et al. | LS-RQ: A lightweight and forward-secure range query on geographically encrypted data | |
CN109815730B (zh) | 一种支持skyline查询的可搜索加密方法与*** | |
CN113434739B (zh) | 一种云环境下前向安全的多用户动态对称加密检索方法 | |
Wang et al. | An efficient and privacy-preserving range query over encrypted cloud data | |
CN112231752B (zh) | 一种无交互频率隐藏的密文***查询删除方法 | |
Dhumal et al. | Confidentiality-conserving multi-keyword ranked search above encrypted cloud data | |
Manasrah et al. | An investigation study of privacy preserving in cloud computing environment | |
EP2775420A1 (en) | Semantic search over encrypted data | |
Mohammed et al. | Secure Multi-keyword Similarity Search Over Encrypted Data With Security Improvement. | |
Handa et al. | An efficient approach for secure information retrieval on cloud | |
Harvan et al. | Processing encrypted and compressed time series data | |
Arora et al. | Analysis of symmetric searchable encryption and data retrieval in cloud computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |