CN112115506A - 一种支持布尔查询的属性基数据搜索方法及系统 - Google Patents

一种支持布尔查询的属性基数据搜索方法及系统 Download PDF

Info

Publication number
CN112115506A
CN112115506A CN202010848463.9A CN202010848463A CN112115506A CN 112115506 A CN112115506 A CN 112115506A CN 202010848463 A CN202010848463 A CN 202010848463A CN 112115506 A CN112115506 A CN 112115506A
Authority
CN
China
Prior art keywords
data
terminal
attribute
ciphertext
search
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.)
Granted
Application number
CN202010848463.9A
Other languages
English (en)
Other versions
CN112115506B (zh
Inventor
王皓
孙茜
李智
牛梓宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Normal University
Original Assignee
Shandong Normal University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong Normal University filed Critical Shandong Normal University
Priority to CN202010848463.9A priority Critical patent/CN112115506B/zh
Publication of CN112115506A publication Critical patent/CN112115506A/zh
Application granted granted Critical
Publication of CN112115506B publication Critical patent/CN112115506B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供了一种支持布尔查询的属性基数据搜索方法及系统,数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端;所述云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果;所述数据使用终端根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据;本公开具有对密文进行关键字搜索的能力,使数据用户在下载所有密文之前就可以知道密文是否包含所需的内容,从而节省了通信开销;增加了基于属性的访问控制功能,只有满足访问结构的实体才能进行查询,提高了数据的安全性。

Description

一种支持布尔查询的属性基数据搜索方法及系统
技术领域
本公开涉及数据查询技术领域,具体涉及一种支持布尔查询的属性基数据搜索方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术,并不必然构成现有技术。
随着云存储技术的日渐普及,越来越多的数据所有者将海量数据从本地转移至云端进行存储。尽管云存储技术具有高灵活、低成本、易共享等优点,但在安全性方面仍然存在许多隐患,其中最严重安全问题的是数据泄漏,特别是对于公共云存储,很难保证数据安全性和隐私性。解决这一问题的最直接方法是数据所有者在上传数据之前先对数据进行加密,但是传统的加密方法影响了数据的搜索功能。可搜索加密能够实现对密文中预先设定的关键词进行搜索。
本公开发明人发现,现有的可搜索加密一般是对单个关键词进行搜索的,如果需要对多个关键词的布尔运算(与、或、非)进行搜索,则需要先对单个关键字进行检索,然后对结果进行相应的集合运算(交、并、补),这样做效率很低,不能满足快速搜索的需求。
发明内容
为了解决现有技术的不足,本公开提供了一种支持布尔查询的属性基数据搜索方法及系统,具有对密文进行关键字搜索的能力,使数据用户在下载所有密文之前就可以知道密文是否包含所需的内容,从而节省了通信开销;增加了基于属性的访问控制功能,只有满足访问结构的实体才能进行查询,提高了数据的安全性。
为了实现上述目的,本公开采用如下技术方案:
本公开第一方面提供了一种支持布尔查询的属性基数据搜索方法。
一种支持布尔查询的属性基数据搜索方法,应用于数据使用终端,包括以下步骤:
向密钥生成终端发送属性集合,接收密钥生成终端根据主密钥和属性集合生成的属性集合私钥;
根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端,接收云服务终端根据关键字索引数据集密文和搜索令牌生成的搜索结果;
根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
作为可能的一些实现方式,所述关键字索引数据密文由数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到。
本公开第二方面提供了一种支持布尔查询的属性基数据搜索装置。
一种支持布尔查询的属性基数据搜索装置,包括处理器;
所述处理器向密钥生成终端发送属性集合,接收密钥生成终端根据主密钥和属性集合生成的属性集合私钥;
所述处理器根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端,接收云服务终端根据关键字索引数据集密文和搜索令牌生成的搜索结果;
所述处理器根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
本公开第三方面提供了一种支持布尔查询的属性基数据搜索方法。
一种支持布尔查询的属性基数据搜索方法,应用于云服务终端,包括以下步骤:
接收数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文;
接收数据使用终端根据查询请求和属性集合私钥生成的查询令牌;
根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
作为可能的一些实现方式,属性集合私钥由密钥生成终端根据主密钥和数据使用终端发送的属性集合生成。
本公开第四方面提供了一种云服务器,包括处理器;
所述处理器接收数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文;
所述处理器接收数据使用终端根据查询请求和属性集合私钥生成的查询令牌;
所述处理器根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
本公开第五方面提供了一种支持布尔查询的属性基数据搜索方法,应用于数据持有终端,包括以下步骤:
根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端,以使得云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断并输出搜索结果到数据使用终端。
作为可能的一些实现方式,属性集合私钥由密钥生成终端根据主密钥和数据使用终端发送的属性集合生成。
作为可能的一些实现方式,云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
本公开第六方面提供了一种数据存储装置,包括处理器;
所述处理器根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端,以使得云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断并输出搜索结果到数据使用终端。
本公开第七方面提供了一种支持布尔查询的属性基数据搜索系统。
一种支持布尔查询的属性基数据搜索系统,包括数据持有终端、数据使用终端、密钥生成终端和云服务终端;
密钥生成终端根据所有可能的属性集合生成主密钥;
数据使用终端向密钥生成终端发送属性集合,密钥生成终端根据主密钥和属性集合生成属性集合私钥并发送给数据使用终端;
数据使用终端根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端;
所述数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端;
所述云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果;
所述数据使用终端根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
与现有技术相比,本公开的有益效果是:
1、本公开所述的方法及系统,与传统的ABE(基于属性加密)方案相比,具有对密文进行关键字搜索的能力,使数据用户在下载所有密文之前就可以知道密文是否包含所需的内容,从而节省了通信开销。
2、本公开所述的方法及系统,与传统的可搜索ABE相比,本方法可以对关键字的布尔运算结果进行检索。
3、本公开所述的方法及系统,与传统的支持布尔查询的可搜索加密相比,增加了基于属性的访问控制功能,只有满足访问结构的实体才能进行查询,提高了数据的安全性。
4、本公开所述的方法及系统,支持对关键词的布尔运算结果进行搜索,同时支持属性基授权控制,加密者可以针对某个访问结构进行加密,只有当用户的属性满足该访问结构时才能够进行查询和解密。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
图1为本公开实施例1提供的支持布尔查询的属性基数据搜索方法的流程示意图。
图2为本公开实施例3提供的支持布尔查询的属性基数据搜索方法的流程示意图。
图3为本公开实施例5提供的支持布尔查询的属性基数据搜索方法的流程示意图。
图4为本公开实施例7提供的支持布尔查询的属性基数据搜索系统的结构示意图。
具体实施方式
下面结合附图与实施例对本公开作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
实施例1:
如图1所示,本公开实施例1提供了一种支持布尔查询的属性基数据搜索方法,应用于数据使用终端,包括以下步骤:
向密钥生成终端发送属性集合,接收密钥生成终端根据主密钥和属性集合生成的属性集合私钥;
根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端,接收云服务终端根据关键字索引数据集密文和搜索令牌生成的搜索结果;
根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
详细步骤如下:
S1:密钥生成中心KGC执行系统建立算法,得到系统公开参数PP和系统主密钥MSK,对外公开PP,秘密保存MSK。
S2:数据使用者DU向密钥生成中心KGC申请密钥,DU向KGC提交其属性集合S。KGC运行密钥生成算法,得到S对应的私钥SKS,并将其返回给DU。
S3:当数据拥有者DO希望对关键字索引数据集W和文件数据集F加密时,运行加密算法,得到密文CT。DO将密文CT存储在云服务器CS以便数据使用者DU访问。
S4:数据使用者DU想要根据搜索请求Q对加密数据集进行检索,则运行搜索令牌生成算法,得到Q对应的搜索令牌TKQ,DU将TKQ发送给云服务器CS。
S5:云服务器CS使用TKQ对密文中的EW执行搜索算法,得到搜索结果R,并将R返回给数据使用者DU。
S6:数据使用者DU根据搜索结果R判断密文中是否包含其希望得到的信息,若包含,则下载对应的EF,并运算解密算法,得到明文F。
本实施例中,包含四类实体,即密钥生成中心(Key Generation Center,KGC),云服务器(Cloud Server,CS),数据所有者(Data Owner,DO)和数据使用者(Data User,DU)。
支持布尔查询的属性基可搜索加密方案包含以下算法:
(1)系统建立算法(Setup):该算法由KGC运行,输入全体属性集合U,U代表系统中所有可能的属性组成的集合,输出公共参数PP和主密钥MSK。
该算法可形式化的表示为:Setup(U)→PP,MSK。
具体的:
选择双线性群
Figure BDA0002643889180000081
Figure BDA0002643889180000082
两个群的阶均为素数p,g是
Figure BDA0002643889180000083
的生成元,存在双线性映射e:
Figure BDA0002643889180000084
在群
Figure BDA0002643889180000085
中选择|U|个随机元素
Figure BDA0002643889180000086
分别对应于属性空间U中的每个属性。在{1,2,…,p-1}中选择两个随数α和a,计算gα,ga,e(g,g)α
令∑=(Enc,Dec)为一个对称加密算法,可以使用任意标准的分组加密算法实例化,如AES算法、SM4算法等。
令H:
Figure BDA0002643889180000087
为一个密码学杂凑函数,能够将群
Figure BDA0002643889180000088
中的元素映射到∑加密方案的密钥空间KSPACE上。
该算法输出公共参数PP:={e,g,e(g,g)α,ga,h1,...,h|U|,∑,H}和主密钥MSK:=gα
(2)密钥生成算法(KeyGen):该算法由KGC运行,以主密钥MSK和属性集S为输入,输出属性集S对应的私钥SKS。该算法可形式化的表示为:KeyGen(MSK,S)→SKS
具体的,该算法将主密钥MSK和一组属性集合
Figure BDA0002643889180000089
作为输入,在{1,2,…,p-1}中选择一个随机数t;
计算K0=gαgat,K1=gt
Figure BDA00026438891800000810
输出:SKS:=(K0,K1,{K2,k}k∈S)。
(3)加密算法(Encrypt):该算法由数据所有者DO运行,以访问结构
Figure BDA00026438891800000811
关键字索引数据集W、文件数据集F为输入,输出密文CT=(EW,EF),其中EW为数据集关键字索引数据集W对应的密文,EF为文件数据集F对应的密文。
该算法可以形式化的表示为:
Figure BDA00026438891800000812
具体的:
给定一个关键字索引数据集
Figure BDA0002643889180000091
共包含d条记录,其中indi代表数据集中第i条记录对应的文件索引,wi为该条记录对应的关键词;
令:PF1:{0,1}λ×{0,1}λ→{0,1}λ和PF2:{0,1}λ×{0,1}λ→{1,2,...,p-1}为两个伪随机函数。
DO选择密钥K={KT,KX,KI,KZ},其中KT∈{0,1}λ是伪随机函数PF1的密钥,KX,KI,KZ∈{0,1}λ是伪随机函数PF2的密钥;
初始化为一个空数组T,初始化为一个空集合X;
对于每一个关键字w∈W,首先初始化一个空列表t,并初始化一个计数器c=0;
对于ind∈W(w),计算xind←PF2(KI,ind),其中W(w),表示W中包含关键字w的索引;
Figure BDA0002643889180000092
作为访问结构,其中M是l×k的矩阵,函数ρ:[l]→U可以将矩阵M的行号映射到相应的属性。选择一个随机向量
Figure BDA0002643889180000093
其中向量元素从{1,2,…,p-1}中随机选择,计算
Figure BDA0002643889180000094
其中Mi表示与M的第i行相对应的向量,在{1,2,…,p-1}中随机选择r1,...,rl
计算:
Figure BDA0002643889180000095
令:
Figure BDA0002643889180000096
然后将Xtag存入集合X中,即X=X∪Xtag;
计算z←PF2(KZ,w||c),y←gs(xind-z),x←Enc(H(e(g,g)α·s),ind)。
将(x,y)存入列表t中,然后设置c←c+1;
计算stagw←PF1(KT,w),将列表t存入数组T中,即T[stagw]←t。令加密后的关键字索引数据集EW=(T,X);
计算EF=Enc(H(e(g,g)αs,F));
输出CT=(EW,EF)。
(4)搜索令牌生成算法(TokenGen):该算法由数据使用者DU运行,将查询请求Q和私钥SKS作为输入,生成搜索令牌TK。
该算法可以形式化的表示为:TokenGen(Q,SKS)→TKQ
具体的:
给定查询
Figure BDA0002643889180000101
其中i=1,...,n,ψ表示任意布尔运算的组合。此算法首先从
Figure BDA0002643889180000102
中选择频率最低的关键字作为sterm。假设选择
Figure BDA0002643889180000103
作为sterm。对于c=1,2,...直到服务器发送停止命令,设置
Figure BDA0002643889180000104
计算:
Figure BDA0002643889180000105
输出搜索令牌
Figure BDA0002643889180000106
(5)搜索算法(Search):该算法可以由持有TKQ的任何一方运行,在本系统中,指定该算法由云服务器CS运行。输入加密后的关键字索引数据集EW和搜索令牌TKQ,当属性集合满足访问结构时,输出搜索结果R。
该算法可以形式化的表示为:Search(EW,TKQ)→R。
具体的:
服务器接收到TKQ后,首先计算
Figure BDA0002643889180000107
对于t中的每个(x,y)对,测试
Figure BDA0002643889180000108
对于
Figure BDA0002643889180000109
是否成立。如果成立,它将x添加到R中。当到达t中的最后一个元组时,它将stop发送给客户端并暂停,并返回R作为搜索结果。
(6)解密算法(Decrypt):该算法由数据用户DU执行。将加密后的文件数据集EF和私钥SKS作为输入,输出明文文件F。该算法可以形式化的表示为:Decrypt(EF,SKS)→F。
具体的:
DU接收到R后,若
Figure BDA0002643889180000111
Figure BDA0002643889180000112
如果{λi}是s对应于M的一组秘密份额,那么令{ωi∈{0,1,2,...,p-1}}i∈I为一组常数,满足∑i∈Iωiλi=s。
计算:
Figure BDA0002643889180000113
然后计算:ind←Dec(H(e(g,g)αs,x),F=Dec(H(e(g,g)αs,EF))。
实施例2:
本公开实施例2提供了一种支持布尔查询的属性基数据搜索装置,包括处理器;
所述处理器向密钥生成终端发送属性集合,接收密钥生成终端根据主密钥和属性集合生成的属性集合私钥;
所述处理器根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端,接收云服务终端根据关键字索引数据集密文和搜索令牌生成的搜索结果;
所述处理器根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
详细算法与实施例1提供的算法相同,这里不再赘述。
实施例3:
如图2所示,本公开实施例3提供了一种支持布尔查询的属性基数据搜索方法,应用于云服务终端,包括以下步骤:
接收数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文;
接收数据使用终端根据查询请求和属性集合私钥生成的查询令牌;
根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
属性集合私钥由密钥生成终端根据主密钥和数据使用终端发送的属性集合生成。
详细算法与实施例1提供的算法相同,这里不再赘述。
实施例4:
本公开实施例4提供了一种云服务器,包括处理器;
所述处理器接收数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文;
所述处理器接收数据使用终端根据查询请求和属性集合私钥生成的查询令牌;
所述处理器根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
详细算法与实施例1提供的算法相同,这里不再赘述。
实施例5:
如图3所示,本公开实施例5提供了一种支持布尔查询的属性基数据搜索方法,应用于数据持有终端,包括以下步骤:
根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端,以使得云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断并输出搜索结果到数据使用终端。
属性集合私钥由密钥生成终端根据主密钥和数据使用终端发送的属性集合生成。
云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
详细算法与实施例1提供的算法相同,这里不再赘述。
实施例6:
本公开实施例6提供了一种数据存储装置,包括处理器;
所述处理器根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端,以使得云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断并输出搜索结果到数据使用终端。
详细算法与实施例1提供的算法相同,这里不再赘述。
实施例7:
如图4所示,本公开实施例7提供了一种支持布尔查询的属性基数据搜索系统,包括数据持有终端、数据使用终端、密钥生成终端和云服务终端;
密钥生成终端根据所有可能的属性集合生成主密钥;
数据使用终端向密钥生成终端发送属性集合,密钥生成终端根据主密钥和属性集合生成属性集合私钥并发送给数据使用终端;
数据使用终端根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端;
所述数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端;
所述云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果;
所述数据使用终端根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
详细算法与实施例1提供的算法相同,这里不再赘述。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (10)

1.一种支持布尔查询的属性基数据搜索方法,其特征在于,应用于数据使用终端,包括以下步骤:
向密钥生成终端发送属性集合,接收密钥生成终端根据主密钥和属性集合生成的属性集合私钥;
根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端,接收云服务终端根据关键字索引数据集密文和搜索令牌生成的搜索结果;
根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
2.如权利要求1所述的支持布尔查询的属性基数据搜索方法,其特征在于,所述关键字索引数据密文由数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到。
3.一种支持布尔查询的属性基数据搜索装置,其特征在于,包括处理器;
所述处理器向密钥生成终端发送属性集合,接收密钥生成终端根据主密钥和属性集合生成的属性集合私钥;
所述处理器根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端,接收云服务终端根据关键字索引数据集密文和搜索令牌生成的搜索结果;
所述处理器根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
4.一种支持布尔查询的属性基数据搜索方法,其特征在于,应用于云服务终端,包括以下步骤:
接收数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文;
接收数据使用终端根据查询请求和属性集合私钥生成的查询令牌;
根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
5.如权利要求4所述的支持布尔查询的属性基数据搜索方法,其特征在于,属性集合私钥由密钥生成终端根据主密钥和数据使用终端发送的属性集合生成。
6.一种云服务器,其特征在于,包括处理器;
所述处理器接收数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文;
所述处理器接收数据使用终端根据查询请求和属性集合私钥生成的查询令牌;
所述处理器根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
7.一种支持布尔查询的属性基数据搜索方法,其特征在于,应用于数据持有终端,包括以下步骤:
根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端,以使得云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断并输出搜索结果到数据使用终端。
8.如权利要求5所述的支持布尔查询的属性基数据搜索方法,其特征在于,属性集合私钥由密钥生成终端根据主密钥和数据使用终端发送的属性集合生成;
或者,
云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果。
9.一种数据存储装置,其特征在于,包括处理器;
所述处理器根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端,以使得云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断并输出搜索结果到数据使用终端。
10.一种支持布尔查询的属性基数据搜索系统,其特征在于,包括数据持有终端、数据使用终端、密钥生成终端和云服务终端;
密钥生成终端根据所有可能的属性集合生成主密钥;
数据使用终端向密钥生成终端发送属性集合,密钥生成终端根据主密钥和属性集合生成属性集合私钥并发送给数据使用终端;
数据使用终端根据查询请求和属性集合私钥生成搜索令牌并发送给云服务终端;
所述数据持有终端根据访问结构、关键字索引数据集合和文件数据集加密后得到的数据密文并发送给云服务终端;
所述云服务终端根据数据密文中的关键字索引数据集密文和搜索令牌进行搜索判断,当属性集合满足访问结构时,输出搜索结果到数据使用终端,否则,不输出搜索结果;
所述数据使用终端根据属性集合私钥对搜索结果中的加密文件数据集进行解密,得到待搜索文件数据。
CN202010848463.9A 2020-08-21 2020-08-21 一种支持布尔查询的属性基数据搜索方法及系统 Active CN112115506B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010848463.9A CN112115506B (zh) 2020-08-21 2020-08-21 一种支持布尔查询的属性基数据搜索方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010848463.9A CN112115506B (zh) 2020-08-21 2020-08-21 一种支持布尔查询的属性基数据搜索方法及系统

Publications (2)

Publication Number Publication Date
CN112115506A true CN112115506A (zh) 2020-12-22
CN112115506B CN112115506B (zh) 2022-10-25

Family

ID=73805322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010848463.9A Active CN112115506B (zh) 2020-08-21 2020-08-21 一种支持布尔查询的属性基数据搜索方法及系统

Country Status (1)

Country Link
CN (1) CN112115506B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434555A (zh) * 2021-07-09 2021-09-24 支付宝(杭州)信息技术有限公司 一种基于可搜索加密技术的数据查询方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140298009A1 (en) * 2012-01-25 2014-10-02 Mitsubishi Electric Corporation Data search device, data search method, data search program, data registration device, data registration method, data registration program, and information processing device
CN108985094A (zh) * 2018-06-28 2018-12-11 电子科技大学 云环境下实现密文空间数据的访问控制和范围查询方法
CN111556048A (zh) * 2020-04-26 2020-08-18 山东师范大学 一种支持密文模式匹配的属性基安全通信方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140298009A1 (en) * 2012-01-25 2014-10-02 Mitsubishi Electric Corporation Data search device, data search method, data search program, data registration device, data registration method, data registration program, and information processing device
CN108985094A (zh) * 2018-06-28 2018-12-11 电子科技大学 云环境下实现密文空间数据的访问控制和范围查询方法
CN111556048A (zh) * 2020-04-26 2020-08-18 山东师范大学 一种支持密文模式匹配的属性基安全通信方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434555A (zh) * 2021-07-09 2021-09-24 支付宝(杭州)信息技术有限公司 一种基于可搜索加密技术的数据查询方法和装置

Also Published As

Publication number Publication date
CN112115506B (zh) 2022-10-25

Similar Documents

Publication Publication Date Title
Sun et al. An efficient non-interactive multi-client searchable encryption with support for boolean queries
US7783899B2 (en) System and method for performing a conjunctive keyword search over encrypted data
CN110166466B (zh) 一种可高效更新权限的多用户可搜索加密方法和系统
CN109361644B (zh) 一种支持快速搜索和解密的模糊属性基加密方法
CN112989375B (zh) 一种分级优化加密无损隐私保护方法
CN108111587B (zh) 一种基于时间释放的云存储搜索方法
CN113254955A (zh) 前向安全的连接关键词对称可搜索加密方法、系统及应用
CN110035067B (zh) 云存储中支持高效数据去重和属性撤销的属性加密方法
GB2580406A (en) A client-server computer system
CN111556048B (zh) 一种支持密文模式匹配的属性基安全通信方法及系统
CN117223002A (zh) 加密信息检索
WO2021119542A1 (en) Encrypted search with a public key
Sun et al. A dynamic and non-interactive boolean searchable symmetric encryption in multi-client setting
CN115795514A (zh) 一种隐私信息检索方法、装置及系统
CN112115506B (zh) 一种支持布尔查询的属性基数据搜索方法及系统
CN114021006A (zh) 一种多维数据的安全查询方法及装置
US20240015014A1 (en) Dynamic and verifiable searchable encryption method and system based on updatable encryption and blockchain
CN108920968B (zh) 一种基于连接关键词的文件可搜索加密方法
US20230006813A1 (en) Encrypted information retrieval
CN108259172B (zh) 云存储系统中的密文搜索方法
WO2019178792A1 (zh) 一种支持访问控制的密文搜索方法及系统
CN113904823B (zh) 常数级授权计算复杂度的属性基可搜索加密方法及系统
CN115510490A (zh) 一种非密钥共享的加密数据查询方法、装置、系统及设备
WO2022213577A1 (zh) 一种空间文本的查询方法及装置
US20230318809A1 (en) Multi-key information retrieval

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