CN114661793A - 模糊查询方法、装置、电子设备及存储介质 - Google Patents

模糊查询方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114661793A
CN114661793A CN202210306550.0A CN202210306550A CN114661793A CN 114661793 A CN114661793 A CN 114661793A CN 202210306550 A CN202210306550 A CN 202210306550A CN 114661793 A CN114661793 A CN 114661793A
Authority
CN
China
Prior art keywords
data
encrypted
query
encryption
condition
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.)
Pending
Application number
CN202210306550.0A
Other languages
English (en)
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.)
Qax Technology Group Inc
Secworld Information Technology Beijing Co Ltd
Original Assignee
Qax Technology Group Inc
Secworld Information Technology Beijing Co Ltd
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 Qax Technology Group Inc, Secworld Information Technology Beijing Co Ltd filed Critical Qax Technology Group Inc
Priority to CN202210306550.0A priority Critical patent/CN114661793A/zh
Publication of CN114661793A publication Critical patent/CN114661793A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2468Fuzzy queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Fuzzy Systems (AREA)
  • Automation & Control Theory (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种模糊查询方法、装置、电子设备及存储介质,通过接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;对所述数据查询请求中的检索条件进行加密生成查询令牌;将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端,在解决了加密后的数据无法进行模糊检索的问题同时,进一步保证了数据的安全性以及提高了数据搜索的效率。

Description

模糊查询方法、装置、电子设备及存储介质
技术领域
本发明涉及信息安全技术领域,尤其涉及一种模糊查询方法、装置、电子设备及存储介质。
背景技术
在信息技术高速发展的时代下,信息安全对于企业以及个人都是至关重要的。因此为了防止用户数据被非法泄露和保障敏感数据的安全性,企业采取的保护措施一般是将数据加密后存储到数据库中,但是数据加密会使得数据失去模糊匹配特性。
目前对于数据库加密数据的检索方案较常使用的方案主要有两大类,一类是在数据库中实现与程序一致的加解密算法,修改模糊查询条件,使数据库加解密函数先加密在模糊查找,这类方法的缺点无法利用索引来优化查询,甚至有些数据库可能无法保证与程序实现一致的加解密算法,导致数据数据安全性较差以及搜索效率底下,另一类是对明文数据进行分词组合,将分词组合的结果集分别进行加密,然后存储到扩展列,查询时通过key like'%partial%'来进行查询,但是在原有加密串模糊时,受like关键词影响,在有前置通配符进行全表扫描时,扫描速度过慢。
发明内容
本发明提供一种模糊查询方法、装置、电子设备及存储介质,用以解决加密后的数据无法进行模糊检索的问题,通过在进行模糊搜索时对检索条件进行加密,以加密后的检索条件到服务端内对加密数据所对应的加密索引进行匹配,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
第一方面,本发明提供一种模糊查询方法,应用于加解密端,包括:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
进一步,在所述接收客户端发送的数据查询请求之前,方法还包括:
接收客户端发送的待存储明文数据;
判断所述待存储明文数据是否包含特征值;其中,所述特征值是用于对数据进行分割的符号;
在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;
根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;
将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中。
进一步,所述对所述数据查询请求中的检索条件进行加密生成查询令牌,包括:
判断所述检索条件中是否包含特征值;
在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;
对所得到的至少一个查询条件数据段进行加密生成查询令牌。
进一步,所述根据所述特征值对所述待存储明文数据进行数据分割后,方法还包括:
在分割后所得到的数据段的数量超过预设阈值的情况下,改变特征值分割的初始条件以减少分割后所得到的数据段的数量。
进一步,本发明还提供一种模糊查询方法,应用于服务端,包括:
接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
进一步,所述根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据,包括:
从所述查询令牌中获取至少一个加密后的查询条件数据段;
将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配;
在所述加密索引集合中的目标加密索引与所述至少一个加密后的查询条件数据段相匹配的情况下,根据所述目标加密索引中所包含加密数据的指针,确定与所述数据查询请求相对应的加密数据。
进一步,所述将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配,包括:
从所述至少一个加密后的查询条件数据段中选取当前加密后的查询条件数据段,将所述加密索引集合中的第一加密索引的第一加密数据段作为当前加密数据段;其中,所述第一加密索引为所述加密索引集合中的任意一个加密索引;所述第一加密数据段为所述第一加密索引中的任意一个加密数据段;
将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配;
在匹配成功的情况下,判断所述至少一个加密后的查询条件数据段是否均已经完成匹配操作,在均已经完成匹配操作的情况下,确定所述第一加密索引与所述至少一个加密后的查询条件数据段匹配;在未均已经完成匹配操作的情况下,从所述至少一个加密后的查询条件数据段中选取未经匹配操作的加密后的查询条件数据段作为当前加密后的查询条件数据段,从所述第一加密索引中选取未经匹配操作的加密数据段作为当前加密数据段;然后重新执行所述将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配的步骤。
第二方面,本发明还提供了一种模糊查询装置,应用于加解密端,包括:第一接收模块,加密模块,第一确定模块,解密模块,其中:
第一接收模块,用于接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
加密模块,用于对所述数据查询请求中的检索条件进行加密生成查询令牌;
第一确定模块,用于将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
解密模块,用于接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
进一步,本发明还提供一种模糊查询装置,应用于服务端,其特征在于,包括:第二接收模块,第二确定模块,发送模块,其中:
第二接收模块,用于接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
第二确定模块,用于根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
发送模块,用于将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,
所述处理器执行所述程序时实现如下方法的步骤:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端;
或者,接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如下方法的步骤:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端;
或者,接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
第五方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如下方法的步骤:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端;
或者,接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
本发明提供的一种模糊查询方法、装置、电子设备及存储介质,接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;对所述数据查询请求中的检索条件进行加密生成查询令牌;将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端,通过在进行模糊搜索时对检索条件进行加密,以加密后的检索条件到服务端内对加密数据所对应的加密索引进行匹配,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种模糊查询方法的流程示意图;
图2是本发明另一个实施例提供的一种模糊查询方法的流程示意图;
图3是本发明另一个实施例提供的一种模糊查询方法的流程示意图;
图4是本发明另一个实施例提供的一种模糊查询时序的流程示意图;
图5是本发明一个实施例提供的一种模糊查询装置的结构框图;
图6是本发明另一个实施例提供的一种模糊查询装置的结构框图;
图7是本发明另一个实施例提供的一种模糊查询电子设备的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本实施例提供的一种模糊查询方法的流程示意图,参见图1,该方法应用于加解密端,包括:
步骤101:接收客户端发送的数据查询请求;
其中,所述数据查询请求包括检索条件,检索条件可以是数据查询关键词或关键字。
可以理解的是,客户端可以是一切支持模糊查询的移动设备,包括但不限于台式计算机、笔记本电脑、平板电脑、智能手机、膝上型便携计算机等;加解密端为具有对一切数据进行加解密功能的系统模块,客户端与加解密端的连接方式为通信连接。
具体地,加解密端接收客户端发送的数据查询请求。
举例来说,一公司员工想要利用公司带有模糊查询功能的系统查询文件名中带有数字“1234”的文件,员工通过在系统的模糊查询框内输入“1234”,此时模糊查询系统中的加解密端接收员工发送的检索条件“1234”。
步骤102:对所述数据查询请求中的检索条件进行加密生成查询令牌;
其中,查询令牌可以理解为对原始明文检索条件进行私钥加密后的一个字符串。
需要进一步说明的是,加解密端对所述数据查询请求中的检索条件进行加密的方式取决于检索条件是否包含特征值,在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;对所得到的至少一个查询条件数据段进行加密,生成查询令牌;在所述检索条件不包含特征值的情况下,可直接存储整体加密检索条件,例如检索条件为1234,可采取可搜索加密算法,对1234进行整体加密,即xx(1)cc(2)dd(3)vv(4)等位固定加密。
具体地,加解密端对所述数据查询请求中的检索条件进行加密生成查询令牌。
举例来说,模糊查询系统中的加解密端接收员工发送的检索条件“1234”,并对检索条件“1234”进行加密生成查询令牌。
步骤103:将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
其中,服务端具体为服务器,用于对所述加密数据集合以及加密索引集合进行存储,加解密端与服务端的连接方式为通信连接。
需要进一步说明的是,在步骤101接收客户端发送的数据查询请求之前,加解密端接收客户端发送的待存储明文数据;判断所述待存储明文数据是否包含特征值;其中,所述特征值是用于对数据进行分割的符号;在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中。
具体地,加解密端将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据。
举例来说,模糊查询系统中的加解密端接收员工发送的检索条件“1234”,并对检索条件“1234”进行加密,生成查询令牌之后,系统中的加解密端将检索条件“1234”对应的查询令牌发送至存储有加密数据集合以及加密索引集合的服务器,以使得服务器根据加密索引集合中的加密索引与所述查询令牌,从加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据,比如为xabq。
步骤104:接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
其中,模糊查询结果为满足检索条件的加密数据经加解密端进行解密后的所有原始明文数据。
具体地,加解密端接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
举例来说,在服务器根据加密索引集合中的加密索引与所述查询令牌,从加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据xabq之后,模糊查询系统中的加解密端接收与检索条件相对应的加密数据xabq,并对加密数据xabq进行解密,并将所得到的模糊查询结果返回至员工电脑。
本实施例提供了一种模糊查询方法,接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;对所述数据查询请求中的检索条件进行加密生成查询令牌;将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端,通过在进行模糊搜索时对检索条件进行加密,以加密后的检索条件到服务端内对加密数据所对应的加密索引进行匹配,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
图2是本实施例提供的另一种模糊查询方法的流程示意图,参见图2,在所述步骤101接收客户端发送的数据查询请求之前,方法还包括:
步骤201:接收客户端发送的待存储明文数据;
其中,待存储明文数据为客户端所设定的需经加解密端进行加密后存储于服务端的原始数据。
具体地,加密端接收客户端发送的待存储明文数据。
举例来说,客户端发送待存储明文数据“1.2.3.4”至模糊查询系统中的加解密端,加解密端接收客户端发送的明文数据“1.2.3.4”。
步骤202:判断所述待存储明文数据是否包含特征值;
其中,所述特征值是用于对数据进行分割的符号,可以是“,”、“:”、“.”、“;”、“/”、“*”等一切可将数据分隔开的符号,在此不作具体限定。
需要进一步说明的是,加解密端除了用于对检索条件进行加解密,以及待存储明文数据和明文数据生成的索引进行加解密之外,还用于对明文数据包含的特征值进行判断。
具体地,加解密端判断所述待存储明文数据是否包含特征值。
举例来说,在加解密端接收客户端发送的明文数据“1.2.3.4”之后,加解密端判断明文数据“1.2.3.4”是否包含特征值。
步骤203:在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;
其中,加密数据段之间的层级关系,描述了分割后单个数据段与其前置数据段以及后置数据段之间的联系。对待存储明文数据进行数据分割,原始明文数据被拆分成若干个子数据段。在后续进行模糊查询时,只需匹配加密数据段以及加密数据段的前后数据段即可得到模糊查询结果,避免了对整个加密后的明文数据进行匹配,大大提升了后续模糊查询的速度。
需要进一步说明的是,在所述待存储明文数据不包含特征值的情况下,既无法对待存储明文数据进行数据分割,只能使用常规加密算法对待存储明文数据整体进行加密,得到整体加密后的待存储加密数据;对所述待存储明文数据进行加密具体采用的是SHA-256算法,SHA-256算法即为散列算法,也就是哈希函数,是一种从任何一种数据中创建小的数字“指纹”的方法,散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来,该函数将数据打乱混合,重新创建一个叫做散列值(或哈希值)的指纹,散列值通常用一个短的随机字母和数字组成的字符串来代表。
具体地,在所述待存储明文数据包含特征值的情况下,加解密端根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据。
举例来说,加解密端进一步判断出待存储明文数据“1.2.3.4”包含特征值“.”,根据特征值“.”对待存储明文数据“1.2.3.4”进行数据分割,分割后得到4个数据段,为“1”、“2”、“3”和“4”,分别对这四个数据段采用SHA-256算法进行加密,比如数据段“1”加密后为“xxxx”,数据段“2”加密后为“xaxx”,数据段“3”加密后为“xxsx”,数据段“4”加密后为“xxxb”,加密数据段之间的层级关系可以看成比如数据段“1”对应的加密数据段“xxxx”的前置数据段为“null”,后置数据段为数据段“2”对应的加密数据段;数据段“2”对应的加密数据段“xxax”的前置数据段为数据段“1”对应的加密数据段,后置数据段为数据段“3”对应的加密数据段;数据段“3”对应的加密数据段“xxsx”的前置数据段为数据段“2”对应的加密数据段,后置数据段为数据段“4”对应的加密数据段;数据段“4”对应的加密数据段“xxxb”的前置数据段为数据段“3”对应的加密数据段,后置数据段为“null”,对待存储明文数据“1234”也进行加密,得到待存储加密数据。
步骤204:根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;
其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;
需要进一步说明的是;所述指针为所指向的存储地址,对所述待存储加密数据的指针具体为上述所提及的数据分割后所得到的数据段进行加密得到的多个加密数据段的末尾加密数据段对所述待存储加密数据的指针。
举例来说,如表1所示,为加密数据表,整个加密数据表包含加密数据段以及加密数据段之间的层级关系,根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引,其中,待存储加密索引相当于加密数据表,即表1,在根据所述特征值“.”对待存储明文数据“1.2.3.4”进行数据分割,对数据分割后所得到的数据段进行加密后,得到加密数据段以及加密数据段之间的层级关系,在表1中对应不同的数据段,有4个层级关系,层级关系反映了数据段之间的前后关系,即当前数据段的前置数据段与后置数据段,“id”表示加密表中的层数,“pre”即为前置数据段,“next”即为后置数据段,“Encrypt data”为对原始明文数据进行特征值分割后的数据段进行加密后的加密数据段;“Origal_value”为整个待存储加密数据的存储地址;即保存了结尾的加密数据段与原始明文数据的ID值之间的映射关系;数据段“1”加密后为“xxxx”,数据段“2”加密后为“xaxx”,数据段“3”加密后为“xxsx”,数据段“4”加密后为“xxxb”,加密数据段之间的层级关系可以看成比如数据段“1”对应的加密数据段“xxxx”的前置数据段为“null”,后置数据段为数据段“2”对应的加密数据段;数据段“2”对应的加密数据段“xxax”的前置数据段为数据段“1”对应的加密数据段,后置数据段为数据段“3”对应的加密数据段;数据段“3”对应的加密数据段“xxsx”的前置数据段为数据段“2”对应的加密数据段,后置数据段为数据段“4”对应的加密数据段;数据段“4”对应的加密数据段“xxxb”的前置数据段为数据段“3”对应的加密数据段,后置数据段为“null”,对待存储明文数据“1.2.3.4”也进行加密,得到待存储加密数据,其中,待存储加密数据的地址保存在结尾加密数据段“4”这一层级中,即通过结尾加密数据段即可获得整个待存储加密数据的存储地址,在有了存储地址后,就能够获得待存储加密数据。
表1
id pre Encrypt_data next Origal_value
1 null xxxx 2
2 1 xaxx 3
3 2 xxsx 4
4 3 xxxb null 6
步骤205:将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中。
需要进一步说明的是,由于待存储加密数据可以不止一个,与待存储加密数据对应的待存储加密索引也可以不止一个。
举例来说,模糊查询系统的加解密端将待存储的加密数据以及加密索引表发送到服务器,使得服务器将待存储加密数据保存在加密数据集合中,将待存储加密索引保存至加密索引集合中。
本实施例提供了一种模糊查询方法,通过接收客户端发送的待存储明文数据;判断所述待存储明文数据是否包含特征值;其中,所述特征值是用于对数据进行分割的符号;在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中,即通过判断待存储明文数据中是否包含特征值,并利用特征值对数据进行分割,避免了对全表进行扫描查询,大大提高了后续模糊查询的搜索效率。
基于上述实施例的内容,在本实施例中,所述步骤102所述对所述数据查询请求中的检索条件进行加密生成查询令牌,具体可通过如下方式实现:
判断所述检索条件中是否包含特征值;
在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;
对所得到的至少一个查询条件数据段进行加密生成查询令牌。
可以理解的是,本实施例的执行主体为加解密端。
需要进一步说明的是,在所述检索条件不包含特征值的情况下,直接对整个检索条件采用常规加密算法进行加密,并生成查询令牌。
在本实施例中,对所得到的至少一个查询条件数据段进行加密所采用的仍然是上述所提及的SHA-256算法,在此不作赘述。
举例来说,此时检索条件为“1.2”,其中包含特征值“.”以特征值“.”为分割符,对检索条件“1.2”进行分割,分割成两个查询条件数据段,分别为数据段“1”和数据段“2”,采用SHA-256算法对所得到的查询条件数据段“1”和数据段“2”进行加密,生成查询令牌。
本实施例提供了一种模糊查询方法,通过判断所述检索条件中是否包含特征值;在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;对所得到的至少一个查询条件数据段进行加密生成查询令牌,即对检索条件进行特征值分割以及对分割后的查询条件数据段分别进行加密,一方面简化了后续模糊查询的条件,可以使用分割后的查询条件子数据段进行数据查询,加快了数据搜索的效率;另一方面也提高了数据模糊查询的安全性。
基于上述实施例的内容,在本实施例中,所述步骤203根据所述特征值对所述待存储明文数据进行数据分割后,方法还包括:
在分割后所得到的数据段的数量超过预设阈值的情况下,改变特征值分割的初始条件以减少分割后所得到的数据段的数量。
其中,特征值是在数据入库加密时可进行配置的,通过改变配置即可改变特征值分割的初始条件或特征值,例如,特征值分割的初始条件为以“.”为分割距离,在改变配置后,特征值分割条件变为以“..”为分割距离;又如,特征值分割的初始条件为以“.”为特征值,在改变配置后,特征值分割条件变为以“*”为特征值;预设阈值的大小可根据本领域技术人员的需要进行具体设定。
需要进一步说明的是,在待存储的明文数据中,难免会存在明文数据经特征值分割后存在数据段过多的情况,会导致后续加密数据段以及加密数据段之间的层级关系更复杂,也会使后续数据模糊查询的搜索效率降低,在此情况下,可对特征值分割的初始条件进行更改以避免分割后的数据段过多的现象。
举例来说,一待存储明文数据为“1.2.3.4.5.6.7.8.9.10”,此时,特征值分割的初始条件为“.”,但在此种情况下,经特征值分割后会分成10个子数据段,本领域技术员所设置的数据段预设阈值为6,数据段超过了预设阈值,可对配置进行更改,更改后,特征值分割的初始条件为以“.”为分割距离,在改变配置后,特征值分割条件变为以“..”为分割距离,以新的特征值分割条件进行分割后变为5个子数据段,分别为“1.2”、“3.4”、“5.6”、“7.8”和“9.10”,符合预设阈值标准。
本实施例提供了一种模糊查询方法,在根据所述特征值对所述待存储明文数据进行数据分割后,在分割后所得到的数据段的数量超过预设阈值的情况下,改变特征值分割的初始条件以减少分割后所得到的数据段的数量,使得后续加密数据段以及加密数据段之间的层级关系更简单,也使得后续数据模糊查询的搜索效率得到进一步提高。
图3是本实施例提供的一种模糊查询方法的流程示意图,参见图3,该方法应用于服务端,包括:
步骤301:接收查询令牌;
其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;查询令牌可以理解为对原始明文检索条件进行私钥加密后的一个字符串。
服务端具体为服务器,客户端可以是一切支持模糊查询的移动设备,包括但不限于台式计算机、笔记本电脑、平板电脑、智能手机、膝上型便携计算机等,客户端与服务端的连接方式为通信连接。
具体地,在加解密端接收客户端发送的数据查询请求,对所述数据查询请求中的检索条件进行加密生成查询令牌,将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端之后,服务端接收查询令牌。
举例来说,模糊查询系统中的加解密端接收员工发送的检索条件“1234”,并对检索条件“1234”进行加密,生成查询令牌之后,系统中的加解密端将检索条件“1234”对应的查询令牌发送至存储有加密数据集合以及加密索引集合的服务器,服务器接收查询令牌。
步骤302:根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
其中,上文已提及加密索引为根据加密数据段以及加密数据段之间的层级关系所得到的,包含有加密数据段以及相邻加密数据段的指针,而且还包含了对所述待存储加密数据的指针。
需要进一步说明的是,由于待存储加密数据可以不止一个,与待存储加密数据对应的待存储加密索引也可以不止一个,所以加密索引集合中可包含多个加密索引,加密数据集合中可包含多个加密数据。
举例来说,模糊查询系统中的加解密端将检索条件“1234”对应的查询令牌发送至存储有加密数据集合以及加密索引集合的服务器之后,服务器根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据,比如为xabq。
步骤303:将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
其中,模糊查询结果为满足检索条件的加密数据经加解密端进行解密后的所有原始明文数据。
举例来说,在服务器根据加密索引集合中的加密索引与所述查询令牌,从加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据xabq之后,服务器将与所述数据查询请求相对应的加密数据发送至加解密端,模糊查询系统中的加解密端接收服务器发送的与检索条件相对应的加密数据xabq,并对加密数据xabq进行解密,以及解密后所得到的模糊查询结果返回至员工电脑。
本实施例提供了一种模糊查询方法,接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
基于上述实施例的内容,在本实施例中,所述步骤302根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据,具体可通过如下方式实现:
从所述查询令牌中获取至少一个加密后的查询条件数据段;
将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配;
在所述加密索引集合中的目标加密索引与所述至少一个加密后的查询条件数据段相匹配的情况下,根据所述目标加密索引中所包含加密数据的指针,确定与所述数据查询请求相对应的加密数据。
需要进一步说明的是,从所述查询令牌中获取一个加密后的查询条件数据段的情况可以是所述检索条件不包含特征值的情况,也可以是只包含1个特征值的情况,例如“1.”,从所述查询令牌中获取大于1个加密后的查询条件数据段的情况为检索条件一定包含至少1个特征值,在从所述查询令牌中获取n(n>1)个加密后的查询条件数据段后,将n个加密后的查询条件数据段分别与加密索引集合中的各个加密索引进行匹配,在n个加密后的至少一个查询条件数据段与加密索引集合中的目标加密索引匹配的情况下,根据目标加密索引中所包含的指针,确定与所述数据查询请求相对应的加密数据;其中,目标加密索引不唯一,所述数据查询请求相对应的加密数据也不唯一。
在本实施例中,在所述加密索引集合中的任意一个加密索引都与全部加密后的查询条件数据段都不匹配的情况下,则模糊查询结果为不存在。
举例来说,检索条件为“1.2.3.4”,根据特征值“.”对检索条件进行数据分割,得到4个查询条件数据段,分别为“1”、“2”、“3”和“4”,对4个查询条件数据段进行加密后,从查询令牌中获取2个加密后的查询条件数据段“1”和“4”;将加密后的查询条件数据段“1”和“4”与加密索引集合中的各个加密索引进行匹配;在加密索引集合中有目标加密索引中的加密数据段与加密后的查询条件数据段“1”和“4”相匹配的情况下,根据目标加密索引中所包含加密数据的指针,确定与加密后的检索条件相对应的加密数据。
本实施例提供了一种模糊查询方法,从所述查询令牌中获取至少一个加密后的查询条件数据段;将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配;在所述加密索引集合中的目标加密索引与所述至少一个加密后的查询条件数据段相匹配的情况下,根据所述目标加密索引中所包含加密数据的指针,确定与所述数据查询请求相对应的加密数据,通过将至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
基于上述实施例的内容,在本实施例中,所述将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配,包括:
从所述至少一个加密后的查询条件数据段中选取当前加密后的查询条件数据段,将所述加密索引集合中的第一加密索引的第一加密数据段作为当前加密数据段;其中,所述第一加密索引为所述加密索引集合中的任意一个加密索引;所述第一加密数据段为所述第一加密索引中的任意一个加密数据段;
将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配;
在匹配成功的情况下,判断所述至少一个加密后的查询条件数据段是否均已经完成匹配操作,在均已经完成匹配操作的情况下,确定所述第一加密索引与所述至少一个加密后的查询条件数据段匹配;在未均已经完成匹配操作的情况下,从所述至少一个加密后的查询条件数据段中选取未经匹配操作的加密后的查询条件数据段作为当前加密后的查询条件数据段,从所述第一加密索引中选取未经匹配操作的加密数据段作为当前加密数据段;然后重新执行所述将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配的步骤。
需要进一步说明的是,在所有加密后的查询条件数据段与所有索引的所有加密数据段均已完成匹配操作,但匹配不成功的情况下,则模糊查询结果为不存在。
本实施例提供了一种模糊查询方法,从所述至少一个加密后的查询条件数据段中选取当前加密后的查询条件数据段,将所述加密索引集合中的第一加密索引的第一加密数据段作为当前加密数据段;其中,所述第一加密索引为所述加密索引集合中的任意一个加密索引;所述第一加密数据段为所述第一加密索引中的任意一个加密数据段;将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配;在匹配成功的情况下,判断所述至少一个加密后的查询条件数据段是否均已经完成匹配操作,在均已经完成匹配操作的情况下,确定所述第一加密索引与所述至少一个加密后的查询条件数据段匹配;在未均已经完成匹配操作的情况下,从所述至少一个加密后的查询条件数据段中选取未经匹配操作的加密后的查询条件数据段作为当前加密后的查询条件数据段,从所述第一加密索引中选取未经匹配操作的加密数据段作为当前加密数据段;然后重新执行所述将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配的步骤,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
图4为本实施例提供的模糊查询的时序流程示意图,参见图4。客户端在进行数据保存时,数据在到达服务器时先经过加解密模块对数据进行加密与加密索引的创建,将加密后的数据发送到服务器进行保存;用户从客户端发起明文数据检索请求,请求到达服务器时,通过加解密模块将搜索条件进行加密生成搜索令牌到服务器进行一个数据的检索,加解密模块对客户端传递的明文数据采用SHA-256进行加密。根据字段配置的策略是否具有特征值采用不同的策略生成加密数据索引;同一类具有特征值的数据:如url、ip数据等此类具有共性的特征数据。此类数据利用特征值进行数据分割,将层级关系存入加密表,加密表以特征分割字符与前置顺序来标识记录唯一性,例如:“1.2.3.4”,以“.”分割后1、2、3、4各存储一份数据,如上述表1所示,2、3、4记录标识以各自的前置分隔符来标识一条记录的唯一性,如(2-1,3-2,4-3),处于最后层级的4的记录保存原始数据的id,存入的记录均为加密后数据存入;在后续更新时,对分割完数据加密后,对加密表数据进行更新或记录的插入,此更新或插入数据最多为根据特征字符分割数据段的数量。模糊查询时根据客户端传递查询like将加密数据关键字进行分割,加密处理,如like“1.%”则查询encrypt_data=xxxx去其next节点列表内最底层的origal_val则获取此模糊查询的原始记录id值。Like“1.2”则查询encrypt_data=xaxx and pre==xxxx如存在则获取此纪录next的值最底层的origal_value原始记录值。特征值分割后数据段过多,可改变特征值分割条件,降低分割后数据段,降低层级关系。
图5为本实施例提供的模糊查询装置的结构框图,应用于加解密端,该装置包括:第一接收模块501,加密模块502,第一确定模块503,解密模块504,其中:
第一接收模块501,用于接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
其中,所述数据查询请求包括检索条件,检索条件可以是数据查询关键词或关键字。
可以理解的是,客户端可以是一切支持模糊查询的移动设备,包括但不限于台式计算机、笔记本电脑、平板电脑、智能手机、膝上型便携计算机等;加解密端为具有对一切数据进行加解密功能的系统模块,客户端与加解密端的连接方式为通信连接。
具体地,加解密端接收客户端发送的数据查询请求。
举例来说,一公司员工想要利用公司带有模糊查询功能的系统查询文件名中带有数字“1234”的文件,员工通过在系统的模糊查询框内输入“1234”,此时模糊查询系统中的加解密端接收员工发送的检索条件“1234”。
加密模块502,用于对所述数据查询请求中的检索条件进行加密生成查询令牌;
其中,查询令牌可以理解为对原始明文检索条件进行私钥加密后的一个字符串。
需要进一步说明的是,加解密端对所述数据查询请求中的检索条件进行加密的方式取决于检索条件是否包含特征值,在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;对所得到的至少一个查询条件数据段进行加密生成查询令牌;在所述检索条件不包含特征值的情况下,可直接存储整体加密检索条件,例如检索条件为1234,可采取可搜索加密算法,对1234进行整体加密,即xx(1)cc(2)dd(3)vv(4)等位固定加密。
具体地,加解密端对所述数据查询请求中的检索条件进行加密,生成查询令牌。
举例来说,模糊查询系统中的加解密端接收员工发送的检索条件“1234”,并对检索条件“1234”进行加密生成查询令牌。
第一确定模块503,用于将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
其中,服务端具体为服务器,用于对所述加密数据集合以及加密索引集合进行存储,加解密端与服务端的连接方式为通信连接。
需要进一步说明的是,在步骤101接收客户端发送的数据查询请求之前,加解密端接收客户端发送的待存储明文数据;判断所述待存储明文数据是否包含特征值;其中,所述特征值是用于对数据进行分割的符号;在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中。
具体地,加解密端将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据。
举例来说,模糊查询系统中的加解密端接收员工发送的检索条件“1234”,并对检索条件“1234”进行加密,生成查询令牌之后,系统中的加解密端将检索条件“1234”对应的查询令牌发送至存储有加密数据集合以及加密索引集合的服务器,以使得服务器根据加密索引集合中的加密索引与所述查询令牌,从加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据,比如为xabq。
解密模块504,用于接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
其中,模糊查询结果为满足检索条件的加密数据经加解密端进行解密后的所有原始明文数据。
具体地,加解密端接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
举例来说,在服务器根据加密索引集合中的加密索引与所述查询令牌,从加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据xabq之后,模糊查询系统中的加解密端接收与检索条件相对应的加密数据xabq,并对加密数据xabq进行解密,并将所得到的模糊查询结果返回至员工电脑。
本实施例提供了一种模糊查询装置,通过第一接收模块501,用于接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;加密模块502,用于对所述数据查询请求中的检索条件进行加密生成查询令牌;第一确定模块503,用于将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;解密模块504,用于接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端,通过在进行模糊搜索时对检索条件进行加密,以加密后的检索条件到服务端内对加密数据所对应的加密索引进行匹配,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
可选的,所述装置还包括:
用于接收客户端发送的待存储明文数据;
判断所述待存储明文数据是否包含特征值;其中,所述特征值是用于对数据进行分割的符号;
在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;
根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;
将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中。
本实施例提供了一种模糊查询装置,通过接收客户端发送的待存储明文数据;判断所述待存储明文数据是否包含特征值;其中,所述特征值是用于对数据进行分割的符号;在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中,即通过判断待存储明文数据中是否包含特征值,并利用特征值对数据进行分割,避免了对全表进行扫描查询,大大提高了后续模糊查询的搜索效率。
可选的,所述加密模块502,还包括:
用于判断所述检索条件中是否包含特征值;
在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;
对所得到的至少一个查询条件数据段进行加密生成查询令牌。
本实施例提供了一种模糊查询装置,通过判断所述检索条件中是否包含特征值;在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;对所得到的至少一个查询条件数据段进行加密生成查询令牌,即对检索条件进行特征值分割以及对分割后的查询条件数据段分别进行加密,一方面简化了后续模糊查询的条件,可以使用分割后的查询条件子数据段进行数据查询,加快了数据搜索的效率;另一方面也提高了数据模糊查询的安全性。
可选的,所述装置还包括:
用于在分割后所得到的数据段的数量超过预设阈值的情况下,改变特征值分割的初始条件以减少分割后所得到的数据段的数量。
本实施例提供了一种模糊查询装置,用于在根据所述特征值对所述待存储明文数据进行数据分割后,在分割后所得到的数据段的数量超过预设阈值的情况下,改变特征值分割的初始条件以减少分割后所得到的数据段的数量,使得后续加密数据段以及加密数据段之间的层级关系更简单,也使得后续数据模糊查询的搜索效率得到进一步提高。
图6为本实施例提供的模糊查询装置的结构框图,应用于服务端,该装置包括:第二接收模块601,第二确定模块602,发送模块603,其中:
第二接收模块601,用于接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
服务端具体为服务器,客户端可以是一切支持模糊查询的移动设备,包括但不限于台式计算机、笔记本电脑、平板电脑、智能手机、膝上型便携计算机等,客户端与服务端的连接方式为通信连接。
具体地,在加解密端接收客户端发送的数据查询请求,对所述数据查询请求中的检索条件进行加密生成查询令牌,将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端之后,服务端接收查询令牌。
举例来说,模糊查询系统中的加解密端接收员工发送的检索条件“1234”,并对检索条件“1234”进行加密,生成查询令牌之后,系统中的加解密端将检索条件“1234”对应的查询令牌发送至存储有加密数据集合以及加密索引集合的服务器,服务器接收查询令牌。
第二确定模块602,用于根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
其中,上文已提及加密索引为根据加密数据段以及加密数据段之间的层级关系所得到的,包含有加密数据段以及相邻加密数据段的指针,而且还包含了对所述待存储加密数据的指针。
需要进一步说明的是,由于待存储加密数据可以不止一个,与待存储加密数据对应的待存储加密索引也可以不止一个,所以加密索引集合中可包含多个加密索引,加密数据集合中可包含多个加密数据。
举例来说,模糊查询系统中的加解密端将检索条件“1234”对应的查询令牌发送至存储有加密数据集合以及加密索引集合的服务器之后,服务器根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据,比如为xabq。
发送模块603,用于将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
其中,模糊查询结果为满足检索条件的加密数据经加解密端进行解密后的所有原始明文数据。
举例来说,在服务器根据加密索引集合中的加密索引与所述查询令牌,从加密数据集合中确定与数据查询请求中检索条件“1234”相对应的加密数据xabq之后,服务器将与所述数据查询请求相对应的加密数据发送至加解密端,模糊查询系统中的加解密端接收服务器发送的与检索条件相对应的加密数据xabq,并对加密数据xabq进行解密,以及解密后所得到的模糊查询结果返回至员工电脑。
本实施例提供了一种模糊查询装置,第二接收模块601,用于接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;第二确定模块602,用于根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;发送模块603,用于将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
可选的,所述第二确定模块602,还包括:
用于从所述查询令牌中获取至少一个加密后的查询条件数据段;
将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配;
在所述加密索引集合中的目标加密索引与所述至少一个加密后的查询条件数据段相匹配的情况下,根据所述目标加密索引中所包含加密数据的指针,确定与所述数据查询请求相对应的加密数据。
本实施例提供了一种模糊查询装置,用于从所述查询令牌中获取至少一个加密后的查询条件数据段;将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配;在所述加密索引集合中的目标加密索引与所述至少一个加密后的查询条件数据段相匹配的情况下,根据所述目标加密索引中所包含加密数据的指针,确定与所述数据查询请求相对应的加密数据,通过将至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
可选的,所述装置还包括:
用于从所述至少一个加密后的查询条件数据段中选取当前加密后的查询条件数据段,将所述加密索引集合中的第一加密索引的第一加密数据段作为当前加密数据段;其中,所述第一加密索引为所述加密索引集合中的任意一个加密索引;所述第一加密数据段为所述第一加密索引中的任意一个加密数据段;
将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配;
在匹配成功的情况下,判断所述至少一个加密后的查询条件数据段是否均已经完成匹配操作,在均已经完成匹配操作的情况下,确定所述第一加密索引与所述至少一个加密后的查询条件数据段匹配;在未均已经完成匹配操作的情况下,从所述至少一个加密后的查询条件数据段中选取未经匹配操作的加密后的查询条件数据段作为当前加密后的查询条件数据段,从所述第一加密索引中选取未经匹配操作的加密数据段作为当前加密数据段;然后重新执行所述将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配的步骤。
本实施例提供了一种模糊查询装置,用于从所述至少一个加密后的查询条件数据段中选取当前加密后的查询条件数据段,将所述加密索引集合中的第一加密索引的第一加密数据段作为当前加密数据段;其中,所述第一加密索引为所述加密索引集合中的任意一个加密索引;所述第一加密数据段为所述第一加密索引中的任意一个加密数据段;将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配;在匹配成功的情况下,判断所述至少一个加密后的查询条件数据段是否均已经完成匹配操作,在均已经完成匹配操作的情况下,确定所述第一加密索引与所述至少一个加密后的查询条件数据段匹配;在未均已经完成匹配操作的情况下,从所述至少一个加密后的查询条件数据段中选取未经匹配操作的加密后的查询条件数据段作为当前加密后的查询条件数据段,从所述第一加密索引中选取未经匹配操作的加密数据段作为当前加密数据段;然后重新执行所述将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配的步骤,在解决了加密后的数据无法进行模糊检索的问题的同时,又保证了数据的安全性以及提高了数据的搜索效率。
图7为本发明实施例提供的电子设备实体结构示意图,如图7所示,所述电子设备包括:处理器(processor)701、存储器(memory)702和总线703;
其中,所述处理器701、存储器702通过总线703完成相互间的通信;
所述处理器701用于调用所述存储器702中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端;
或者,接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端;
或者,接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端;
或者,接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (12)

1.一种模糊查询方法,其特征在于,应用于加解密端,包括:
接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
对所述数据查询请求中的检索条件进行加密生成查询令牌;
将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
2.根据权利要求1所述的模糊查询方法,其特征在于,在所述接收客户端发送的数据查询请求之前,方法还包括:
接收客户端发送的待存储明文数据;
判断所述待存储明文数据是否包含特征值;其中,所述特征值是用于对数据进行分割的符号;
在所述待存储明文数据包含特征值的情况下,根据所述特征值对所述待存储明文数据进行数据分割,对数据分割后所得到的数据段进行加密,得到加密数据段以及加密数据段之间的层级关系;对所述待存储明文数据进行加密,得到待存储加密数据;
根据加密数据段以及加密数据段之间的层级关系,得到待存储加密索引;其中,所述待存储加密索引包含有加密数据段以及相邻加密数据段的指针,还包含了对所述待存储加密数据的指针;
将所述待存储加密数据以及待存储加密索引发送至服务端,以使得所述服务端将所述待存储加密数据保存在加密数据集合中,将所述待存储加密索引保存在加密索引集合中。
3.根据权利要求1或2所述的模糊查询方法,其特征在于,所述对所述数据查询请求中的检索条件进行加密生成查询令牌,包括:
判断所述检索条件中是否包含特征值;
在所述检索条件包含特征值的情况下,根据所述特征值对所述检索条件进行数据分割,得到至少一个查询条件数据段;
对所得到的至少一个查询条件数据段进行加密生成查询令牌。
4.根据权利要求2所述的模糊查询方法,其特征在于,所述根据所述特征值对所述待存储明文数据进行数据分割后,方法还包括:
在分割后所得到的数据段的数量超过预设阈值的情况下,改变特征值分割的初始条件以减少分割后所得到的数据段的数量。
5.一种模糊查询方法,其特征在于,应用于服务端,包括:
接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
6.根据权利要求5所述的模糊查询方法,其特征在于,所述根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据,包括:
从所述查询令牌中获取至少一个加密后的查询条件数据段;
将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配;
在所述加密索引集合中的目标加密索引与所述至少一个加密后的查询条件数据段相匹配的情况下,根据所述目标加密索引中所包含加密数据的指针,确定与所述数据查询请求相对应的加密数据。
7.根据权利要求6所述的模糊查询方法,其特征在于,所述将所述至少一个加密后的查询条件数据段与所述加密索引集合中的各个加密索引进行匹配,包括:
从所述至少一个加密后的查询条件数据段中选取当前加密后的查询条件数据段,将所述加密索引集合中的第一加密索引的第一加密数据段作为当前加密数据段;其中,所述第一加密索引为所述加密索引集合中的任意一个加密索引;所述第一加密数据段为所述第一加密索引中的任意一个加密数据段;
将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配;
在匹配成功的情况下,判断所述至少一个加密后的查询条件数据段是否均已经完成匹配操作,在均已经完成匹配操作的情况下,确定所述第一加密索引与所述至少一个加密后的查询条件数据段匹配;在未均已经完成匹配操作的情况下,从所述至少一个加密后的查询条件数据段中选取未经匹配操作的加密后的查询条件数据段作为当前加密后的查询条件数据段,从所述第一加密索引中选取未经匹配操作的加密数据段作为当前加密数据段;然后重新执行所述将所述当前加密后的查询条件数据段与所述当前加密数据段进行匹配的步骤。
8.一种模糊查询装置,其特征在于,应用于加解密端,包括:第一接收模块,加密模块,第一确定模块,解密模块,其中:
第一接收模块,用于接收客户端发送的数据查询请求,所述数据查询请求包括检索条件;
加密模块,用于对所述数据查询请求中的检索条件进行加密生成查询令牌;
第一确定模块,用于将所述查询令牌发送至存储有加密数据集合以及加密索引集合的服务端,以使得所述服务端根据所述加密索引集合中的加密索引与所述查询令牌,从所述加密数据集合中确定与所述数据查询请求相对应的加密数据;
解密模块,用于接收与所述数据查询请求相对应的加密数据,对所述加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
9.一种模糊查询装置,其特征在于,应用于服务端,其特征在于,包括:第二接收模块,第二确定模块,发送模块,其中:
第二接收模块,用于接收查询令牌;其中,所述查询令牌是对从客户端接收到的数据查询请求中的检索条件进行加密得到的;
第二确定模块,用于根据所述查询令牌与预先存储的加密索引集合中的加密索引,从预先存储的加密数据集合中确定与所述数据查询请求相对应的加密数据;
发送模块,用于将所述与所述数据查询请求相对应的加密数据发送至加解密端,以使得所述加解密端对与所述数据查询请求相对应的加密数据进行解密,将所得到的模糊查询结果返回至所述客户端。
10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述一种模糊查询方法的步骤,或者,所述处理器执行所述计算机程序时实现如权利要求5至7任一项所述方法的步骤。
11.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述一种模糊查询方法的步骤,或者,所述计算机程序被处理器执行时实现如权利要求5至7任一项所述方法的步骤。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述一种模糊查询方法的步骤,或者,所述计算机程序被处理器执行时实现如权利要求5至7任一项所述方法的步骤。
CN202210306550.0A 2022-03-25 2022-03-25 模糊查询方法、装置、电子设备及存储介质 Pending CN114661793A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210306550.0A CN114661793A (zh) 2022-03-25 2022-03-25 模糊查询方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210306550.0A CN114661793A (zh) 2022-03-25 2022-03-25 模糊查询方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN114661793A true CN114661793A (zh) 2022-06-24

Family

ID=82031516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210306550.0A Pending CN114661793A (zh) 2022-03-25 2022-03-25 模糊查询方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114661793A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168907A (zh) * 2022-09-05 2022-10-11 盛业信息科技服务(深圳)有限公司 保护数据隐私的数据匹配方法、系统、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110347723A (zh) * 2019-07-12 2019-10-18 税友软件集团股份有限公司 一种数据查询方法、系统及电子设备和存储介质
CN113434555A (zh) * 2021-07-09 2021-09-24 支付宝(杭州)信息技术有限公司 一种基于可搜索加密技术的数据查询方法和装置
CN113642038A (zh) * 2021-08-09 2021-11-12 杭州安恒信息技术股份有限公司 一种可搜索加密方法、装置、设备及存储介质
CN114201532A (zh) * 2021-12-09 2022-03-18 富途网络科技(深圳)有限公司 基于esop系统的数据查询方法、装置、介质及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110347723A (zh) * 2019-07-12 2019-10-18 税友软件集团股份有限公司 一种数据查询方法、系统及电子设备和存储介质
CN113434555A (zh) * 2021-07-09 2021-09-24 支付宝(杭州)信息技术有限公司 一种基于可搜索加密技术的数据查询方法和装置
CN113642038A (zh) * 2021-08-09 2021-11-12 杭州安恒信息技术股份有限公司 一种可搜索加密方法、装置、设备及存储介质
CN114201532A (zh) * 2021-12-09 2022-03-18 富途网络科技(深圳)有限公司 基于esop系统的数据查询方法、装置、介质及设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168907A (zh) * 2022-09-05 2022-10-11 盛业信息科技服务(深圳)有限公司 保护数据隐私的数据匹配方法、系统、设备及存储介质
CN115168907B (zh) * 2022-09-05 2022-11-29 盛业信息科技服务(深圳)有限公司 保护数据隐私的数据匹配方法、系统、设备及存储介质

Similar Documents

Publication Publication Date Title
US10498706B2 (en) Searchable encryption enabling encrypted search based on document type
Fu et al. Toward efficient multi-keyword fuzzy search over encrypted outsourced data with accuracy improvement
US10089487B2 (en) Masking query data access pattern in encrypted data
US10985902B2 (en) Dynamic symmetric searchable encryption
US11341128B2 (en) Poly-logarithmic range queries on encrypted data
US9852306B2 (en) Conjunctive search in encrypted data
US9740879B2 (en) Searchable encryption with secure and efficient updates
US9197613B2 (en) Document processing method and system
Awad et al. Chaotic searchable encryption for mobile cloud storage
US20230370245A1 (en) Privacy-Preserving Domain Name Services (DNS)
CN110674247A (zh) 弹幕信息的拦截方法、装置、存储介质及设备
US11010493B2 (en) Multiple message retrieval for secure electronic communication
CN112199420A (zh) 一种房产隐私字段信息模糊搜索方法
CN114661793A (zh) 模糊查询方法、装置、电子设备及存储介质
JP2006189925A (ja) 個人情報管理システム、個人情報管理プログラムおよび個人情報保護方法
CN115455463A (zh) 一种基于同态加密的隐匿sql查询方法
CN112148739A (zh) 独立于加密数据库的密文索引方法及系统
CN114547647B (zh) 一种基于差分隐私的模式保护动态可搜索加密方法
WO2024130721A1 (en) Data storage server and client devices for securely storing and retrieving data
CN117573962A (zh) 基于中间件的搜索引擎检索方法
CN118796105A (zh) 数据管理方法、设备、存储介质及产品
CN114579602A (zh) 基于加密数据的数据检索方法、装置、存储介质和设备
US20200034350A1 (en) Data Table Control
CN117130991A (zh) 一种数据共享方法、装置、设备和存储介质
KR20230124206A (ko) 위치 정보를 기반으로 문서 파일을 관리하기 위한 문서 관리 서비스 서버 및 그 동작 방법

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