CN114547078A - 基于隐私计算的联邦跨特征查询方法、装置、介质及设备 - Google Patents
基于隐私计算的联邦跨特征查询方法、装置、介质及设备 Download PDFInfo
- Publication number
- CN114547078A CN114547078A CN202210166815.1A CN202210166815A CN114547078A CN 114547078 A CN114547078 A CN 114547078A CN 202210166815 A CN202210166815 A CN 202210166815A CN 114547078 A CN114547078 A CN 114547078A
- Authority
- CN
- China
- Prior art keywords
- query
- data
- target
- statement
- intersection
- 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
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/242—Query formulation
- G06F16/2433—Query languages
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本公开属于数据处理技术领域,涉及一种基于隐私计算的联邦跨特征查询方法及装置、存储介质、电子设备。该方法包括:获取目标查询语句,并执行目标查询语句得到初始查询结果;其中,目标查询语句是数据查询方根据不带条件的查询语句发送的;从数据查询方获取与初始查询结果对应的查询关键词,并对初始查询结果和查询关键词进行隐私集合求交得到交集数据;对交集数据与初始查询结果进行匹配得到目标查询结果,并对目标查询结果进行加密处理得到加密数据,以将加密数据发送至数据查询方。本公开支持了初始查询结果中包括一个或者多个查询数据的情况,解决了查询结果被窃取的问题,提升了数据传输的安全性。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及一种基于隐私计算的联邦跨特征查询方法、装置、计算机可读存储介质及电子设备。
背景技术
当数据在本方数据库时,执行对应的查询语句就可以实现数据查询。当本方要查询其他方数据库中的数据时,要求数据查询的同时保护双方的隐私,一般可以通过匿踪查询来实现。匿踪查询是指数据查询方隐藏目标查询对象关键词,例如客户标识信息(Identity,ID)等,数据提供方提供匹配的查询结果却无法获知具体对应的目标查询对象,从而实现数据不出门且能计算,杜绝数据缓存、数据泄漏、数据贩卖的可能性。
当利用匿踪查询实现获取其他数据库中的数据时,通常要根据查询对象编写不同的条件语句,不仅增加了数据查询过程中的操作成本和时间成本,在编写的条件语句不正确或者存在逻辑问题时,还会出现数据查询失败和错误的情况。除此之外,由于数据库对于数据查询方来说是相对公开的,在匿踪查询过程中,不可避免地会产生数据泄漏。
鉴于此,本领域亟需开发一种新的基于隐私计算的联邦跨特征查询方法及装置。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种基于隐私计算的联邦跨特征查询方法、基于隐私计算的联邦跨特征查询装置、计算机可读存储介质及电子设备,进而至少在一定程度上克服由于相关技术的限制而导致的数据安全性不足的技术问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本发明实施例的第一个方面,提供一种基于隐私计算的联邦跨特征查询方法,应用于数据提供方,所述方法包括:
获取目标查询语句,并执行所述目标查询语句得到初始查询结果;其中,所述目标查询语句是数据查询方根据不带条件的查询语句发送的;
从所述数据查询方获取与所述初始查询结果对应的查询关键词,并对所述初始查询结果和所述查询关键词进行隐私集合求交得到交集数据;
对所述交集数据与所述初始查询结果进行匹配得到目标查询结果,并对所述目标查询结果进行加密处理得到加密数据,以将所述加密数据发送至所述数据查询方。
在本发明的一种示例性实施例中,所述初始查询结果,包括:查询属性值以及与所述查询属性值对应的查询特征值之间的对应关系。
在本发明的一种示例性实施例中,所述对所述初始查询结果和所述查询关键词进行隐私集合求交得到交集数据,包括:
对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
在本发明的一种示例性实施例中,所述对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据,包括:
利用不经意传输协议对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
在本发明的一种示例性实施例中,所述对所述交集数据与所述初始查询结果进行匹配得到目标查询结果,包括:
对所述对应关系和所述交集数据进行匹配得到目标查询结果,所述目标查询结果包括所述查询属性值和所述查询特征值。
在本发明的一种示例性实施例中,所述对所述目标查询结果进行加密处理得到加密数据,以将所述加密数据发送至所述数据查询方,包括:
获取与所述查询属性值对应的密钥,并利用所述密钥对所述目标查询结果进行加密处理得到加密数据;
将所述加密数据发送至所述数据查询方,以使所述数据查询方利用所述密钥对所述加密数据进行解密处理得到所述目标查询结果。
根据本发明实施例的第二个方面,提供另一种基于隐私计算的联邦跨特征查询方法,应用于数据查询方,所述方法包括:
向数据提供方发送目标查询语句,并接收所述数据提供方返回的与所述目标查询语句对应的加密数据;其中,所述目标查询语句是所述数据查询方根据不带条件的查询语句发送的;
对所述加密数据进行解密处理得到目标查询结果,所述目标查询结果为所述不带条件的查询语句的查询结果。
根据本发明实施例的第三个方面,提供一种基于隐私计算的联邦跨特征查询装置,应用于数据提供方,包括:
数据查询模块,被配置为获取目标查询语句,并执行所述目标查询语句得到初始查询结果;其中,所述目标查询语句是数据查询方根据不带条件的查询语句发送的;
数据求交模块,被配置为从所述数据查询方获取与所述初始查询结果对应的查询关键词,并对所述初始查询结果和所述查询关键词进行隐私集合求交得到交集数据;
数据加密模块,被配置为对所述交集数据与所述初始查询结果进行匹配得到目标查询结果,并对所述目标查询结果进行加密处理得到加密数据,以将所述加密数据发送至所述数据查询方。
在本发明的一种示例性实施例中,所述初始查询结果,包括:查询属性值以及与所述查询属性值对应的查询特征值之间的对应关系。
在本发明的一种示例性实施例中,所述数据求交模块,包括:
隐私求交子模块,被配置为对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
在本发明的一种示例性实施例中,所述隐私求交子模块,包括:
协议求交单元,被配置为利用不经意传输协议对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
在本发明的一种示例性实施例中,所述数据加密模块,包括:
数据匹配子模块,被配置为对所述对应关系和所述交集数据进行匹配得到目标查询结果,所述目标查询结果包括所述查询属性值和所述查询特征值。
在本发明的一种示例性实施例中,所述数据加密模块,包括:
密钥获取子模块,被配置为获取与所述查询属性值对应的密钥,并利用所述密钥对所述目标查询结果进行加密处理得到加密数据;
数据发送子模块,被配置为将所述加密数据发送至所述数据查询方,以使所述数据查询方利用所述密钥对所述加密数据进行解密处理得到所述目标查询结果。
根据本发明实施例的第四个方面,提供另一种基于隐私计算的联邦跨特征查询装置,应用于数据查询方,包括:
查询请求模块,被配置为向数据提供方发送目标查询语句,并接收所述数据提供方返回的与所述目标查询语句对应的加密数据;其中,所述目标查询语句是所述数据查询方根据不带条件的查询语句发送的;
数据解密模块,被配置为对所述加密数据进行解密处理得到目标查询结果,所述目标查询结果为所述不带条件的查询语句的查询结果。
根据本发明实施例的第五个方面,提供一种电子设备,包括:处理器和存储器;其中,存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述任意示例性实施例中的基于隐私计算的联邦跨特征查询方法。
根据本发明实施例的第六个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意示例性实施例中的基于隐私计算的联邦跨特征查询方法。
由上述技术方案可知,本公开示例性实施例中的基于隐私计算的联邦跨特征查询方法、基于隐私计算的联邦跨特征查询装置、计算机存储介质及电子设备至少具备以下优点和积极效果:
在本公开的示例性实施例提供的方法及装置中,通过对初始查询结果和查询关键词进行隐私集合求交,支持了初始查询结果中包括一个或者多个查询数据的情况,在隐私集合求交的过程中不会泄露数据提供方和数据查询方除初始查询结果和查询关键词之外的其他信息,保障了数据提供方和数据查询方双方的隐私数据安全性。数据提供方通过向数据查询方发送加密数据的方式提供目标查询结果,解决了因数据传输带来的查询结果泄漏的问题,提升了数据传输的安全性。除此之外,由于目标查询语句是根据不带条件的查询语句得到的,因此数据提供方通过隐私集合求交和加密处理的过程实现了数据查询方和数据提供方两方之间的联邦跨特征的不带条件的查询,在此过程中无需除数据查询方和数据提供方之外的协调方参与,查询流程简便,且安全性和实用性极强。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开示例性实施例中一种基于隐私计算的联邦跨特征查询方法的流程示意图;
图2示意性示出本公开示例性实施例中另一种基于隐私计算的联邦跨特征查询方法的流程示意图;
图3示意性示出本公开示例性实施例中一种应用场景下基于隐私计算的联邦跨特征查询方法的流程示意图;
图4示意性示出本公开示例性实施例中一种基于隐私计算的联邦跨特征查询装置的结构示意图;
图5示意性示出本公开示例性实施例中另一种基于隐私计算的联邦跨特征查询装置的结构示意图;
图6示意性示出本公开示例性实施例中一种用于实现基于隐私计算的联邦跨特征查询方法的电子设备;
图7示意性示出本公开示例性实施例中一种用于实现基于隐私计算的联邦跨特征查询方法的计算机可读存储介质。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
本说明书中使用用语“一个”、“一”、“该”和“所述”用以表示存在一个或多个要素/组成部分/等;用语“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”和“第二”等仅作为标记使用,不是对其对象的数量限制。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。
当数据在本方数据库时,执行对应的查询语句就可以实现查询数据。当本方要查询其他方数据库中的数据时,要求数据查询的同时保护双方的隐私,一般可以通过匿踪查询来实现。匿踪查询是指数据查询方隐藏目标查询对象关键词,例如客户标识信息等,数据提供方提供匹配的查询结果却无法获知具体对应的目标查询对象,从而实现数据不出门且能计算,杜绝数据缓存、数据泄漏、数据贩卖的可能性。
当利用匿踪查询实现获取其他数据库中的数据时,通常要根据查询对象编写不同的条件语句,不仅增加了数据查询过程中的操作成本和时间成本,在编写的条件语句不正确或者存在逻辑问题时,还会出现数据查询失败和错误的情况。除此之外,由于数据库对于数据查询方来说是相对公开的,在匿踪查询过程中,不可避免的会产生数据泄漏。
针对相关技术中存在的问题,本公开提出了一种基于隐私计算的联邦跨特征查询方法,应用于数据提供方。图1示出了一种基于隐私计算的联邦跨特征查询方法的流程图,如图1所示,基于隐私计算的联邦跨特征查询方法至少包括以下步骤:
步骤S110.获取目标查询语句,并执行目标查询语句得到初始查询结果;其中,目标查询语句是数据查询方根据不带条件的查询语句发送的。
步骤S120.从数据查询方获取与初始查询结果对应的查询关键词,并对初始查询结果和查询关键词进行隐私集合求交得到交集数据。
步骤S130.对交集数据与初始查询结果进行匹配得到目标查询结果,并对目标查询结果进行加密处理得到加密数据,以将加密数据发送至数据查询方。
在本公开的示例性实施例中,通过对初始查询结果和查询关键词进行隐私集合求交,支持了初始查询结果中包括一个或者多个查询数据的情况,在隐私集合求交的过程中不会泄露数据提供方和数据查询方除初始查询结果和查询关键词之外的其他信息,保障了数据提供方和数据查询方双方的隐私数据安全性。数据提供方通过向数据查询方发送加密数据的方式提供目标查询结果,解决了因数据传输带来的查询结果被窃取的问题,提升了数据传输的安全性。除此之外,根据数据查询方输入的不带条件的查询语句得到目标查询语句,并进行后续的隐私集合求交和加密处理,因此通过隐私集合求交和加密处理的过程实现了数据查询方和数据提供方两方之间的联邦跨特征的不带条件的查询,在此过程中也无需除数据查询方和数据提供方之外的协调方参与,查询流程简便,且安全性和实用性极强。
下面对一种基于隐私计算的联邦跨特征查询方法的各个步骤进行详细说明。
在步骤S110中,获取目标查询语句,并执行目标查询语句得到初始查询结果;其中,目标查询语句是数据查询方根据不带条件的查询语句发送的。
在本公开的示例性实施例中,数据查询方(client)想要查询数据提供方(server)数据库中的数据,数据提供方能够提供授权的数据表和字段给数据查询方。
举例而言,当数据查询方想要查询特定客户的年龄时,数据查询方只需输入一个查询语句实现。该查询语句可以是SQL(Structured Query Language,结构化查询语言)语句。
SQL是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
举例来说,该SQL语句具体可以是:select id,age from table1 where id in(12996837,345562701)。
其中,id为查询对象,(12996837,345562701)为查询对象关键词。因此,该SQL语句表征的含义是从表1中查询id为12996837和345562701的用户的id值和年龄。
由于该SQL查询语句在“where”后仅有id,而该id能够唯一表征不同的客户,因此可以认为是不带条件的查询语句。而对应的带条件的查询语句在“where”后还会携带例如收入、职业、性别等字段。
因此,当查询语句为SQL语句时,不带条件的查询语句是指SQL语句的“where”条件不含除查询对象之外的其他特征的语句。对应的,当查询语句为SQL语句时,带条件的查询语句是指SQL语句的“where”条件除了包含查询对象之外,还包括其他特征的语句。
但是,目标查询语句并不等同于数据查询方输入的SQL语句,而是包含查询字段名id和age的语句。因此,数据查询方会将查询字段名id和age发送给数据提供方,以使数据提供方在数据库中执行目标查询语句:select id,age from table1。
在数据提供方执行目标查询语句之后能够得到对应的初始查询结果。
在可选的实施例中,初始查询结果,包括:查询属性值以及与查询属性值对应的查询特征值之间的对应关系。
举例而言,当目标查询语句为select id,age from table1时,查询属性值可以是id值,例如初始查询结果可以是“id值:[“12996837”,“345562701”,“82917214”,…]”。
当目标查询语句为select id,age from table1时,查询属性值与查询特征值之间的对应关系可以是id值与年龄特征值之间的对应关系,例如初始查询结果可以是“id值与年龄特征值:[“12996837_25”,“345562701_52”,“82917214_33”,…]”。
在步骤S120中,从数据查询方获取与初始查询结果对应的查询关键词,并对初始查询结果和查询关键词进行隐私集合求交得到交集数据。
在本公开的示例性实施例中,由于数据查询方能够在SQL语句:select id,agefrom table1 where id in(12996837,345562701)中获取到[“12996837”,“345562701”]的待查询id,因此可以确定id为12996837和id为345562701作为查询关键词。
进一步的,可以对初始查询结果与查询关键词进行隐私集合求交。
在可选的实施例中,对查询属性值与查询关键词进行隐私集合求交得到交集数据。
隐私集合求交(Private Set Intersection,PSI)属于安全多方计算(SecureMuti-party Computation,SMPC)的特定领域应用问题,常用的解决方案主要分为两类。
一类是采用常用的不经意传输、加密电路、同态加密等密码学工具箱组合成隐私集合求交方法,目前常用的隐私集合求交方式主要有哈希、公钥加密、电路、不经意传输扩展协议的/全同态方式等,这种方式要求参与计算的双方地位平等,没有可信第三方,将自己的数据集混淆处理后依据各种协议进行隐私集合计算。
另外一类是基于可信执行环境(Trusted Execution Environment,TEE)的隐私集合计算,这种方式是集中化的,将可信执行环境TEE作为可信的第三方,数据拥有方分别将自己的隐私数据加密或者哈希后将数据传输到第三方的可信执行环境中,所有数据传输完成后再进行隐私计算。
在可选的实施例中,利用不经意传输协议对查询属性值与查询关键词进行隐私集合求交得到交集数据。
不经意传输协议(Oblivious Transfer,OT)是指一种可保护隐私的双方通信协议,可以使通信双方以一种选择模糊化的方式发送消息。OT协议可以是服务接收方以不经意的方式得到服务发送方输入的某些信息,从而保护服务接收方的隐私不被服务发送方所知。其中,在不经意传输协议中的服务接收方等同于数据查询过程中的数据查询方,不经意传输协议中的服务发送方等同于数据查询过程中的数据提供方。
不经意传输协议的具体内容可以是服务发送方发出N条信息,执行协议后服务接收方将得到想要的一条或者几条消息,服务发送方不能控制服务接收方的选择,也不知道服务接收方收到的是哪些消息,而服务接收方不能得到其选择之外的信息。
不经意传输协议具有正确性,即若服务发送方和服务接收方正确执行协议,则服务接收方可以确定其得到了想要的信息。其中,当服务接收方选择其中一条消息,即执行是1-out-of协议;当服务接收方选择其中m条消息,则执行的是m-out-of协议。
当查询属性值是“id值:[“12996837,”“345562701,”“82917214,”…],”查询关键词是id为12996837和id为345562701时,利用不经意传输协议对查询属性值的id值和查询关键词的id值进行隐私集合求交得到相交的id值,亦即交集数据。此时,该交集数据为id是12996837和id是345562701等。
值得说明的是,也可以是利用不经意传输扩展协议(extend OT)对查询属性值和查询关键词进行隐私集合求交。由于不经意传输扩展协议是基于不经意传输协议的优化得到的,因此,利用不经意传输扩展协议对查询属性值和查询关键词进行隐私集合求交的速度更快,效率更高。
在本示例性实施例中,利用不经意传输协议对查询属性值和查询关键词进行隐私集合求交保护了服务接收方和服务发送方,亦即数据查询方和数据提供方两方的数据隐私,提升了多方的数据安全性。除此之外,还能够支持一个或者多个查询对象关键词的情况,丰富了数据查询的应用场景。
在步骤S130中,对交集数据与初始查询结果进行匹配得到目标查询结果,并对目标查询结果进行加密处理得到加密数据,以将加密数据发送至数据查询方。
在本公开的示例性实施例中,得到交集数据之后,能够对交集数据和初始查询结果进行匹配。
在可选的实施例中,对对应关系和交集数据进行匹配得到目标查询结果,目标查询结果包括查询属性值和查询特征值。
由于查询属性值以及与查询属性值对应的查询特征值之间的对应关系可以是id值与年龄特征值之间的对应关系,例如初始查询结果可以是“id值与年龄特征值:[“12996837_25,”“345562701_52,”“82917214_33,”…],”并且,交集数据为id是12996837和id是345562701,因此,利用交集数据的id值与对应关系中包括的id值进行匹配,能够得到对应关系中包括的查询属性值和查询特征值组成的目标查询结果。
例如,该目标查询结果可以是“12996837_25”和“345562701_52”。其中,12996837和345562701可以是查询属性值,25和52可以是查询特征值。
值得说明的是,目标查询结果除了可以是先利用不经意传输协议对查询属性值与查询关键词进行隐私集合求交得到交集数据,再对交集数据以及查询属性值与查询特征值之间的对应关系进行匹配的方式得到,还可以是直接对查询关键词以及查询属性值与查询特征值之间的对应关系进行隐私集合求交的方式得到,根据实际情况及需求执行对应的隐私集合求交过程,本示例性实施例对此不做特殊限定。
进一步的,在匹配出目标查询结果之后,可以对目标查询结果进行加密处理得到加密数据。在可选的实施例中,获取与查询属性值对应的密钥,并利用密钥对目标查询结果进行加密处理得到加密数据。
该密钥可以是在利用不经意传输协议对查询属性值和查询关键词进行隐私集合求交过程中得到的,因此,每个查询属性值都对应一个密钥。
进一步的,可以利用该密钥对与查询属性值对应的目标查询结果进行加密处理得到加密数据。因此,该加密数据即为data result mask(数据结果掩码)。
值得说明的是,利用该密钥对目标查询结果进行加密处理可以是对称加密处理。对称加密是加密秘钥与解密秘钥是同一个密钥。对称加密的算法可以包括数据加密算法、三重数据加密算法、BlowFish算法等。
更进一步的,还可以将该加密数据发送至数据查询方。
在可选的实施例中,将加密数据发送至数据查询方,以使数据查询方利用密钥对加密数据进行解密得到目标查询结果。
由于数据提供方是通过对称加密得到加密数据的,因此在数据查询方接收到该加密数据之后,可以采用相同的密钥对该加密数据进行解密处理得到目标查询结果。
在本示例性实施例中,数据提供方通过加密数据向数据查询方提供目标查询结果,避免了数据传输过程中带来的数据泄露问题,进一步提升了数据查询过程的安全性。
针对相关技术中存在的问题,本公开还提出了一种基于隐私计算的联邦跨特征查询方法,应用于数据查询方。图2示出了另一种基于隐私计算的联邦跨特征查询方法的流程图,如图2所示,基于隐私计算的联邦跨特征查询方法至少包括以下步骤:
步骤S210.向数据提供方发送目标查询语句,并接收数据提供方返回的与目标查询语句对应的加密数据;其中,目标查询语句是数据查询方根据不带条件的查询语句发送的;
步骤S220.对加密数据进行解密处理得到目标查询结果,目标查询结果为不带条件的查询语句的查询结果。
在本公开的示例性实施例中,数据查询方向数据提供方发送根据不带条件的查询语句得到的目标查询语句,以使数据提供方进行不带条件的查询,实现了数据查询方和数据提供方两方之间的联邦跨特征的不带条件的查询,同时,在此过程中也无需除数据查询方和数据提供方之外的协调方参加,查询流程简便,实用性极强。并且,数据提供方向数据查询方通过加密数据的方式反馈目标查询结果,解决了因数据传输带来的查询结果泄漏的问题,提升了数据传输的安全性。
下面对另一种基于隐私计算的联邦跨特征查询方法的各个步骤进行详细说明。
在步骤S210中,向数据提供方发送目标查询语句,并接收数据提供方返回的与目标查询语句对应的加密数据;其中,目标查询语句是数据查询方根据不带条件的查询语句发送的。
在本公开的示例性实施例中,数据查询方想要查询数据提供方数据库中的数据,数据提供方能够提供授权的数据表和字段给数据查询方。
举例而言,当数据查询方想要查询特定客户的年龄时,数据查询方只需输入一个查询语句实现。该查询语句可以是SQL语句。
举例来说,该SQL语句具体可以是:select id,age from table1 where id in(12996837,345562701)。
其中,id为查询对象,(12996837,345562701)为查询对象关键词。因此,该SQL语句表征的含义是从表1中查询id为12996837和345562701的用户的id值和年龄。
由于该SQL查询语句在“where”后仅有id,而该id能够唯一表征不同的客户,因此可以认为是不带条件的查询语句。而对应的带条件的查询语句在“where”后还会携带例如收入、职业、性别等字段。
因此,当查询语句为SQL语句时,不带条件的查询语句是指SQL语句的“where”条件不含除查询对象之外的其他特征的语句。对应的,当查询语句为SQL语句时,带条件的查询语句是指SQL语句的“where”条件除了包含查询对象之外,还包括其他特征的语句。。
但是,目标查询语句并不等同于数据查询方输入的SQL语句,而是包含查询字段名id和age的语句。因此,数据查询方会将查询字段名id和age发送给数据提供方,以使数据提供方在数据库中执行目标查询语句:select id,age from table1。
基于此,在数据查询方想要查询数据提供方数据库中的数据时,可以通过该不带条件的查询语句得到目标查询语句,并将目标查询语句发送至数据提供方,以便于数据提供方进行数据查询。
在数据提供方完成数据查询之后,可以向数据查询方返回加密数据。
该加密数据是数据提供方对目标查询结果进行加密处理得到的。
具体的,在数据提供方获取到数据查询方发送的目标查询语句之后,数据提供方可以执行目标查询语句得到对应的初始查询结果。
其中,初始查询结果可以包括:查询属性值以及与查询属性值对应的查询特征值之间的对应关系。
举例而言,当目标查询语句为select id,age from table1时,查询属性值可以是id值,例如初始查询结果可以是“id值:[“12996837”,“345562701”,“82917214”,…]”。
当目标查询语句为select id,age from table1时,查询属性值与查询特征值之间的对应关系可以是id值与年龄特征值之间的对应关系,例如初始查询结果可以是“id值与年龄特征值:[“12996837_25”,“345562701_52”,“82917214_33”,…]”。
由于数据查询方能够在SQL语句:select id,age from table1 where id in(12996837,345562701)中获取到[“12996837”,“345562701”]的待查询id,因此可以确定id为12996837和id为345562701作为查询关键词。
进一步的,数据提供方可以对初始查询结果与查询关键词进行隐私集合求交。
隐私集合求交属于安全多方计算的特定领域应用问题,常用的解决方案主要分为两类。
一类是采用常用的不经意传输、加密电路、同态加密等密码学工具箱组合成隐私集合求交方法,目前常用的隐私集合求交方式主要有哈希、公钥加密、电路、不经意传输扩展协议的/全同态方式等,这种方式要求参与计算的双方地位平等,没有可信第三方,将自己的数据集混淆处理后依据各种协议进行隐私集合计算。
另外一类是基于可信执行环境的隐私集合计算,这种方式是集中化的,将可信执行环境TEE作为可信的第三方,数据拥有方分别将自己的隐私数据加密或者哈希后将数据传输到第三方的可信执行环境中,所有数据传输完成后再进行隐私计算。
具体的,对查询属性值与查询关键词进行隐私集合求交得到交集数据。并且,该隐私集合求交可以是利用不经意传输协议实现的。
其中,不经意传输协议是指一种可保护隐私的双方通信协议,可以使通信双方以一种选择模糊化的方式发送消息。OT协议可以是服务接收方以不经意的方式得到服务发送方输入的某些信息,从而保护服务接收方的隐私不被服务发送方所知。其中,在不经意传输协议中的服务接收方等同于数据查询过程中的数据查询方,不经意传输协议中的服务发送方等同于数据查询过程中的数据提供方。
不经意传输协议的具体内容可以是服务发送方发出N条信息,执行协议后服务接收方将得到想要的一条或者几条消息,服务发送方不能控制服务接收方的选择,也不知道服务接收方收到的是哪些消息,而服务接收方不能得到其选择之外的信息。
不经意传输协议具有正确性,即若服务发送方和服务接收方正确执行协议,则服务接收方可以确定其得到了想要的信息。其中,当服务接收方选择其中一条消息,即执行是1-out-of协议;当服务接收方选择其中m条消息,则执行的是m-out-of协议。
当查询属性值是“id值:[“12996837,”“345562701,”“82917214,”…],”查询关键词是id为12996837和id为345562701时,数据提供方利用不经意传输协议对查询属性值的id值和查询关键词的id值进行隐私集合求交得到相交的id值,亦即交集数据。此时,该交集数据为id是12996837和id是345562701等。
值得说明的是,也可以是利用不经意传输扩展协议(extend OT)对查询属性值和查询关键词进行隐私集合求交。由于不经意传输扩展协议是基于不经意传输协议的优化得到的,因此,利用不经意传输扩展协议对查询属性值和查询关键词进行隐私集合求交的速度更快,效率更高。
利用不经意传输协议对查询属性值和查询关键词进行隐私集合求交保护了服务接收方和服务发送方,亦即数据查询方和数据提供方两方的数据隐私,提升了多方的数据安全性。除此之外,还能够支持一个或者多个查询对象关键词的情况,丰富了数据查询的应用场景。
进而,数据提供方对对应关系和交集数据进行匹配得到目标查询结果,目标查询结果包括查询属性值和查询特征值。
由于查询属性值以及与查询属性值对应的查询特征值之间的对应关系可以是id值与年龄特征值之间的对应关系,例如初始查询结果可以是“id值与年龄特征值:[“12996837_25,”“345562701_52,”“82917214_33,”…],”并且,交集数据为id是12996837和id是345562701,因此,数据提供方利用交集数据的id值与对应关系中包括的id值进行匹配,能够得到对应关系中包括的查询属性值和查询特征值组成的目标查询结果。
例如,该目标查询结果可以是“12996837_25”和“345562701_52”。其中,12996837和345562701可以是查询属性值,25和52可以是查询特征值。
值得说明的是,目标查询结果除了可以是先利用不经意传输协议对查询属性值与查询关键词进行隐私集合求交得到交集数据,再对交集数据以及查询属性值与查询特征值之间的对应关系进行匹配的方式得到,还可以是直接对查询关键词以及查询属性值与查询特征值之间的对应关系进行隐私集合求交的方式得到,根据实际情况需求执行对应的隐私集合求交过程,本示例性实施例对此不做特殊限定。
进一步的,数据提供方在匹配出目标查询结果之后,可以对目标查询结果进行加密处理得到加密数据。
具体的,数据提供方获取与查询属性值对应的密钥,并利用密钥对目标查询结果进行加密处理得到加密数据。
该密钥可以是在利用不经意传输协议对查询属性值和查询关键词进行隐私集合求交过程中得到的,因此,每个查询属性值都对应一个密钥。
进一步的,可以利用该密钥对与查询属性值对应的目标查询结果进行加密处理得到加密数据。因此,该加密数据即为data result mask。
值得说明的是,利用该密钥对目标查询结果进行加密处理可以是对称加密处理。对称加密指的是加密秘钥与解密秘钥是同一个密钥。对称加密的算法可以包括数据加密算法、三重数据加密算法、BlowFish算法等。
此时,数据提供方会将该加密数据发送至数据查询方,以使数据查询方接收到与不带条件的查询语句对应的目标查询语句。
在步骤S220中,对加密数据进行解密处理得到目标查询结果,目标查询结果为不带条件的查询语句的查询结果。
在本公开的示例性实施例中,由于数据提供方是通过对称加密得到加密数据的,因此在数据查询方接收到该加密数据之后,可以采用相同的密钥对该加密数据进行解密处理得到目标查询结果。在此过程中,数据提供方通过加密数据向数据查询方提供目标查询结果,避免了数据传输过程中带来的数据泄露问题,进一步提升了数据查询过程的安全性。
下面结合一应用场景对本公开实施例中基于隐私计算的联邦跨特征查询方法做出详细说明。
在一应用场景下,当电商A为数据查询方,银行B为数据提供方时,银行B能够提供手机号、收入、职业、性别和年龄等字段。当电商A想要通过银行B查询到某些用户的收入和年龄情况,以便更精准的进行商品推荐时,由于电商A可以知晓用户的手机号,因此电商A能够输入SQL语句:select phone_number,age,salary from table1 where phone_numberin(186,135)进行数据查询。其中,phone_number为查询对象。而该SQL语句表征的是查询手机号为186或135的用户的手机号和年龄。
其中,该SQL语句的“where”后面仅包含唯一表征用户的手机号,因此是不带条件的查询语句。通过该查询语句能够实现匿踪查询。
值得说明的是,当数据查询方发送的查询语句为SQL语句时,不带条件的查询语句指的是SQL语句的“where”条件不含除查询对象之外的其他特征的语句。
匿踪查询是指,查询方可以向发送方查询某个关键词对应的数据内容,但不会暴露自己查询的关键词;发送方可以向查询方应答对应的数据内容,但不会暴露数据库中与查询关键词无关的数据。发送方的数据库中存储着多个关键词和对应的查询结果,发送方将接收到的关键词查找对应的检索结果,并向接收方进行反馈。
图3示出了一种应用场景下基于隐私计算的联邦跨特征查询方法的流程示意图,如图3所示,具体实现过程如下:
步骤S310,输入SQL:select id,age from table1 where id in(12996837,345562701)。
当数据查询方想要查询特定客户的年龄时,数据查询方只需输入以下SQL语句:select id,age from table1 where id in(12996837,345562701)。
其中,id为查询对象,(12996837,345562701)为查询关键词。因此,该SQL语句表征的含义是,从表1中查询id为12996837和345562701的用户的id值和年龄。
由于该SQL查询语句在“where”后仅有id,而该id能够唯一表征不同的客户,因此可以认为是不带条件的查询语句。而对应的带条件的查询语句在“where”后还会携带例如收入、职业、性别等字段。
因此,当查询语句为SQL语句时,不带条件的查询语句是SQL语句的“where”条件不含除查询对象之外的其他特征的语句。对应的,当查询语句为SQL语句时,带条件的查询语句是SQL语句的“where”条件除了包含查询对象之外,还包括其他特征的语句。
步骤S320,在数据库中执行SQL:select id,age from table1。
数据提供方授权的数据表包括table1,字段包括id和age。
目标查询语句并不等同于数据查询方输入的SQL语句,而是包含查询字段名id和age的语句。因此,数据查询方会将查询字段名id和age发送给数据提供方,以使数据提供方在数据库中执行目标查询语句:select id,age from table1。
在数据提供方执行目标查询语句之后能够得到对应的初始查询结果。
其中,初始查询结果,包括:查询属性值以及与查询属性值对应的查询特征值之间的对应关系,
举例而言,当目标查询语句为select id,age from table1时,查询属性值可以是id值,例如初始查询结果可以是“id值:[“12996837”,“345562701”,“82917214”,…]”。
当目标查询语句为select id,age from table1时,查询属性值以及与查询属性值对应的查询特征值之间的对应关系可以是id值与年龄特征值之间的对应关系,例如初始查询结果可以是“id值与特征值:[“12996837_25”,“345562701_52”,“82917214_33”,…]”。
由于PSI需要数据提供方和数据查询方两方的输入才能够执行,因此,通过在数据库中执行SQL:select id,age from table1,可以得到PSI在数据提供方的一方输入内容。
步骤S330,得到PSI的输入:[“12996837,”“345562701”]。
由于数据查询方能够在SQL语句:select id,age from table1 where id in(12996837,345562701)中获取到[“12996837,”“345562701”]的待查询id,因此可以确定id为12996837和id为345562701作为查询关键词。
其中,PSI属于安全多方计算的特定领域应用问题,常用的解决方案主要分为两类。
一类是采用常用的不经意传输、加密电路、同态加密等密码学工具箱组合成隐私集合求交方法,目前常用的隐私集合求交方式主要有哈希、公钥加密、电路、不经意传输扩展协议的/全同态方式等,这种方式要求参与计算的双方地位平等,没有可信第三方,将自己的数据集混淆处理后依据各种协议进行隐私集合计算。
另外一类是基于可信执行环境的隐私集合计算,这种方式是集中化的,将可信执行环境TEE作为可信的第三方,数据拥有方分别将自己的隐私数据加密或者哈希后将数据传输到第三方的可信执行环境中,所有数据传输完成后再进行隐私计算。
步骤S340,得到PSI的输入。
当数据查询方想要查询特定客户的年龄时,数据查询方在步骤S310输入下SQL语句:select id,age from table1 where id in(12996837,345562701)时,可以从中获取到[“12996837,”“345562701”]的待查询id,并将id为12996837和id为345562701作为查询关键词。
由于PSI需要数据提供方和数据查询方两方的输入才能够执行,因此,查询关键词此时可以作为数据查询方的另一方输入内容。
步骤S350,对id值进行PSI。
在数据提供方利用不经意传输协议对查询属性值与查询关键词进行隐私集合求交得到交集数据。
当查询属性值是“id值:[“12996837,”“345562701,”“82917214,”…],”查询关键词是id为12996837和id为345562701时,利用不经意传输协议对查询属性值的id值和查询关键词的id值进行隐私集合求交得到相交的id值,亦即交集数据。此时,该交集数据为id是12996837和id是345562701等。
值得说明的是,也可以是利用不经意传输扩展协议对查询属性值和查询关键词进行隐私集合求交。由于不经意传输扩展协议是基于不经意传输协议的优化得到的,因此,利用不经意传输扩展协议对查询属性值和查询关键词进行隐私集合求交的速度更快,效率更高。
并且,该利用不经意传输协议对查询属性值与查询关键词进行隐私集合求交得到交集数据的步骤也可以是数据查询方执行,本示例性实施例对此不做特殊限定。
在得到交集数据之后,能够对交集数据和初始查询结果进行匹配。
其中,对对应关系和交集数据进行匹配得到目标查询结果,目标查询结果包括查询属性值和查询特征值。
由于查询属性值以及与查询属性值对应的查询特征值之间的对应关系可以是id值与年龄特征值之间的对应关系,例如初始查询结果可以是“id值与年龄特征值:[“12996837_25,”“345562701_52,”“82917214_33,”…],”并且,交集数据为id是12996837和id是345562701,因此,利用交集数据的id值与对应关系中包括的id值进行匹配,能够得到对应关系中包括的查询属性值和查询特征值组成的目标查询结果。
例如,该目标查询结果可以是“12996837_25”和“345562701_52”。其中,12996837和345562701可以是查询属性值,25和52可以是查询特征值。
步骤S360,用各交集id值在extendOT中生成的key加密各交集id对应的查询数据。
在匹配出目标查询结果之后,可以对目标查询结果进行加密处理得到加密数据。
具体的,可以获取与查询属性值对应的密钥,并利用密钥对目标查询结果进行加密处理得到加密数据。
该密钥可以是在利用不经意传输协议对查询属性值和查询关键词进行隐私集合求交过程中得到的,因此,每个查询属性值都对应一个密钥。
进一步的,可以利用该密钥对与查询属性值对应的目标查询结果进行加密处理得到加密数据。因此,该加密数据即为data result mask。
值得说明的是,利用该密钥对目标查询结果进行加密处理可以是对称加密处理。对称加密是加密秘钥与解密秘钥是同一个密钥。对称加密的算法可以包括数据加密算法、三重数据加密算法、BlowFish算法等。
步骤S370,用各交集id值extendOT中生成的key解密data result mask。
将加密数据发送至数据查询方,以使数据查询方利用密钥对加密数据进行解密得到目标查询结果。
由于数据提供方是通过对称加密得到加密数据的,因此在数据查询方接收到该加密数据之后,可以采用相同的密钥对该加密数据进行解密处理得到目标查询结果。
步骤S380,数据查询方得到目标查询结果为[“12996837_25”,“34562701_52”]。
数据查询方能够得到目标查询结果[“12996837_25”,“34562701_52”]。其中,12996837和345562701可以是查询属性值,25和52可以是查询特征值。
在该应用场景下的基于隐私计算的联邦跨特征查询方法,通过对初始查询结果和查询关键词进行隐私集合求交,支持了初始查询结果中包括一个或者多个查询数据的情况,在隐私集合求交的过程中不会泄露数据提供方和数据查询方除初始查询结果和查询关键词之外的其他信息,保障了数据提供方和数据查询方双方的隐私数据安全性。数据提供方通过向数据查询方发送加密数据的方式提供目标查询结果,解决了因数据传输带来的查询结果被窃取的问题,提升了数据传输的安全性。
除此之外,根据数据查询方输入的不带条件的查询语句得到目标查询语句,并进行后续的隐私集合求交和加密处理,因此通过隐私集合求交和加密处理的过程实现了数据查询方和数据提供方两方之间的联邦跨特征的不带条件的查询,在此过程中也无需除数据查询方和数据提供方之外的协调方参与,查询流程简便,且安全性和实用性极强。
此外,在本公开的示例性实施例中,还提供一种基于隐私计算的联邦跨特征查询装置,应用于数据提供方。图4示出了一种基于隐私计算的联邦跨特征查询装置的结构示意图,如图4所示,基于隐私计算的联邦跨特征查询装置400可以包括:数据查询模块410、数据求交模块420和数据加密模块430。其中:
数据查询模块410,被配置为获取目标查询语句,并执行所述目标查询语句得到初始查询结果;其中,所述目标查询语句是数据查询方根据不带条件的查询语句发送的;
数据求交模块420,被配置为从所述数据查询方获取与所述初始查询结果对应的查询关键词,并对所述初始查询结果和所述查询关键词进行隐私集合求交得到交集数据;
数据加密模块430,被配置为对所述交集数据与所述初始查询结果进行匹配得到目标查询结果,并对所述目标查询结果进行加密处理得到加密数据,以将所述加密数据发送至所述数据查询方。
在本发明的一种示例性实施例中,所述初始查询结果,包括:查询属性值以及与所述查询属性值对应的查询特征值之间的对应关系。
在本发明的一种示例性实施例中,所述数据求交模块,包括:
隐私求交子模块,被配置为对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
在本发明的一种示例性实施例中,所述隐私求交子模块,包括:
协议求交单元,被配置为利用不经意传输协议对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
在本发明的一种示例性实施例中,所述数据加密模块,包括:
数据匹配子模块,被配置为对所述对应关系和所述交集数据进行匹配得到目标查询结果,所述目标查询结果包括所述查询属性值和所述查询特征值。
在本发明的一种示例性实施例中,所述数据加密模块,包括:
密钥获取子模块,被配置为获取与所述查询属性值对应的密钥,并利用所述密钥对所述目标查询结果进行加密处理得到加密数据;
数据发送子模块,被配置为将所述加密数据发送至所述数据查询方,以使所述数据查询方利用所述密钥对所述加密数据进行解密处理得到所述目标查询结果。
上述基于隐私计算的联邦跨特征查询装置400的具体细节已经在对应的基于隐私计算的联邦跨特征查询方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了基于隐私计算的联邦跨特征查询装置400的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供另一种基于隐私计算的联邦跨特征查询装置,应用于数据查询方。图5示出了一种基于隐私计算的联邦跨特征查询装置的结构示意图,如图5所示,基于隐私计算的联邦跨特征查询装置500可以包括:查询请求模块510和数据解密模块520。其中:
查询请求模块510,被配置为向数据提供方发送目标查询语句,并接收所述数据提供方返回的与所述目标查询语句对应的加密数据;其中,所述目标查询语句是所述数据查询方根据不带条件的查询语句发送的;
数据解密模块520,被配置为对所述加密数据进行解密处理得到目标查询结果,所述目标查询结果为所述不带条件的查询语句的查询结果。
上述基于隐私计算的联邦跨特征查询装置500的具体细节已经在对应的基于隐私计算的联邦跨特征查询方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了基于隐私计算的联邦跨特征查询装置500的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
下面参照图6来描述根据本发明的这种实施例的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)621和/或高速缓存存储单元622,还可以进一步包括只读存储单元(ROM)623。
存储单元620还可以包括具有一组(至少一个)程序模块625的程序/实用工具624,这样的程序模块625包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备800(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器640通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施例的步骤。
参考图7所示,描述了根据本发明的实施例的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (11)
1.一种基于隐私计算的联邦跨特征查询方法,其特征在于,应用于数据提供方,所述方法包括:
获取目标查询语句,并执行所述目标查询语句得到初始查询结果;其中,所述目标查询语句是数据查询方根据不带条件的查询语句发送的;
从所述数据查询方获取与所述初始查询结果对应的查询关键词,并对所述初始查询结果和所述查询关键词进行隐私集合求交得到交集数据;
对所述交集数据与所述初始查询结果进行匹配得到目标查询结果,并对所述目标查询结果进行加密处理得到加密数据,以将所述加密数据发送至所述数据查询方。
2.根据权利要求1所述的基于隐私计算的联邦跨特征查询方法,其特征在于,所述初始查询结果,包括:查询属性值以及与所述查询属性值对应的查询特征值之间的对应关系。
3.根据权利要求2所述的基于隐私计算的联邦跨特征查询方法,其特征在于,所述对所述初始查询结果和所述查询关键词进行隐私集合求交得到交集数据,包括:
对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
4.根据权利要求3所述的基于隐私计算的联邦跨特征查询方法,其特征在于,所述对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据,包括:
利用不经意传输协议对所述查询属性值与所述查询关键词进行隐私集合求交得到交集数据。
5.根据权利要求2-4任一项所述的基于隐私计算的联邦跨特征查询方法,其特征在于,所述对所述交集数据与所述初始查询结果进行匹配得到目标查询结果,包括:
对所述对应关系和所述交集数据进行匹配得到目标查询结果,所述目标查询结果包括所述查询属性值和所述查询特征值。
6.根据权利要求5所述的基于隐私计算的联邦跨特征查询方法,其特征在于,所述对所述目标查询结果进行加密处理得到加密数据,以将所述加密数据发送至所述数据查询方,包括:
获取与所述查询属性值对应的密钥,并利用所述密钥对所述目标查询结果进行加密处理得到加密数据;
将所述加密数据发送至所述数据查询方,以使所述数据查询方利用所述密钥对所述加密数据进行解密处理得到所述目标查询结果。
7.一种基于隐私计算的联邦跨特征查询方法,其特征在于,应用于数据查询方,所述方法包括:
向数据提供方发送目标查询语句,并接收所述数据提供方返回的与所述目标查询语句对应的加密数据;其中,所述目标查询语句是所述数据查询方根据不带条件的查询语句发送的;
对所述加密数据进行解密处理得到目标查询结果,所述目标查询结果为所述不带条件的查询语句的查询结果。
8.一种基于隐私计算的联邦跨特征查询装置,其特征在于,应用于数据提供方,包括:
数据查询模块,被配置为获取目标查询语句,并执行所述目标查询语句得到初始查询结果;其中,所述目标查询语句是数据查询方根据不带条件的查询语句发送的;数据求交模块,被配置为从所述数据查询方获取与所述初始查询结果对应的查询关键词,并对所述初始查询结果和所述查询关键词进行隐私集合求交得到交集数据;
数据加密模块,被配置为对所述交集数据与所述初始查询结果进行匹配得到目标查询结果,并对所述目标查询结果进行加密处理得到加密数据,以将所述加密数据发送至所述数据查询方。
9.一种基于隐私计算的联邦跨特征查询装置,其特征在于,应用于数据查询方,包括:
查询请求模块,被配置为向数据提供方发送目标查询语句,并接收所述数据提供方返回的与所述目标查询语句对应的加密数据;其中,所述目标查询语句是所述数据查询方根据不带条件的查询语句发送的;
数据解密模块,被配置为对所述加密数据进行解密处理得到目标查询结果,所述目标查询结果为所述不带条件的查询语句的查询结果。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7中任意一项所述的基于隐私计算的联邦跨特征查询方法。
11.一种电子设备,其特征在于,包括:
处理器;
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器被配置为经由执行所述可执行指令来执行权利要求1-7中任意一项所述的基于隐私计算的联邦跨特征查询方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210166815.1A CN114547078A (zh) | 2022-02-23 | 2022-02-23 | 基于隐私计算的联邦跨特征查询方法、装置、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210166815.1A CN114547078A (zh) | 2022-02-23 | 2022-02-23 | 基于隐私计算的联邦跨特征查询方法、装置、介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114547078A true CN114547078A (zh) | 2022-05-27 |
Family
ID=81677899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210166815.1A Pending CN114547078A (zh) | 2022-02-23 | 2022-02-23 | 基于隐私计算的联邦跨特征查询方法、装置、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114547078A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114880688A (zh) * | 2022-06-02 | 2022-08-09 | 上海富数科技有限公司广州分公司 | 一种隐私计算平台系统及数据导入方法 |
CN115017184A (zh) * | 2022-08-10 | 2022-09-06 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种数据查询方法、装置、介质及设备 |
CN115168455A (zh) * | 2022-09-07 | 2022-10-11 | 华控清交信息科技(北京)有限公司 | 一种模糊查询方法、装置、多方安全计算系统和可读存储介质 |
CN115795547A (zh) * | 2022-12-09 | 2023-03-14 | 京信数据科技有限公司 | 用于查询数据的方法、装置、终端及计算机存储介质 |
-
2022
- 2022-02-23 CN CN202210166815.1A patent/CN114547078A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114880688A (zh) * | 2022-06-02 | 2022-08-09 | 上海富数科技有限公司广州分公司 | 一种隐私计算平台系统及数据导入方法 |
CN115017184A (zh) * | 2022-08-10 | 2022-09-06 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种数据查询方法、装置、介质及设备 |
CN115017184B (zh) * | 2022-08-10 | 2022-11-08 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 一种数据查询方法、装置、介质及设备 |
CN115168455A (zh) * | 2022-09-07 | 2022-10-11 | 华控清交信息科技(北京)有限公司 | 一种模糊查询方法、装置、多方安全计算系统和可读存储介质 |
CN115795547A (zh) * | 2022-12-09 | 2023-03-14 | 京信数据科技有限公司 | 用于查询数据的方法、装置、终端及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10476662B2 (en) | Method for operating a distributed key-value store | |
CN114547078A (zh) | 基于隐私计算的联邦跨特征查询方法、装置、介质及设备 | |
US10346627B2 (en) | Privacy preserving data querying | |
US8484480B2 (en) | Transmitting information using virtual input layout | |
US10095719B2 (en) | Method and system to perform secure Boolean search over encrypted documents | |
US10664610B2 (en) | Method and system for range search on encrypted data | |
CN108811519A (zh) | 用于在不公开特定识别信息的情况下建立标识符之间的链接的系统和方法 | |
US20170308580A1 (en) | Data Aggregation/Analysis System and Method Therefor | |
US8769302B2 (en) | Encrypting data and characterization data that describes valid contents of a column | |
US9608969B1 (en) | Encrypted augmentation storage | |
US9641328B1 (en) | Generation of public-private key pairs | |
CN115795514A (zh) | 一种隐私信息检索方法、装置及系统 | |
CN112788001A (zh) | 一种基于数据加密的数据处理业务处理方法、装置及设备 | |
Dhumal et al. | Confidentiality-conserving multi-keyword ranked search above encrypted cloud data | |
US20230006813A1 (en) | Encrypted information retrieval | |
JP2014528680A (ja) | デジタルコンテンツ伝送の方法、システムおよび装置 | |
CN115599959A (zh) | 数据共享方法、装置、设备及存储介质 | |
US11741257B2 (en) | Systems and methods for obtaining anonymized information derived from data obtained from external data providers | |
CN108141462B (zh) | 数据库查询的方法和系统 | |
WO2021076104A1 (en) | Systems and methods for protecting data | |
CN114647662B (zh) | 数据检索方法、装置、电子设备、存储介质 | |
CN114793156B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN117827884A (zh) | 一种批量数据查询方法及装置 | |
KR20220076687A (ko) | 데이터 이름 기반 네트워크를 통한 데이터 거래 제공 방법 및 이를 위한 마켓 플레이스 시스템 | |
CN116881516A (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 |