CN113434555B - 一种基于可搜索加密技术的数据查询方法和装置 - Google Patents
一种基于可搜索加密技术的数据查询方法和装置 Download PDFInfo
- Publication number
- CN113434555B CN113434555B CN202110778284.7A CN202110778284A CN113434555B CN 113434555 B CN113434555 B CN 113434555B CN 202110778284 A CN202110778284 A CN 202110778284A CN 113434555 B CN113434555 B CN 113434555B
- Authority
- CN
- China
- Prior art keywords
- data
- query
- token
- ciphertext
- candidate
- 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
- G06F16/2455—Query execution
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
说明书披露一种基于可搜索加密技术的数据查询方法和装置。一种基于可搜索加密技术的数据查询方法,预先配置有密文数据库,密文数据库中存储有基于可搜索加密技术对明文数据加密得到的密文数据,以及各密文数据对应明文数据的数据令牌,包括:接收用户发起的查询请求,查询请求中携带查询条件;对查询条件进行可搜索加密得到密文查询条件,并生成查询条件的查询令牌;基于密文查询条件从密文数据库中查找到若干候选密文数据;针对每个候选密文数据,基于候选密文数据对应明文数据的数据令牌和查询条件的查询令牌,验证候选密文数据是否匹配查询条件;对匹配查询条件的候选密文数据进行解密得到目标明文数据,并将目标明文数据提供给用户。
Description
技术领域
本说明书涉及数据加密领域,特别涉及一种基于可搜索加密技术的数据查询方法和装置。
背景技术
在数据共享的场景中,可以将用于共享的数据存储到数据库中,各方均可以查询该数据库以获取所需的数据,实现共享的目的。在这一场景中,数据的安全性一直是备受关注的焦点。相关技术中,为了避免数据泄露,可以将密文数据存储到数据库中,而对密文数据的查询相比于对明文数据的查询来说难度较大,特别是当数据库中存储有大量的密文数据时,会出现查询效率低、查询不准确的问题。
发明内容
有鉴于此,本说明书提供一种基于可搜索加密技术的数据查询方法和装置。
具体地,本说明书是通过如下技术方案实现的:
一种基于可搜索加密技术的数据查询方法,预先配置有密文数据库,所述密文数据库中存储有基于可搜索加密技术对明文数据加密得到的密文数据,以及各密文数据对应明文数据的数据令牌,所述方法包括:
接收用户发起的查询请求,所述查询请求中携带查询条件;
对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据;
针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户。
一种基于可搜索加密技术的数据查询装置,包括:
接收单元,接收用户发起的查询请求,所述查询请求中携带查询条件;
加密单元,对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
查找单元,基于所述密文查询条件从密文数据库中查找到若干候选密文数据;
验证单元,针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
解密单元,对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户。
一种基于可搜索加密技术的数据查询装置,包括:
处理器;
用于存储机器可执行指令的存储器;
其中,通过读取并执行所述存储器存储的与基于可搜索加密技术的数据查询逻辑对应的机器可执行指令,所述处理器被促使:
接收用户发起的查询请求,所述查询请求中携带查询条件;
对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据;
针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户。
本说明书一个实施例实现了,可以预先配置有密文数据库,该密文数据库中可以存储有基于可搜索加密技术对明文数据加密得到的密文数据,以及各密文数据对应明文数据的数据令牌。在接收到用户发起的查询请求后,可以对该查询请求中携带的查询条件进行可搜索加密得到密文查询条件,并且还可以生成查询条件的查询令牌。然后基于密文查询条件从密文数据库中查找到若干候选密文数据,并且还可以基于候选密文数据对应明文数据的数据令牌以及查询条件的查询令牌对每个候选密文数据进行验证,以验证其是否与查询条件匹配。若匹配,则可以对该候选密文数据解密,并将解密得到的目标明文数据提供给用户。
采用上述方法,可以基于可搜索加密技术,将密文数据存储到数据库,既可以提高数据安全性、防止数据泄露,也可以实现密文数据的可搜索。同时,还可以生成密文数据的数据令牌以及查询条件的查询令牌,基于这两个令牌可以对搜索得到的候选密文数据进行二次验证,以得到匹配查询条件的密文数据,解决了密文搜索的误判问题,提高查询的准确度。
附图说明
图1是本说明书一示例性实施例示出的一种基于可搜索加密技术的数据查询方法的流程示意图;
图2是本说明书一示例性实施例示出的一种密文数据库的生成方法的流程示意图;
图3是本说明书一示例性实施例示出的另一种基于可搜索加密技术的数据查询方法的流程示意图;
图4是本说明书一示例性实施例示出的一种基于可搜索加密技术的数据查询装置所在服务器的一种硬件结构图;
图5是本说明书一示例性实施例示出的一种基于可搜索加密技术的数据查询装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
生活中存在许多数据共享的场景,例如企业A需要使用企业B的一些数据以处理相关业务,企业B可以将自身持有的相关数据存储到指定的数据库中,企业A可以从该数据库里面获取到所需数据,实现数据共享的目的。
在数据共享场景中,数据的安全性一直是备受关注的焦点。若直接将明文数据存储到数据库上,会存在数据泄露的风险,安全性低。而若将密文数据存储到数据库中,则在对该数据库进行查询时难度较大,特别是当数据库内存储有大量数据时,很容易导致查询效率低、查询不准确。
基于此,本说明书提供了一种基于可搜索加密技术的数据查询方法。可以使用可搜索加密技术对明文数据进行加密,得到密文数据,并将密文数据存储到数据库中。在对该数据库进行查询时,基于可搜索加密技术查询到匹配的数据后,还可以对查询到的数据进一步验证,以确保最终得到的数据是准确的,既可以确保数据的安全,也可以提高数据查询的准确度、提高查询效率。
首先对可搜索加密技术进行简单介绍。
相关技术中,传统的搜索技术是基于明文的搜索技术,即无论是用户提交的查询关键字还是数据库中存储的数据均是明文的形式,在搜索时可以通过明文的比对方法查找到所需数据。但这种方式会存在数据泄露的问题,任何恶意的服务器均可以获取到用户的查询关键字、查询结果等信息,导致隐私泄露。
而可搜索加密技术是指能够在数据被加密的情况下实现搜索功能的一种技术,并且经过可搜索加密得到的查询关键词、查询结果也不会泄露任何信息。可搜索加密技术的具体实现依赖于密码学,包括对称密码算法和公钥密码算法。基于公钥密码算法主要使用双线性映射等代数工具,基于对称密钥的算法用到了伪随机函数,哈希算法以及对称加密算法等工具。它们可以适用于不同的应用场景。具体内容将会在后续的实施例中详细说明。
下面对本说明书提供的一种基于可搜索加密技术的数据查询方法的实施例进行说明。
请参见图1,图1是本说明书一示例性实施例示出的一种基于可搜索加密技术的数据查询方法的流程示意图。所述方法可以应用于具有存储器、处理器的电子设备中,例如服务器或者服务器集群。
所述方法可以包括以下步骤:
步骤102,接收用户发起的查询请求,所述查询请求中携带查询条件;
步骤104,对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
步骤106,基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据;
步骤108,针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
步骤110,对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户。
下面对上述步骤进行详细说明。
本实施例中,可以事先确定出用于数据共享的明文数据,对这些明文数据进行可搜索加密,得到密文数据,然后可以将密文数据存储到密文数据库中。并且还可以生成明文数据的数据令牌,并在密文数据库中存储该数据令牌,以及存储数据令牌和密文数据之间的对应关系,其中,由同一明文数据生成的密文数据和数据令牌之间存在对应关系。
其中,数据令牌是基于明文数据生成的,数据令牌对明文数据的内容具有表征意义,可以在后续基于数据令牌进行二次验证,生成数据令牌的方法以及验证的方法将会在后面的实施例中详细说明。
本实施例中,若用户想要从密文数据库中获取数据,可以发起查询请求,该查询请求中可以携带查询条件,该查询条件指示了用户需要查询的内容。举例来说,密文数据库中存储有若干用户的账单信息,其中包括张三的账单信息。若用户想要查询张三的账单信息,则用户可以提供查询条件为:张三。
服务端接收到查询请求后,可以对查询请求中携带的查询条件进行可搜索加密,得到密文查询条件。并且还可以生成该查询条件的查询令牌。类似的,查询令牌对查询条件的内容具有表征意义,可以用于后续的二次验证,生成查询令牌的方法将会在后面的实施例中详细说明。
本实施例中,服务端可以基于密文查询条件从密文数据库中查找到若干候选密文数据。在一些情况下,这些候选密文数据不一定是匹配查询条件的,有必要对这些候选密文数据进行二次验证。
可以针对每个候选密文数据,从密文数据库中获取该候选密文数据对应明文数据的数据令牌,然后对该数据令牌以及查询条件的查询令牌进行匹配,以验证该候选密文数据是否匹配查询条件。比配的具体方法将会在后面的实施例中详细说明。
本实施例中,对于密文的查询相比于对明文的查询来说更加复杂,可能会存在误判的情况,即查找到的候选密文数据虽然和密文查询条件匹配,但对应的明文数据可能并不匹配明文查询条件,这是由于算法自身的缺陷造成的。而本实施例中生成的查询令牌可以表征明文查询条件的内容、数据令牌可以表征明文数据的内容,通过对这两个令牌进行匹配,可以进一步对候选密文数据进行验证,以确定出用户所需的数据。解决了可搜索加密算法误判的问题,提高准确度。
本实施例中,若数据令牌和查询令牌匹配,则确定对应的候选密文数据验证通过。可以对验证通过的候选密文数据进行解密,得到目标明文数据,然后将目标明文数据提供给用户。
由以上描述可以看出,在本说明书的一个实施例中,可以预先配置有密文数据库,该密文数据库中可以存储有基于可搜索加密技术对明文数据加密得到的密文数据,以及各密文数据对应明文数据的数据令牌。在接收到用户发起的查询请求后,可以对该查询请求中携带的查询条件进行可搜索加密得到密文查询条件,并且还可以生成查询条件的查询令牌。然后基于密文查询条件从密文数据库中查找到若干候选密文数据,并且还可以基于候选密文数据对应明文数据的数据令牌以及查询条件的查询令牌对每个候选密文数据进行验证,以验证其是否与查询条件匹配。若匹配,则可以对该候选密文数据解密,并将解密得到的目标明文数据提供给用户。
采用上述方法,可以基于可搜索加密技术,将密文数据存储到数据库,既可以提高数据安全性、防止数据泄露,也可以实现密文数据的可搜索。同时,还可以生成密文数据的数据令牌以及查询条件的查询令牌,基于这两个令牌可以对搜索得到的候选密文数据进行二次验证,以得到匹配查询条件的密文数据,解决了密文搜索的误判问题,提高查询的准确度。
下面对本说明书以供的另一种基于可搜索加密技术的数据查询方法的实施例进行说明。
首先对密文数据库的生成过程进行说明。
请参见图2,图2是本说明书一示例性实施例示出的一种密文数据库的生成方法的流程示意图。所述方法可以应用服务端。所述方法可以包括以下步骤:
步骤202,获取用于数据共享的明文数据。
本实施例中,以企业A与企业B之间进行数据共享为例,假设企业B持有用户的账单信息,企业A想要获取这些账单信息以进行汇总、核算等业务处理,则企业B可以将这些账单信息提供给服务端。比如可以直接将这些账单信息发送给服务端,也可以向服务端发送这些账单信息所在的数据库信息(源数据库),以由服务端从源数据库中获取这些账单信息,本实施例对此不作特殊限制。
并且,若企业B直接将账单信息发送给服务端,则企业B还可以对账单信息进行加密,比如可以是利用服务端的公钥加密得到的密文,则服务端获取到密文后还可以利用自身的私钥对其解密,得到明文。这样可以防止数据在传输的过程中被泄露。
当然,上述企业之间数据共享的例子仅仅为示例性的说明,本说明书所述方法也可以适用于其他场景,对此不作特殊限制。
步骤204,对所述明文数据进行可搜索加密,得到密文数据。
本实施例中,服务端可以对明文数据进行可搜索加密。
比如,可以将明文数据输入到可搜索加密的加密组件中,该加密组件可以基于SM4算法(分组密码算法)对明文数据进行加密得到密文数据,并且还可以采用GCM(Galois/Counter Mode)模式,具体的加密方法可以参照相关技术,本实施例对此不作特殊限制。
步骤206,生成明文数据的数据令牌。
本实施例中,还可以生成明文数据的数据令牌,生成数据令牌的方法可以有多种。
在一个例子中,可以采用第一指定算法对对明文数据进行加密,将加密得到的数据作为数据令牌。该第一指定算法比如可以是对称加密,也可以是其他算法。
在另一个例子中,也采用第二指定算法对明文数据以及第一随机变量加密,将加密得到的数据作为数据令牌。其中,第一随机变量可以是随机生成的,并且还可以保存该第一随机变量,以使后续基于该第一随机变量进行验证,具体将会在后面的步骤中说明。通过引入随机变量,同样的明文加密后会得到不同的密文,可以提高数据令牌的安全性,不易被破解。
其中,第二指定算法比如可以是SM3(密码杂凑算法),第一随机变量可以是该算法中的初始值,该算法可以对初始值和明文进行多次迭代得到密文,具体可以参照相关技术,本实施例在此不作过多说明。
步骤208,将密文数据以及对应的数据令牌存储到密文数据库中。
本实施例中,可以将密文数据、数据令牌及其之间的映射关系存储到密文数据库中。当然,也可以对生成各数据令牌的第一随机变量进行存储,可以存储到密文数据库中,也可以存储到其他数据库中,对此不作特殊限制。
本实施例中,还可以基于布隆过滤器生成各密文数据的索引。布隆过滤器(BloomFilter)可以理解为一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以为每个数据生成索引,并通过该索引来检索某个元素是否在某个集合中。其优点是空间效率和查询时间都比一般的算法要优。
其中,布隆过滤器生成索引的具体方法可以参照相关技术,本实施例在此不作过多说明。生成的索引可以是一个二进制编码。
举例来说,假设源数据库中存储的数据为用户的账单信息,包括张三的账单信息、李四的账单信息和王五的账单信息,源数据中存储的数据可参见下表1:
数据编号 | 用户 | 账单信息 |
1 | 张三 | 2021.1.1还款1000元 |
2 | 李四 | 2021.1.2还款200元 |
3 | 王五 | 2021.1.6还款1500元 |
表1
可以对上表1中的3条数据进行加密,得到密文数据。并且还可以基于布隆过滤器生成各密文数据对应的索引,将密文数据以及对应的索引存储于密文数据库中。可参见
表2,表2示例性地示出了一种密文数据库中存储的数据:
数据编号 | 用户 | 账单信息 | 数据令牌 | 索引 |
1’ | 880b9fe8ee020a2a82aed15 | 6c406438cde9a1c9f75d | A4s5f4as35f | 10111011 |
2’ | d8951bf559213dbd97884c | f7f534527a7a27d9e5b | Fasf5s36 | 1110101 |
3’ | b78abdbb30f3bb5ed57121e | f7f534527a7a27d9e5b | F756f756 | 1000110 |
表2
上表2中的数据1’与上表1中的数据1对应,表征的是张三的账单信息这一数据。上表2中的数据2’与上表1中的数据2对应,表征的是李四的账单信息这一数据。上表2中的数据3’与上表1中的数据3对应,表征的是王五的账单信息这一数据。并且,表2中还可以存储有各密文数据对应的数据令牌。
当然,上表1和表2都为示例性的说明,其中涉及的数值均为便于理解而给出的,并不用于限制本说明书。在实际应用中源数据库以及密文数据库也可以是其他形式。
本实施例中,可以采用以上方法构建得到密文数据库。后续用户可以对该密文数据库进行查询,以得到所需的数据。
下面对对密文数据库进行查询的方法进行说明。
请参见图3,图3是本说明书一示例性实施例示出的另一种基于可搜索加密技术的数据查询方法的流程示意图。所述方法可以应用于服务器或者服务器集群,所述方法包括以下步骤:
步骤302,接收用户发起的查询请求,所述查询请求中携带查询条件。
本实施例中,可以开发有用于数据共享的客户端,如应用软件、小程序等,用户可以在该客户端上发起查询条件,并且在查询请求中添加查询条件。
仍以上述密文数据库中存储有用户账单信息为例,若用户想要查询张三的账单,则用户可以发起查询请求,并且在查询请求中携带“张三”这一查询条件。当然,该例子仅仅为示例性的说明,用户也可以自定义其他的查询条件。
客户端接收到该查询请求后,可以将该查询请求发送给服务端。
步骤304,对所述查询条件进行可搜索加密得到密文查询条件。
步骤306,生成所述查询条件的查询令牌。
本实施例中,一方面,服务端可以对查询请求中携带的查询条件进行加密。比如,可以将该查询条件输入到可搜索加密的加密组件中,通过该组件将查询条件转换为密文查询条件。转换为密文查询条件的加密算法与前述对明文数据进行可搜索加密的算法对应,如若采用布隆过滤器实现可搜索加密,而布隆过滤器可以生成密文数据的索引,则此处的密文查询条件可以针对该索引,例如可以是索引指定位置的编码值。
另一方面,服务端也可以生成密文查询条件的查询令牌。生成查询令牌的方法和前述步骤中生成数据令牌的方法相同。
在一个例子中,若数据令牌是基于第一指定算法对明文数据加密得到的,则可以采用该第一指定算法对明文查询条件进行加密,将加密得到的数据作为查询令牌。该第一指定算法比如可以是对称加密。
在另一个例子中,若数据令牌是基于第二指定算法对明文数据和第一随机变量加密得到的,则可以采用该第二指定算法对明文查询条件以及第二随机变量加密,将加密得到的数据作为数据令牌。类似的,第二随机变量也可以是随机生成的,并且还可以保存该第二随机变量,以使后续基于该第二随机变量进行验证,具体将会在后面的步骤中说明。
其中,第二指定算法比如可以是SM3,第二随机变量可以是该算法中的初始值,具体可以参照相关技术,本实施例在此不作过多说明。
值得说明的是,虽然本实施例中步骤306在步骤304之后,但实际上对这两个步骤的先后执行顺序并不作特殊限制。
步骤308,基于所述密文查询条件从所述密文数据库中查找到候选密文数据。
本实施例中,可以将密文查询条件转换为数据库可处理的SQL(Structured QueryLanguage,结构化查询语言)语句,然后密文查询引擎可以基于转换得到的语句在密文数据库中进行查询。具体转换为SQL语句的方法可以参照相关技术,本实施例在此不作过多说明。
仍以上表2为例,密文查询条件是索引指定位置的编码值,假设密文查询条件为[1,3],代表着索引的第1位和第3位编码值为1,则可以查找上表2得到符合该密文查询条件的密文数据有两条,分别为张三的账单信息和李四的账单信息,可以将这两条数据作为候选密文数据。
通过上述为密文数据库中的每条数据设置由布隆过滤器得到的索引,并且生成针对该索引的密文查询条件,可以基于这些密文查询条件对数据库中的索引进行匹配,只要比对指定位置的编码值是否符合要求即可找到所需的数据,可以大大提高查找效率。
当然,在实际应用中,当密文数据库内存储有大量的密文数据时,基于布隆过滤器进行搜索的方法可能会存在一定的误判率,即该密文数据库中可能会存储有许多指定位置的编码值符合密文查询条件的密文数据,而这些密文数据中可能会包括不是用户所需的数据。例如上述例子中查找到张三的账单信息和李四的账单信息这两条密文数据,而事实上只有张三的账单信息这条数据是用户需要的。
基于此,本实施例还可以基于密文数据的数据令牌以及查询条件的查询令牌,对查找到的候选密文数据进行二次验证。
步骤310,验证候选密文数据的数据令牌和查询条件的查询令牌是否匹配。若是,执行步骤312。
本实施例中,可以针对查找到的每个候选密文数据,对该密文数据执行以下操作以进行二次验证:
在一个例子中,密文数据的数据令牌是基于第一指定算法对明文数据加密得到的,查询令牌也是基于该第一指定算法对查询条件加密得到的。比如数据令牌和查询令牌均是采用对称密钥对“张三”加密得到的,则这两个令牌应当是一致的。
在二次验证时,可以验证数据令牌和查询令牌是否一致。若一致,说明候选加密数据匹配查询条件,确定验证通过。若不一致,说明候选加密数据不匹配查询条件,确定验证不通过。
在另一个例子中,密文数据的数据令牌可以是基于第二指定算法对明文数据以及第一随机变量加密得到的,而查询令牌是基于该第二指定算法对查询条件以及第二随机变量加密得到的。比如数据令牌可以是采用SM3算法对“张三”以及第一随机变量“fsdf42f4afd”加密得到的,而查询令牌是采用SM3算法对“张三”和第二随机变量“335sf4536sw”加密得到的。
在这种情况下,数据令牌和查询令牌是不一致的,可以基于第一随机变量、第二随机变量验证数据令牌和查询令牌是否匹配。具体的验证方法可以参照相关技术,本实施例在此不一一说明。
若数据令牌和查询令牌匹配,则验证通过,若数据令牌和查询令牌不匹配,则验证不通过。采用上述方法,在生成数据令牌和查询令牌时使用了不同的随机变量,使得最终得到的两个令牌在数值上是不一样的,这样可以进一步提高安全性,不易被破解。
本实施例中,明文数据可以包括若干字段,用户可以针对其中任一字段发起查询请求。为了在二次验证时覆盖各种可能的查询请求,在生成数据令牌时,可以生成每个字段对应的数据令牌。
比如,一条明文数据为“张三男30岁”,该条数据包括3个字段,分别为:姓名字段,字段值为“张三”;性别字段,字段值为“男”;年龄字段,字段值为“30岁”。则可以生成每个字段值对应的数据令牌,即基于“张三”生成数据令牌1、基于“男”生成数据令牌2、基于“30岁”生成数据令牌3。
在查询时,用户可以将“张三”、“男”、“30岁”中的任意一个或多个字段作为待查询字段以发起查询请求。则可以生成每个待查询字段对应的查询令牌。在查询到候选密文数据后,可以获取候选密文数据对应的各个数据令牌(比如为上述3个数据令牌),然后针对每个查询令牌,将该查询令牌和各个数据令牌进行匹配,若该查询令牌匹配任一数据令牌,则确定所述查询令牌验证通过。在各个查询令牌均验证通过的情况下,确定所述候选密文数据匹配所述查询条件。
举例来说,用户可以针对“张三”和“男”发起查询请求,则可以生成“张三”对应的查询令牌和“男”对应的查询令牌。可以先将“张三”对应的查询令牌和上述3个数据令牌分别匹配,得到“张三”匹配上述数据令牌1,则“张三”对应的查询令牌验证通过。将“男”对应的查询令牌和上述3个数据令牌分别匹配,得到“男”匹配上述数据令牌2,则“男”对应的查询令牌验证通过。在这两个查询令牌均验证通过的情况下,确定候选密文数据匹配查询条件。
本实施例中,对于验证不通过的候选密文数据,可以确定其不属于用户所需的数据,不再对其进行后续处理。而对于验证通过的候选密文数据,可以执行步骤312。
步骤312,对候选密文数据进行解密得到目标明文数据。
本实施例中,可以对验证通过的候选密文数据进行解密,解密方法与加密方法对应,例如加密时是采用SM4——GCM模式加密的,则可以用SM4——GCM模式对应的解密方法进行解密,得到目标明文数据。
步骤314,将目标明文数据发送给用户。
本实施例中,可以目标明文数据发送给用户。比如目标明文数据张三的账单信息:“2021.1.1还款1000元”,则服务端可以将该数据发送给客户端,客户端可以将其发送给用户。当然,服务端在发送该数据时也可以对该数据进行加密,比如使用客户端的公钥加密,以提高数据传输过程的安全性。
由以上描述可以看出,在本说明书的一个实施例中,可以事先生成密文数据库,并且还可以为密文数据库中的每条密文数据生成对应的索引。在对密文数据库进行查询时,可以生成针对该索引的密文查询条件,以基于该密文查询条件快速地查询到所需数据,提高查询效率。并且,为了确保查询准确度,还可以对查找到的候选密文数据进行二次校验,即可以生成密文数据对应明文数据的数据令牌以及查询条件的查询令牌,这两个令牌对明文数据的内容具有表征意义,可以验证这两个令牌是否匹配,若匹配则说明候选密文数据是准确的,解决了布隆过滤器的误判问题,提高了查询准确度。
与前述基于可搜索加密技术的数据查询方法的实施例相对应,本说明书还提供了基于可搜索加密技术的数据查询装置的实施例。
本说明书基于可搜索加密技术的数据查询装置的实施例可以应用在服务器上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在服务器的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本说明书基于可搜索加密技术的数据查询装置所在服务器的一种硬件结构图,除了图4所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的服务器通常根据该服务器的实际功能,还可以包括其他硬件,对此不再赘述。
图5是本说明书一示例性实施例示出的一种基于可搜索加密技术的数据查询装置的框图。
请参考图5,所述基于可搜索加密技术的数据查询装置可以应用在前述图4所示的服务器中,包括有:接收单元510、加密单元520、查找单元530、验证单元540和解密单号550。
其中,接收单元510,接收用户发起的查询请求,所述查询请求中携带查询条件;
加密单元520,对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
查找单元530,基于所述密文查询条件从密文数据库中查找到若干候选密文数据;
验证单元540,针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
解密单元550,对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户。
可选的,所述数据令牌基于第一指定算法对明文数据加密得到,所述查询令牌基于所述第一指定算法对查询条件加密得到,所述验证单元540在验证所述候选密文数据是否匹配所述查询条件时:
验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否一致;
在所述数据令牌和所述查询令牌一致的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述数据令牌基于第二指定算法对明文数据和第一随机变量加密得到,所述查询令牌基于所述第二指定算法对查询条件和第二随机变量加密得到,所述验证单元540在验证所述候选密文数据是否匹配所述查询条件时:
基于所述第一随机变量和所述第二随机变量,验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述明文数据包括若干字段,所述密文数据库中存储有所述明文数据各字段的数据令牌,所述加密单元520在生成所述查询条件中每个待查询字段对应的查询令牌时:
生成所述查询条件中每个待查询字段对应的查询令牌;
所述验证单元540在基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件时:
获取所述候选密文数据对应明文数据各个字段的数据令牌;
针对每个查询令牌,将所述数据令牌和所述查询令牌进行匹配,并在所述查询令牌匹配任一数据令牌的情况下确定所述查询令牌验证通过;
在各个查询令牌验证通过的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述查找单元530:
基于所述密文查询条件从所述密文数据库中查找到若干索引,并将所述索引对应的密文数据确定为所述候选密文数据。
可选的,所述索引为基于布隆过滤器生成的二进制编码,所述密文查询条件为索引指定位置的编码值。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
与前述基于可搜索加密技术的数据查询方法的实施例相对应,本说明书还提供一种基于可搜索加密技术的数据查询装置,该装置包括:处理器以及用于存储机器可执行指令的存储器。其中,处理器和存储器通常借由内部总线相互连接。在其他可能的实现方式中,所述设备还可能包括外部接口,以能够与其他设备或者部件进行通信。
在本实施例中,通过读取并执行所述存储器存储的与**逻辑对应的机器可执行指令,所述处理器被促使:
接收用户发起的查询请求,所述查询请求中携带查询条件;
对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据;
针对每个所述候选密文数据,基于所述候选密文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户。
可选的,所述数据令牌基于第一指定算法对明文数据加密得到,所述查询令牌基于所述第一指定算法对查询条件加密得到,在验证所述候选密文数据是否匹配所述查询条件时,所述处理器被促使:
验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否一致;
在所述数据令牌和所述查询令牌一致的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述数据令牌基于第二指定算法对明文数据和第一随机变量加密得到,所述查询令牌基于所述第二指定算法对查询条件和第二随机变量加密得到,在验证所述候选密文数据是否匹配所述查询条件时,所述处理器被促使:
基于所述第一随机变量和所述第二随机变量,验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述明文数据包括若干字段,所述密文数据库中存储有所述明文数据各字段的数据令牌,
在生成所述查询条件的查询令牌时,所述处理器被促使:
生成所述查询条件中每个待查询字段对应的查询令牌;
在基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件时,所述处理器被促使:
获取所述候选密文数据对应明文数据各个字段的数据令牌;
针对每个查询令牌,将所述数据令牌和所述查询令牌进行匹配,并在所述查询令牌匹配任一数据令牌的情况下确定所述查询令牌验证通过;
在各个查询令牌验证通过的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述密文数据库中还存储有各密文数据的索引,在基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据时,所述处理器被促使:
基于所述密文查询条件从所述密文数据库中查找到若干索引,并将所述索引对应的密文数据确定为所述候选密文数据。
可选的,所述索引为基于布隆过滤器生成的二进制编码,所述密文查询条件为索引指定位置的编码值。
与前述基于可搜索加密技术的数据查询方法的实施例相对应,本说明书还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现以下步骤:
接收用户发起的查询请求,所述查询请求中携带查询条件;
对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据;
针对每个所述候选密文数据,基于所述候选密文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户。
可选的,所述数据令牌基于第一指定算法对明文数据加密得到,所述查询令牌基于所述第一指定算法对查询条件加密得到,所述验证所述候选密文数据是否匹配所述查询条件,包括:
验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否一致;
在所述数据令牌和所述查询令牌一致的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述数据令牌基于第二指定算法对明文数据和第一随机变量加密得到,所述查询令牌基于所述第二指定算法对查询条件和第二随机变量加密得到,所述验证所述候选密文数据是否匹配所述查询条件,包括:
基于所述第一随机变量和所述第二随机变量,验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
可选的所述明文数据包括若干字段,所述密文数据库中存储有所述明文数据各字段的数据令牌,
所述生成所述查询条件的查询令牌,包括:
生成所述查询条件中每个待查询字段对应的查询令牌;
所述基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件,包括:
获取所述候选密文数据对应明文数据各个字段的数据令牌;
针对每个查询令牌,将所述数据令牌和所述查询令牌进行匹配,并在所述查询令牌匹配任一数据令牌的情况下确定所述查询令牌验证通过;
在各个查询令牌验证通过的情况下,确定所述候选密文数据匹配所述查询条件。
可选的,所述密文数据库中还存储有各密文数据的索引,所述基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据,包括:
基于所述密文查询条件从所述密文数据库中查找到若干索引,并将所述索引对应的密文数据确定为所述候选密文数据。
可选的,所述索引为基于布隆过滤器生成的二进制编码,所述密文查询条件为索引指定位置的编码值。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (10)
1.一种基于可搜索加密技术的数据查询方法,预先配置有密文数据库,所述密文数据库中存储有基于可搜索加密技术对明文数据加密得到的密文数据,以及各密文数据对应明文数据的数据令牌,所述方法包括:
接收用户发起的查询请求,所述查询请求中携带查询条件;
对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据;
针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户;
所述基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件,包括:
验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
2.根据权利要求1所述方法,所述数据令牌基于第一指定算法对明文数据加密得到,所述查询令牌基于所述第一指定算法对查询条件加密得到,所述验证所述候选密文数据是否匹配所述查询条件,包括:
验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否一致;
在所述数据令牌和所述查询令牌一致的情况下,确定所述候选密文数据匹配所述查询条件。
3.根据权利要求1所述方法,所述数据令牌基于第二指定算法对明文数据和第一随机变量加密得到,所述查询令牌基于所述第二指定算法对查询条件和第二随机变量加密得到,所述验证所述候选密文数据是否匹配所述查询条件,包括:
基于所述第一随机变量和所述第二随机变量,验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
4.根据权利要求1所述方法,所述明文数据包括若干字段,所述密文数据库中存储有所述明文数据各字段的数据令牌,
所述生成所述查询条件的查询令牌,包括:
生成所述查询条件中每个待查询字段对应的查询令牌;
所述基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件,包括:
获取所述候选密文数据对应明文数据各个字段的数据令牌;
针对每个查询令牌,将所述数据令牌和所述查询令牌进行匹配,并在所述查询令牌匹配任一数据令牌的情况下确定所述查询令牌验证通过;
在各个查询令牌验证通过的情况下,确定所述候选密文数据匹配所述查询条件。
5.根据权利要求1所述方法,所述密文数据库中还存储有各密文数据的索引,所述基于所述密文查询条件从所述密文数据库中查找到若干候选密文数据,包括:
基于所述密文查询条件从所述密文数据库中查找到若干索引,并将所述索引对应的密文数据确定为所述候选密文数据。
6.根据权利要求5所述方法,所述索引为基于布隆过滤器生成的二进制编码,所述密文查询条件为索引指定位置的编码值。
7.一种基于可搜索加密技术的数据查询装置,包括:
接收单元,接收用户发起的查询请求,所述查询请求中携带查询条件;
加密单元,对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
查找单元,基于所述密文查询条件从密文数据库中查找到若干候选密文数据;
验证单元,针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
解密单元,对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户;
其中,所述验证单元,验证候选密文数据的数据令牌和查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
8.根据权利要求7所述装置,所述数据令牌基于第一指定算法对明文数据加密得到,所述查询令牌基于所述第一指定算法对查询条件加密得到,所述验证单元在验证所述候选密文数据是否匹配所述查询条件时:
验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否一致;
在所述数据令牌和所述查询令牌一致的情况下,确定所述候选密文数据匹配所述查询条件。
9.根据权利要求7所述装置,所述数据令牌基于第二指定算法对明文数据和第一随机变量加密得到,所述查询令牌基于所述第二指定算法对查询条件和第二随机变量加密得到,所述验证单元在验证所述候选密文数据是否匹配所述查询条件时:
基于所述第一随机变量和所述第二随机变量,验证所述候选密文数据的数据令牌和所述查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
10.一种基于可搜索加密技术的数据查询装置,包括:
处理器;
用于存储机器可执行指令的存储器;
其中,通过读取并执行所述存储器存储的与基于可搜索加密技术的数据查询逻辑对应的机器可执行指令,所述处理器被促使:
接收用户发起的查询请求,所述查询请求中携带查询条件;
对所述查询条件进行可搜索加密得到密文查询条件,并生成所述查询条件的查询令牌;
基于所述密文查询条件从密文数据库中查找到若干候选密文数据;
针对每个所述候选密文数据,基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件;
对匹配所述查询条件的候选密文数据进行解密得到目标明文数据,并将所述目标明文数据提供给所述用户;
所述基于所述候选密文数据对应明文数据的数据令牌和所述查询条件的查询令牌,验证所述候选密文数据是否匹配所述查询条件,包括:
验证候选密文数据的数据令牌和查询条件的查询令牌是否匹配;
在所述数据令牌和所述查询令牌匹配的情况下,确定所述候选密文数据匹配所述查询条件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110778284.7A CN113434555B (zh) | 2021-07-09 | 2021-07-09 | 一种基于可搜索加密技术的数据查询方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110778284.7A CN113434555B (zh) | 2021-07-09 | 2021-07-09 | 一种基于可搜索加密技术的数据查询方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113434555A CN113434555A (zh) | 2021-09-24 |
CN113434555B true CN113434555B (zh) | 2022-03-11 |
Family
ID=77759944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110778284.7A Active CN113434555B (zh) | 2021-07-09 | 2021-07-09 | 一种基于可搜索加密技术的数据查询方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113434555B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115168907B (zh) * | 2022-09-05 | 2022-11-29 | 盛业信息科技服务(深圳)有限公司 | 保护数据隐私的数据匹配方法、系统、设备及存储介质 |
CN117610079B (zh) * | 2024-01-23 | 2024-04-09 | 中汽智联技术有限公司 | 数据安全处理方法、设备和存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069358B (zh) * | 2015-07-13 | 2018-09-04 | 杭州共享汇信息技术有限公司 | 基于带有存储结构的Bloom过滤器的关键词可搜索加密方法 |
US10922273B1 (en) * | 2017-10-13 | 2021-02-16 | University Of South Florida | Forward-private dynamic searchable symmetric encryption (DSSE) with efficient search |
CN111556048B (zh) * | 2020-04-26 | 2022-04-01 | 山东师范大学 | 一种支持密文模式匹配的属性基安全通信方法及系统 |
CN112115506B (zh) * | 2020-08-21 | 2022-10-25 | 山东师范大学 | 一种支持布尔查询的属性基数据搜索方法及系统 |
-
2021
- 2021-07-09 CN CN202110778284.7A patent/CN113434555B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113434555A (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10489604B2 (en) | Searchable encryption processing system and searchable encryption processing method | |
Sun et al. | Catch you if you lie to me: Efficient verifiable conjunctive keyword search over large dynamic encrypted cloud data | |
US9977918B2 (en) | Method and system for verifiable searchable symmetric encryption | |
US10282448B2 (en) | System and method for searching a symmetrically encrypted database for conjunctive keywords | |
CN105610910A (zh) | 面向云存储并基于全同态密码的密文全文检索方法及系统 | |
JP2014002365A (ja) | プライバシーを保護することができる暗号化データの問い合わせ方法及びシステム | |
CN113434555B (zh) | 一种基于可搜索加密技术的数据查询方法和装置 | |
JP2014119486A (ja) | 秘匿検索処理システム、秘匿検索処理方法、および秘匿検索処理プログラム | |
CN114840867B (zh) | 基于可交换加密数据混淆的数据查询方法、装置和系统 | |
Yi et al. | Privacy-preserving user profile matching in social networks | |
CN115834200A (zh) | 基于区块链的属性基可搜索加密数据共享方法 | |
CN110392038A (zh) | 一种多用户场景下可验证的多密钥可搜索加密方法 | |
CN114021164B (zh) | 基于区块链的征信系统隐私保护方法 | |
CN115795514A (zh) | 一种隐私信息检索方法、装置及系统 | |
CN108170753A (zh) | 一种共有云中Key-Value数据库加密与安全查询的方法 | |
WO2022099893A1 (zh) | 数据查询方法、装置、系统以及数据集处理方法 | |
CN117371011A (zh) | 数据隐匿查询方法、电子设备和可读存储介质 | |
CN117371010A (zh) | 数据匿踪查询方法、电子设备和可读存储介质 | |
CN115694921B (zh) | 一种数据存储方法、设备及介质 | |
CN108920968B (zh) | 一种基于连接关键词的文件可搜索加密方法 | |
Tosun et al. | FSDS: A practical and fully secure document similarity search over encrypted data with lightweight client | |
WO2017209228A1 (ja) | 暗号化情報照合装置、暗号化情報照合方法、及び、暗号化情報照合プログラムが格納された記録媒体 | |
Handa et al. | Keyword binning-based efficient search on encrypted cloud data | |
CN114978658B (zh) | 数据处理方法及装置 | |
CN114793156B (zh) | 一种数据处理方法、装置、设备及存储介质 |
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 |