一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

保护隐私的信息查询方法、装置、系统、设备及存储介质与流程

2022-02-25 23:46:58 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,尤其涉及一种保护隐私的信息查询方法、装置及系统、一种电子设备以及一种计算机可读存储介质。


背景技术:

2.银行交易风险控制系统可以利用取款人在取款时的位置信息评估取款账户的风险水平。例如,当取款人持卡在一个atm机取款时,银行可以通过与该卡关联的手机号码向运营商查询该手机在取款当时的位置;如果位置与atm机的位置相近,则说明持卡人和关联手机号码的手机持有者很可能是同一个人,那么取款人很可能就是银行卡所有者,该次取款的风险较低;否则取款人可能不是银行卡所有者,银行卡被盗用或冒用的风险较高。
3.当前的风控系统中,银行直接向运营商查询用户信息时,会向运营商泄露诸多用户隐私信息,例如所查询手机号码的主人是该银行的客户、该银行的atm机的位置、该位置的取款频次等等。
4.另外,客户在银行开户时,银行需要核验客户所留存的手机号码是否已经实名制并且与该客户在银行登记的证件信息是一致的。当前的做法为银行可以直接向运营商询问该号码的实名制信息,同时向运营商透露该号码所有者是该银行的潜在客户的情况。在个人隐私保护日益受到关注的情形下,需要银行能够在不泄露客户隐私的前提下完成上述功能。


技术实现要素:

5.本技术实施例的目的是提供一种保护隐私的信息查询方法、装置及系统、一种电子设备以及一种计算机可读存储介质,以在不泄露用户隐私的情况实现用户位置、实名认证等信息的查询。
6.为解决上述技术问题,本技术实施例提供如下技术方案:
7.本技术第一方面提供一种保护隐私的信息查询方法,用于数据请求方网关,包括:
8.接收数据请求方发送的针对目标查询对象的第一查询请求;
9.根据所述第一查询请求,向数据服务方网关发送针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合中包含所述目标查询对象;
10.接收所述数据服务方网关返回的包含已加密数据的查询结果数据集,所述查询结果数据集基于所述扩展查询对象集合中每个对象对应的查询结果确定;
11.根据所述查询结果数据集,利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果;
12.向所述数据请求方返回所述目标查询结果。
13.本技术第二方面提供一种保护隐私的信息查询方法,用于数据服务方网关,包括:
14.接收数据请求方网关发送的针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合包括目标查询对象;
15.向数据服务方发送所述第二查询请求,以通过所述数据服务方对所述扩展查询对象集合中每个对象进行查询;
16.根据查询到的每个所述对象对应的查询结果,生成包含已加密数据的查询结果数据集;
17.向所述数据请求方网关返回所述查询结果数据集,以使所述数据请求方网关根据所述查询结果数据集利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果。
18.本技术第三方面提供一种保护隐私的信息查询装置,用于数据请求方网关,包括:
19.第一查询请求接收模块,用于接收数据请求方发送的针对目标查询对象的第一查询请求;
20.第二查询请求发送模块,用于根据所述第一查询请求,向数据服务方网关发送针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合中包含所述目标查询对象;
21.查询结果数据集接收模块,用于接收所述数据服务方网关返回的包含已加密数据的查询结果数据集,所述查询结果数据集基于所述扩展查询对象集合中每个对象对应的查询结果确定;
22.目标查询结果确定模块,用于根据所述查询结果数据集,利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果;
23.目标查询结果发送模块,用于向所述数据请求方返回所述目标查询结果。
24.本技术第四方面提供一种保护隐私的信息查询装置,用于数据服务方网关,包括:
25.第二查询请求接收模块,用于接收数据请求方网关发送的针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合包括目标查询对象;
26.第二查询请求转发模块,用于向数据服务方发送所述第二查询请求,以通过所述数据服务方对所述扩展查询对象集合中每个对象进行查询;
27.查询结果数据集生成模块,用于根据查询到的每个所述对象对应的查询结果,生成包含已加密数据的查询结果数据集;
28.查询结果数据集发送模块,用于向所述数据请求方网关返回所述查询结果数据集,以使所述数据请求方网关根据所述查询结果数据集利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果。
29.本技术第五方面提供一种信息查询系统,包括:互相连接的数据请求方网关和数据服务方网关;其中,
30.所述数据请求方网关用于执行本技术第一方面提供的方法;
31.所述数据服务方网关用于执行本技术第二方面提供的方法。
32.本技术第六方面提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行以实现如本技术第一方面或第二方面提供的方法。
33.本技术第七方面提供一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如本技术第一方面或第二方面提供的方法。
34.相较于现有技术,本技术第一方面提供的保护隐私的信息查询方法,用于数据请
求方网关,数据请求方网关在接收到针对目标查询对象的第一查询请求后,不会将该第一查询请求直接转发给数据服务方,而是对目标查询对象进行扩展得到扩展查询对象集合,生成针对所述扩展查询对象集合的第二查询请求后,将第二查询请求发送给数据服务方网关,在接收到数据服务方网关返回的包含已加密数据的查询结果数据集后,再利用隐私保护集合交集算法确定针对目标查询对象的目标查询结果并返回给数据请求方。其中,由于数据服务方网关接收到的是针对扩展查询对象集合的第二查询请求,因此,数据服务方不会得知数据请求方实际请求查询的对象是目标查询对象,从而有效避免将数据请求方和目标查询对象的隐私信息泄露给数据服务方,而且,由于数据服务方网关返回的是包含已加密数据的查询结果数据集,数据请求方网关再采用隐私保护集合交集算法确定针对目标查询对象的目标查询结果,因此,还可以进一步避免将数据服务方查询到的其他对象的信息泄露给数据请求方。
35.本技术第二方面提供的保护隐私的信息查询方法是与本技术第一方面提供的保护隐私的信息查询方法配合实施的,与本技术第一方面提供的保护隐私的信息查询方法出于相同的发明构思,至少可以取得以下与本技术第一方面提供的保护隐私的信息查询方法相应的有益效果:数据服务方网关在接收到数据请求方网关发送的第二查询请求后,首先向数据服务方发送所述第二查询请求,以通过所述数据服务方对所述扩展查询对象集合中每个对象进行查询,然后根据查询到的每个所述对象对应的查询结果,生成包含已加密数据的查询结果数据集,接下来,向所述数据请求方网关返回所述查询结果数据集,以使所述数据请求方网关根据所述查询结果数据集利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果,通过与本技术第一方面提供的保护隐私的信息查询方法配合实施,一方面可以有效避免将数据请求方和目标查询对象的隐私信息泄露给数据服务方,另一方面,通过生成包含已加密数据的查询结果数据集并返回数据请求方网关,还可以进一步避免将数据服务方查询到的其他对象的信息泄露给数据请求方。
36.本技术第三方面提供的保护隐私的信息查询装置与本技术第一方面提供的保护隐私的信息查询方法出于相同的发明构思,与本技术第一方面提供的保护隐私的信息查询方法具有相同的有益效果。
37.本技术第四方面提供的保护隐私的信息查询装置与本技术第二方面提供的保护隐私的信息查询方法出于相同的发明构思,与本技术第二方面提供的保护隐私的信息查询方法具有相同的有益效果。
38.本技术第五方面提供的信息查询系统、第六方面提供的电子设备、第七方面提供的计算机可读存储介质,与本技术第一方面提供的保护隐私的信息查询方法和第二方面提供的保护隐私的信息查询方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
附图说明
39.通过参考附图阅读下文的详细描述,本技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本技术的若干实施方式,相同或对应的标号表示相同或对应的部分,其中:
40.图1示意性地示出了本技术一些实施方式所提供的一种保护隐私的信息查询方法
对应的系统架构示意图;
41.图2示意性地示出了本技术一些实施方式所提供的一种保护隐私的信息查询方法的第一种流程图;
42.图3示意性地示出了本技术一些实施方式所提供的一种保护隐私的信息查询方法的第二种流程图;
43.图4示意性地示出了本技术一些实施方式所提供的一种保护隐私的信息查询方法的时序图;
44.图5示意性地示出了本技术的一些实施方式所提供的一种保护隐私的信息查询装置的第一种示意图;
45.图6示意性地示出了本技术的一些实施方式所提供的一种保护隐私的信息查询装置的第二种示意图;
46.图7示意性地示出了本技术的一些实施方式所提供的一种电子设备的示意图;
47.图8示意性地示出了本技术的一些实施方式所提供的一种计算机可读存储介质的示意图。
具体实施方式
48.下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
49.需要注意的是,除非另有说明,本技术使用的技术术语或者科学术语应当为本技术所属领域技术人员所理解的通常意义。
50.另外,术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
51.本技术实施例提供一种保护隐私的信息查询方法、装置及系统、一种电子设备以及一种计算机可读存储介质,下面结合附图进行说明。
52.为了便于对本技术实施例进行理解,首先,结合图1对本技术实施例的一些系统架构及发明构思简要说明如下:
53.请参考图1,其示意性地示出了本技术一些实施方式所提供的一种保护隐私的信息查询方法对应的系统架构示意图,如图1所示,该系统架构可以包括数据请求方、数据请求方网关、数据服务方网关和数据服务方,上述数据请求方、数据请求方网关、数据服务方网关和数据服务方依次连接。
54.其中,数据请求方是请求查询的主体,其可以实现为服务器或者服务器集群,例如,银行系统的服务器或任何具有信息查询需求的服务器等,此外,该数据请求方还可以实现为其他硬件或软件设备,比如可以是银行中安装的终端(例如自动取款机atm),或者终端上安装的客户端等等,本技术不做限定。
55.数据服务方是为数据请求方提供数据查询服务的主体,一般实现为服务器或者服务器集群,例如,电信运营商的服务器、可提供实名认证服务的服务器或其他任何具有数据查询服务功能的服务器等,本技术不做限定。
56.数据请求方网关是配置于数据请求方一侧的网关,其可以实现为独立的硬件,也可以实现为软件,当实现为软件时,数据请求方网关可以集成于数据请求方中。
57.数据服务方网关是配置于数据服务方一侧的网关,其可以实现为独立的硬件,也可以实现为软件,当实现为软件时,数据服务方网关可以集成于数据服务方中。
58.上述数据请求方网关和数据服务方网关是数据请求方和数据服务方之间新增的软件和/或硬件系统,均起到代理的作用,既可以保证业务系统(数据请求方和数据服务方组成的业务系统)原来的业务功能不变,又可以为系统增加隐私保护的功能,下面进行更为具体的说明。
59.为了解决现有技术中在信息查询时有可能泄露用户隐私的问题,基于上述系统架构,本技术实施例至少采用了以下技术构思:
60.通过对数据请求方发出的查询请求进行扩展,将针对目标查询对象的查询请求扩展为针对多个对象的查询请求,使得数据服务方无法清楚得知数据请求方实际请求查询的是哪个对象,从而避免将数据请求方请求查询的目标查询对象的信息泄露给数据服务方;进一步的,为了避免将数据服务方查询到的其他对象的信息反馈给数据请求方而导致用户隐私泄露,数据服务方网关根据所有查询结果生成加密的查询结果数据集,然后返回数据请求方网关,数据请求方网关再利用隐私保护集合交集算法即可在不知道查询结果数据集具体内容的情况下得到针对目标查询对象的目标查询结果,从而避免将数据服务方查询到的其他对象的信息反馈给数据请求方而导致用户隐私泄露。基于上述技术构思,可以实现对数据请求方和数据服务方双方隐私数据的全方位保护。
61.基于上述技术构思,为了至少实现本技术实施例对双方隐私数据全方位保护的目的,基于图1所示的系统架构,一次信息查询可以经过以下示例性的步骤:
62.s1、数据请求方向数据请求方网关发送针对目标查询对象的第一查询请求。
63.s2、数据请求方网关对目标查询对象进行扩展,生成针对扩展查询对象集合的第二查询请求并发送给数据服务方网关。
64.s3、数据服务方网关将第二查询请求发送给数据服务方,以查询扩展查询对象集合中各个对象的信息。
65.s4、数据服务方返回针对扩展查询对象集合中所有对象的所有查询结果。
66.s5、数据服务方网关根据上述所有查询结果生成加密的查询结果数据集,数据请求方网关根据第一查询请求生成请求查询数据集,数据请求方网关和数据服务方网关基于隐私保护集合交集算法进行交互,将上述查询结果数据集和上述请求查询数据集作为两个隐私保护集合求交集,即可得到针对目标查询对象的目标查询结果。
67.s6、数据请求方网关得到目标查询结果后,将该目标查询结果返回数据请求方,数据请求方得到目标查询结果,即完成本次查询过程。
68.下面结合附图,分别从数据请求方网关一侧、数据服务方网关一侧对本技术提供的保护隐私的信息查询方法及其装置进行示例性说明,下述示例性说明可以参考上述图1及其对应的上述说明进行理解。
69.请参考图2,其示意性地示出了本技术的一些实施方式所提供的一种保护隐私的信息查询方法的第一种流程图,该保护隐私的信息查询方法可以用于数据请求方网关,可以包括以下步骤:
70.步骤s101:接收数据请求方发送的针对目标查询对象的第一查询请求。
71.其中,所述第一查询请求可以是指请求查询目标查询对象的信息是否正确、或者在数据服务方有无存储的请求,其期待的目标查询结果可以是“是”或者“否”,也可以是“对”或者“错”,还可以是其他表示是/非的结果。例如,上述第一查询请求可以是位置核验查询请求,该位置核验查询请求用于请求查询所述目标查询对象是否在指定位置出现,或者说核验目标查询对象对应的指定位置信息的合法性或者有效性;又如,上述第一查询请求可以是实名认证查询请求,该实名认证查询请求用于请求查询所述目标查询对象是否已通过实名认证;诸如此类,本技术实施例不再一一举例赘述,只要能够使用本技术实施例提供的保护隐私的信息查询方法进行查询的情形,都应在本技术的保护范围之内。
72.步骤s102:根据所述第一查询请求,向数据服务方网关发送针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合中包含所述目标查询对象。
73.考虑到,若直接将第一查询请求发送给数据服务方,必然会将第一查询请求所查询的目标查询对象的信息泄露给数据服务方,因此,本步骤s102的目的至少在于对第一查询请求进行模糊化处理或者说是泛化处理,将对目标查询对象的查询泛化为针对扩展查询对象集合的查询,使得数据服务方不能准确判断数据请求方实际查询的对象是哪一个,从而实现对目标查询对象的隐私信息的保护。
74.具体的,在一些变更实施方式中,本步骤s102可以包括:
75.根据所述目标查询对象确定扩展查询对象集合;
76.生成针对所述扩展查询对象集合的第二查询请求;
77.向数据服务方网关发送所述第二查询请求。
78.本实施方式,首先对目标查询对象进行扩展,得到扩展查询对象集合,然后再针对扩展查询对象集合生成第二查询请求,从而可以简单、快速地实现对第一查询请求的模糊化处理。
79.其中,上述根据所述目标查询对象确定扩展查询对象集合,可以包括:
80.对所述目标查询对象的标识信息进行扩展,得到标识信息集合;
81.根据所述标识信息集合中所有标识信息对应的所有对象,确定扩展查询对象集合。
82.容易理解的是,为了对目标查询对象进行辨识,第一查询请求中应当携带有目标查询对象的标识信息,在实际应用中,上述标识信息可以包括但不限于手机号、身份证号、账号或者其他任意能够对目标查询对象的身份进行唯一性辨识的标识。进一步的,在对目标查询对象进行模糊化处理时,即可根据该标识信息直接、快速、方便地进行扩展,例如,若目标查询对象的标识信息为手机号,则可以将该手机号所处的一个号段范围内的所有手机号的集合作为标识信息集合。需要说明的是,扩展后的标识信息集合中的所有标识信息,其可以是连续的,也可以是离散的,其均可以实现本技术实施例的目的,本技术实施例不限定其具体内容。
83.此外,对于第一查询请求中所包含的目标查询对象的敏感信息,在生成第二查询
请求时可以刨除在外,以避免数据服务方根据该敏感信息确定目标查询对象的身份,以第一查询请求是位置核验查询请求为例,第一查询请求所包含的查询参数信息可以包括以下字段{数据类型,时间信息,目标查询对象的主体信息,指定位置信息},其中,数据类型是指请求查询的数据的类型,时间信息是请求查询的目标查询对象出现在指定位置的时间,主体信息是查询主体对象(即目标查询对象)的信息,例如目标查询对象的标识信息,指定位置信息是指要查询的目标查询对象对应于上述时间信息所出现的位置的信息,为了便于理解,举例而言,该第一查询请求所包含的查询参数信息可以是{位置信息,x年x月5点10分,手机号12345678900,是否在atm-a处}。
84.考虑到,若将第一查询请求的所有字段都包含到第二查询请求中,那么数据服务方在对扩展查询对象集合中的所有对象进行查询时,有较大可能根据上述“指定位置信息”字段中的内容(例如上述atm-a)准确地确定本次实际查询的目标查询对象,因此,该“指定位置信息”即属于敏感信息,为了便于理解,本技术实施例对敏感信息的定义,可以是指能够被数据服务方所利用而识别出实际请求查询的目标查询对象身份的信息。
85.相应的,在一些变更实施方式中,上述生成针对所述扩展查询对象集合的第二查询请求,可以包括:
86.对所述第一查询请求中的查询参数信息进行脱敏处理;
87.根据脱敏处理后剩余的查询参数信息,生成针对所述扩展查询对象集合的第二查询请求。
88.基于上述实施方式,在生成第二查询请求时,可以对第一查询请求中的内容进行脱敏处理,该脱敏处理是指去除敏感信息和/或敏感信息对应的敏感信息字段,采用脱敏处理后剩余的查询参数信息生成第二查询请求,例如,针对上述第一查询请求对应的查询参数信息{数据类型,时间信息,目标查询对象的主体信息,指定位置信息},通过脱敏处理后,去除敏感信息字段“指定位置信息”,对应生成的第二查询请求的查询参数信息可以包括{数据类型,时间信息,主体集合范围信息},其中,主体集合范围信息即为扩展查询对象集合对应的标识信息集合,通过上述脱敏处理,即可有效避免将敏感信息发送给数据服务方而导致隐私信息泄露的问题。
89.与前述第一查询请求对应的,第二查询请求从一定程度上可以理解为查询敏感信息的请求,以便于后续将查询到的包含敏感信息的查询结果与第一查询请求中包含敏感信息的查询参数信息进行比对。例如,若第一查询请求为位置核验查询请求,则第二查询请求可以是位置信息查询请求,用于请求查询扩展查询对象集合中各个对象的位置信息;若第一查询请求为实名认证查询请求,则第二查询请求可以是实名认证信息查询请求,用于请求查询扩展查询对象集合中各个对象的实名认证信息。
90.步骤s103:接收所述数据服务方网关返回的包含已加密数据的查询结果数据集,所述查询结果数据集基于所述扩展查询对象集合中每个对象对应的查询结果确定。
91.数据服务方网关在接收到上述第二查询请求后,可以将该第二查询请求转发给数据服务方,以通过数据服务方查询扩展查询对象集合中每个对象的信息,得到扩展查询对象集合中每个对象对应的查询结果,为了便于理解,仍以上述第一查询请求是位置核验查询请求为例,扩展查询对象集合中每个对象对应的查询结果可以是{数据类型,时间信息,主体信息1,位置1},{数据类型,时间信息,主体信息2,位置2},{数据类型,时间信息,主体
信息3,位置3}
……

92.需要说明的是,为了后续能够顺利地基于隐私保护集合交集算法确定出目标查询对象对应的目标查询结果,上述每个对象对应的查询结果都是与第一查询请求中目标查询对象的查询参数信息具有相同的字段结构,即上述查询结果与第一查询请求中目标查询对象的查询参数信息具有相同的字段结构。
93.为了避免将除目标查询对象之外的其他对象的查询结果等信息泄露给数据请求方,数据服务方网关可以对查询到的每个对象对应的查询结果进行加密等处理,以生成包含已加密数据的查询结果数据集,然后返回给数据请求方网关。其中,由于查询结果数据集是加密的,因此,可以有效避免将除目标查询对象之外的其他对象的查询结果等信息泄露给数据请求方。
94.步骤s104:根据所述查询结果数据集,利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果。
95.由于数据服务方网关对返回的查询结果数据集进行了加密,数据请求方网关无法得知查询结果数据集中的具体内容,因此,本技术实施例采用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果,从而能够在不知道查询结果数据集具体内容的情况下得到针对目标查询对象的目标查询结果。
96.隐私保护集合交集(private set intersection,psi)算法是一种允许持有各自集合的两方来共同计算两个集合的交集的运算,在交互运算的最后,一方或是两方应该得到正确的交集,而且不会得到交集以外另一方集合中的任何信息。例如,两个参与者pa和pb分别持有两个集合sa:{1,2,3,4,5}和sb:{4,5,6,7,8}。psi算法交互运算的目的是:求出两方集合的交集sa∩sb={4,5}(可能一次协议只让一方得到结果),且保证交集之外元素的隐私性,即pa不知道集合sb-sa∩sb中元素的信息;pb不知道集合sa-sa∩sb中元素的信息。
97.psi算法已是当前隐私数据保护领域中较为成熟的算法,较为常用的psi算法包括基于diffie-hellman的psi、基于不经意传输的psi等,本技术实施例对其具体算法不做限定,本领域技术人员可以根据现有技术提供的任意psi算法直接或变更后实施。
98.需要说明的是,对于部分psi算法的应用而言,如何对原业务系统(例如由数据请求方和数据服务方构成的业务系统)的数据进行编码,以及如何控制psi算法中的交互流程与原业务系统对接,也是需要解决的问题,对此,本技术实施例在下述说明中示例性地给出解决方案。
99.具体的,在一些实施方式中,所述根据所述查询结果数据集,利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果,可以包括:
100.根据所述第一查询请求确定请求查询数据集,其中,所述请求查询数据集中的元素根据所述目标查询对象的查询参数信息确定;
101.通过计算所述请求查询数据集与所述查询结果数据集的交集,确定针对所述目标查询对象的目标查询结果。
102.上述请求查询数据集和查询结果数据集即可作为隐私保护集合,将上述两个集合求交集,即可确定针对目标查询对象的目标查询结果。
103.考虑到查询结果数据集包含的是已加密数据,可以参照下述应用于数据服务方网关的保护隐私的信息查询方法的实施例说明进行理解,例如,查询结果数据集中的每个元
素,都是通过对扩展查询对象集合中一个对象对应的查询结果进行数据转换和加密处理后得到的已加密数据。
104.为了确保请求查询数据集和查询结果数据集能够顺利、准确地进行求交集运算,请求查询数据集中的元素和查询结果数据集中的元素,应该具有对应性,以确保在数据服务方能够查询到目标查询对象对应的查询结果的情况下,请求查询数据集和查询结果数据集的交集不是空集,确保信息查询的准确性,避免误判。例如,第一查询请求中目标查询对象的查询参数信息的数据结构应当与查询结果的数据结构相一致,查询参数信息也应当采用与查询结果相一致的数据转换算法、加密算法和加密密钥等进行处理,从而确保对于相同的信息,经过数据请求方网关处理后得到的请求查询数据集中的元素,和经过数据服务方网关处理后得到的查询结果数据集中的元素,是一致的或者能够互相匹配的。
105.举例而言,查询结果数据集中的每个元素,是数据服务方网关针对查询到的每个所述对象对应的查询结果,按照预设的数据转换算法将所述查询结果由多值数据转换为单值数据,并采用第二加密密钥对所述单值数据进行加密,得到的第四加密数据,相应的,在一些实施方式中,上述根据所述第一查询请求确定请求查询数据集,可以包括:
106.根据所述第一查询请求确定所述目标查询对象对应的查询参数信息;
107.按照预设数据转换算法,将所述查询参数信息由多值数据转换为单值数据;
108.采用第一加密密钥对所述单值数据进行加密,得到第一加密数据;
109.向所述数据服务方网关发送所述第一加密数据;
110.接收所述数据服务方网关返回的第二加密数据,其中,所述第二加密数据是采用第二加密密钥对所述第一加密数据进行二次加密后得到的;
111.采用第一解密密钥对所述第二加密数据进行解密,得到第三加密数据;其中,所述第一解密密钥与所述第一加密密钥相对应;
112.以所述第三加密数据作为元素,生成请求查询数据集。
113.其中,上述第一解密密钥与第一加密密钥相对应,是指通过第一解密密钥可以解除第一加密密钥的加密信息,例如,上述第一解密密钥与第一加密密钥可以是互逆的,在具体实施时,可以是密钥群中一对互逆的元素。
114.仍以上述第一查询请求是位置核验查询请求为例,目标查询对象对应的查询参数信息为{数据类型,时间信息,目标查询对象的主体信息,指定位置信息},其属于多值数据,为了便于比较,首先将其转化为单值数据,具体转换算法请参见下述说明,然后采用第一加密密钥进行加密得到第一加密数据,再将第一加密数据发送给数据服务方网关,数据服务方网关采用第二加密密钥对该第一加密数据进行二次加密,得到第二加密数据并返回给数据请求方网关,数据请求方网关再采用第一解密密钥对第二加密数据进行解密,得到第三加密数据,使得该第三加密数据成为只采用第二加密密钥加密的数据,确保第三加密数据与第四加密数据是采用相同的加密密钥加密的,进而确保后续计算交集时的准确性。
115.其中,采用第一加密密钥进行加密的作用是为了避免将上述查询参数信息泄露给数据服务方网关,数据请求方网关发送第一加密数据、接收第二加密数据以及解密得到第三加密数据的过程,实际上是与数据服务方网关交互以变换加密密钥的过程,其作用是通过交换密钥确保请求查询数据集中的元素与查询结果数据集中的元素是由相同的加密密钥加密而来,进而确保请求查询数据集和查询结果数据集能够顺利、准确地进行求交集运
算。
116.通过上述实施方式,即可实现psi算法中的交互流程与原业务系统的顺利对接。
117.另外,对于不同的psi算法,对原业务系统的数据进行编码的方式也不相同,本领域技术人员可以根据各psi算法的原理,灵活变更以实现对上述查询参数信息和查询结果的编码,以下以基于椭圆曲线的psi算法为例,说明如何对查询参数信息进行编码。在一些变更实施方式中,上述按照预设数据转换算法,将所述查询参数信息由多值数据转换为单值数据,可以包括:
118.将所述查询参数信息中的多个数据项进行串联,得到第一数据串;
119.计算所述第一数据串对应的第一哈希值;
120.将所述第一哈希值转化为椭圆曲线上的第一点数据。
121.仍以上述第一查询请求是位置核验查询请求为例,目标查询对象对应的查询参数信息为{数据类型,时间信息,目标查询对象的主体信息,指定位置信息},其属于多值数据,首先将上述查询参数信息中的各个数据项进行串接,得到第一数据串,然后采用哈希函数计算所述第一数据串对应的第一哈希值,再将该第一哈希值转化为椭圆曲线上的第一点数据,从而将查询参数信息由多值数据转换为单值数据(例如第一点数据)。
122.通过上述实施方式,即可将查询参数信息编码为单值数据,由于单值数据更加便于比较,因此,通过本实施方式,将查询参数信息转化为第一点数据,有助于后续更加方便、准确地计算请求查询数据集和查询结果数据集的交集。
123.根据请求查询数据集和查询结果数据集的交集,即可确定目标查询结果,具体的,在一些变更实施方式中,上述第一查询请求用于请求查询所述目标查询对象的查询参数信息是否在所述数据提供方存在;
124.所述通过计算所述请求查询数据集与所述查询结果数据集的交集,确定针对所述目标查询对象的目标查询结果,包括:
125.计算所述请求查询数据集与所述查询结果数据集的交集;
126.若所述交集为空集,则确定针对所述目标查询对象的目标查询结果为在所述数据服务方不存在所述目标查询对象的查询参数信息;
127.若所述交集为非空集,则确定针对所述目标查询对象的目标查询结果为在所述数据服务方存在所述目标查询对象的查询参数信息。
128.以上述第一查询请求是位置核验查询请求为例,若交集为非空集,说明目标查询对象在指定时间出现在指定位置的信息,与数据服务方记录的信息是一致的,因此,即可判断针对所述目标查询对象的目标查询结果为在所述数据服务方存在所述目标查询对象的查询参数信息,位置校验结果为真,说明目标查询对象的风险水平较低;否则,若交集为空集,说明目标查询对象在指定时间出现在指定位置的信息,与数据服务方记录的信息是不一致的或者在数据服务方没有记录,位置校验结果为假,说明该目标查询对象的风险水平较高。
129.又如,以上述第一查询请求是实名认证查询请求为例,若交集为非空集,说明目标查询对象的实名认证信息,与数据服务方记录的信息是一致的,说明目标查询对象的实名认证信息是真实可信的;否则,若交集为空集,说明目标查询对象的实名认证信息,与数据服务方记录的信息是不一致的或者在数据服务方没有记录,因此,说明目标查询对象的实
名认证信息是虚假的、不可信的。
130.通过上述实施方式,即可根据交集计算结果准确、快速的确定针对目标查询对象的目标查询结果。
131.步骤s105:向所述数据请求方返回所述目标查询结果。
132.本技术实施例提供的上述保护隐私的信息查询方法,应用于数据请求方网关,数据请求方网关在接收到针对目标查询对象的第一查询请求后,不会将该第一查询请求直接转发给数据服务方,而是对目标查询对象进行扩展得到扩展查询对象集合,生成针对所述扩展查询对象集合的第二查询请求后,将第二查询请求发送给数据服务方网关,在接收到数据服务方网关返回的包含已加密数据的查询结果数据集后,再利用隐私保护集合交集算法确定针对目标查询对象的目标查询结果并返回给数据请求方。其中,由于数据服务方网关接收到的是针对扩展查询对象集合的第二查询请求,因此,数据服务方不会得知数据请求方实际请求查询的对象是目标查询对象,从而有效避免将数据请求方和目标查询对象的隐私信息泄露给数据服务方,而且,由于数据服务方网关返回的是包含已加密数据的查询结果数据集,数据请求方网关再采用隐私保护集合交集算法确定针对目标查询对象的目标查询结果,因此,还可以进一步避免将数据服务方查询到的其他对象的信息泄露给数据请求方。
133.在上述的实施例中,提供了一种用于数据请求方网关的保护隐私的信息查询方法,从数据请求方网关一侧对本技术实施例提供的保护隐私的信息查询方法进行了示例性说明,下面从数据服务方网关一侧进一步对本技术实施例提供的保护隐私的信息查询方法进行示例性说明,下述用于数据服务方网关的保护隐私的信息查询方法,可与前述用于数据请求方网关的保护隐私的信息查询方法配合实施,下述实施例说明,可参照前述用于数据请求方网关的保护隐私的信息查询方法的实施例说明进行理解,部分内容不再赘述,相应的,前述用于数据请求方网关的保护隐私的信息查询方法的实施例说明,也可以参照下述由服务端和目标终端配合实现的保护隐私的信息查询方法的实施例说明进行理解。
134.请参考图3,其示意性地示出了本技术的一些实施方式所提供的一种保护隐私的信息查询方法的第二种流程图,该保护隐私的信息查询方法用于数据服务方网关,可以包括以下步骤:
135.步骤s201:接收数据请求方网关发送的针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合包括目标查询对象。
136.本步骤s201可以结合前述实施例中关于步骤s102的示例性说明进行理解,此处不再赘述。
137.步骤s202:向数据服务方发送所述第二查询请求,以通过所述数据服务方对所述扩展查询对象集合中每个对象进行查询。
138.数据服务方网关在接收到第二查询请求后,即可将该第二查询请求转发至数据服务方,通过数据服务方对扩展查询对象集合中每个对象进行查询,数据服务方在查询结束后,将针对每个对象的查询结果返回给数据服务方网关。
139.需要说明的是,为了后续能够顺利地使用隐私保护集合交集算法求交集,上述查询结果应当与第一查询请求中的查询参数信息使用相同的数据结构,或者说,数据服务方或者数据服务方网关根据第一查询请求中的查询参数信息的数据结构,生成针对扩展查询
对象集合中每个对象的查询结果。
140.例如,查询参数信息的数据结构为{数据类型,时间信息,目标查询对象的主体信息,指定位置信息},那么针对对象a的查询结果的数据结构是{数据类型,时间信息,对象a的主体信息,对象a的位置信息}。
141.步骤s203:根据查询到的每个所述对象对应的查询结果,生成包含已加密数据的查询结果数据集。
142.为了避免将查询到除目标查询对象之外的其他对象的查询结果泄露给数据请求方或数据请求方网关,需要对查询结果进行加密处理,在一些实施方式中,本步骤s203可以包括:
143.针对查询到的每个所述对象对应的查询结果,按照预设的数据转换算法将所述查询结果由多值数据转换为单值数据,并采用第二加密密钥对所述单值数据进行加密,得到第四加密数据;
144.根据每个所述对象对应的所述第四加密数据,生成查询结果数据集。
145.请参照前述实施例中关于步骤s104的示例性说明,仍以上述第一查询请求是位置核验查询请求为例,目标查询对象对应的查询参数信息为{数据类型,时间信息,目标查询对象的主体信息,指定位置信息},针对扩展查询对象集合中任意对象a的查询结果的数据结构是{数据类型,时间信息,对象a的主体信息,对象a的位置信息},其属于多值数据,为了便于比较,首先将其转化为单值数据,具体转换算法请参见下述说明,然后采用第二加密密钥对单值数据进行加密,得到第四加密数据,将该第四加密数据作为查询结果数据集的元素,生成查询结果数据集。
146.为了使用psi算法,同样需要对上述查询结果进行编码,参见上述步骤s104中对于查询参数信息进行编码的方式,本技术实施例对于查询结果,应当采用与查询参数信息相同的编码方式进行编码,以基于椭圆曲线的psi算法为例,上述按照预设的数据转换算法将所述查询结果由多值数据转换为单值数据,可以包括:
147.将所述查询结果中的多个数据项进行串联,得到第二数据串;
148.计算所述第二数据串对应的第二哈希值;
149.将所述第二哈希值转化为椭圆曲线上的第二点数据。
150.仍以上述第一查询请求是位置核验查询请求为例,目标查询对象对应的查询参数信息为{数据类型,时间信息,目标查询对象的主体信息,指定位置信息},针对扩展查询对象集合中任意对象a的查询结果的数据结构是{数据类型,时间信息,对象a的主体信息,对象a的位置信息},其属于多值数据,首先将上述查询结果中的各个数据项进行串接,得到第二数据串,然后采用哈希函数计算所述第二数据串对应的第二哈希值,再将该第二哈希值转化为椭圆曲线上的第二点数据,从而将查询结果由多值数据转换为单值数据(例如第二点数据)。
151.通过上述实施方式,即可将查询结果编码为单值数据,由于单值数据更加便于比较,因此,通过本实施方式,将查询结果转化为第二点数据,有助于后续更加方便、准确地计算请求查询数据集和查询结果数据集的交集。
152.步骤s204:向所述数据请求方网关返回所述查询结果数据集,以使所述数据请求方网关根据所述查询结果数据集利用隐私保护集合交集算法确定针对所述目标查询对象
的目标查询结果。
153.需要说明的是,为了配合数据请求方网关实施隐私保护集合交集算法,参见上述关于步骤s104部分的说明,数据服务方网关还需要与数据请求方网关配合,以完成对第一加密数据加密密钥的替换,在一些变更实施方式中,本技术实施例方法还可以包括:
154.接收所述数据请求方网关发送的第一加密数据;
155.采用第二加密密钥对所述第一加密数据进行二次加密,得到第二加密数据;
156.向所述数据请求方网关发送所述第二加密数据,以使所述数据请求方网关采用第一解密密钥对所述第二加密数据解密后得到仅采用所述第二加密密钥加密的第三加密数据。
157.通过上述实施方式,可以与数据请求方网关配合,以完成对第一加密数据加密密钥的替换,便于数据请求方网关顺利实施隐私保护集合交集算法。
158.基于上述说明,本技术实施例提供的用于数据服务方网关的保护隐私的信息查询方法,与本技术前述实施例提供的用于数据请求方网关的保护隐私的信息查询方法出于相同的发明构思,至少具有以下相应的有益效果:数据服务方网关在接收到数据请求方网关发送的第二查询请求后,首先向数据服务方发送所述第二查询请求,以通过所述数据服务方对所述扩展查询对象集合中每个对象进行查询,然后根据查询到的每个所述对象对应的查询结果,生成包含已加密数据的查询结果数据集,接下来,向所述数据请求方网关返回所述查询结果数据集,以使所述数据请求方网关根据所述查询结果数据集利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果,通过与本技术第一方面提供的保护隐私的信息查询方法配合实施,一方面可以有效避免将数据请求方和目标查询对象的隐私信息泄露给数据服务方,另一方面,通过生成包含已加密数据的查询结果数据集并返回数据请求方网关,还可以进一步避免将数据服务方查询到的其他对象的信息泄露给数据请求方。
159.为了便于对上述实施方式进行理解,本技术实施例还提供一些具体实施方式,以下具体的实施例说明可以参照前述任一实施方式进行理解,前述任一实施方式也可以参照下述实施例说明进行理解,部分内容不再赘述。
160.需要说明的是,在下述示例性说明中,虽然部分用词发生了变化,但这并不影响其含义的表达,下述说明中会对部分用词与前述实施例说明中的用词进行对应性说明,该对应性说明所表达的对应关系既可以包括等同关系、也可以包括上下位关系,本领域技术人员可以结合实际情况进行理解。
161.首先,在一些实施方式中,对任意一个具体的psi系统:定义可以获得交集结果的一方为psi结果获得者;定义提供数据并参与psi系统协议运行,但没有集合交集信息的另一方为psi服务支持者。从上层的业务系统看psi结果获得者的输入和psi服务支持者的输入分别为一个集合。本技术的一些实施例中,数据请求方网关可视为psi结果获得者,数据服务方网关可视为psi服务支持者。
162.参考图1所示的系统架构,数据请求方向数据请求方网关发起关于一个主体(即目标查询对象)在一个时间点是否在指定位置的请求或者一个主体的实名制情况请求({数据类型,时间信息,主体信息,指定位置信息或者证件信息},其中第一项“数据类型”指示第四项“指定位置信息或者证件信息”的信息类型);接收数据请求方网关的肯定或者否定的回
复。
163.数据请求方网关根据数据请求方请求,将{数据类型,时间信息,主体信息,指定位置信息或者证件信息}作为psi结果获得者的输入,与数据服务方网关进行交互,计算出交集信息;如果存在交集则向数据请求方回复肯定,如果不存在交集则回复否定。
164.数据服务方拥有主体的位置信息数据和主体的证件信息数据,按照数据服务方网关的请求,回复相关主体的位置信息或者证件信息。
165.数据服务方网关根据数据请求方网关发送的数据(数据类型、时间信息和主体集合范围信息)向数据服务方请求并接收相应的主体位置信息或者证件信息集合;并将该信息集合作为psi服务支持者的输入与数据请求方网关进行交互。
166.整体的目标是数据请求方可以向数据服务方询问一个主体的位置是否与指定位置相同或者询问一个主体的证件信息是否一致,但是数据服务方不能获得所查询主体的身份信息。
167.信息查询的步骤如下:
168.1、数据请求方向数据请求方网关发送查询信息即第一查询请求,包括查询参数信息{数据类型,时间信息,主体信息,指定位置信息或者证件信息}(例如:位置信息,查询5点10分,号码13423232,是否在atm_gps处)。
169.2、数据请求方网关对数据请求方的查询参数信息{数据类型,时间信息,主体信息,指定位置信息}进行处理:(1)根据主体信息(例如手机号码)确定主体所在集合范围(例如号码13423232在134号段的集合内);(2)将数据类型,时间信息和主体所在集合范围信息发送给数据服务方网关;(3)数据请求方网关将该查询信息处理为一个集合元素,并作为psi结果获得者的输入与数据服务方网关进行psi系统的相应交互。
170.3、数据服务方网关收到数据请求方网关发送的信息,根据其中的主体所在集合范围信息、时间信息和数据类型向数据服务方查询符合该要求的所有主体信息{数据类型,时间信息,主体集合范围信息}。
171.4、数据服务方收到数据服务方网关的请求,返回所要求的主体集合范围内的所有主体在满足要求的信息集合。如{{位置类型,时间,主体1,位置1},{位置类型,时间,主体2,位置2},{位置类型,时间,主体3,位置3},

},或者{{证件类型,主体1,证件1},{证件类型,主体2,证件2},{证件类型,主体3,证件3},

}。
172.5、数据服务方网关得到所要求的信息集合后,将该集合作为psi服务支持者的输入并与数据请求方网关进行psi系统要求的交互。
173.6、数据请求方网关运行psi系统的协议得到psi求交集的结果(空集或者存在交集)
174.7、如果存在交集数据请求方网关向数据请求方回复是;如果是空集,则向数据请求方回复否。
175.下面以一个具体的psi方案来说明上述设计psi系统交互的具体运算。
176.在下述psi方案的描述中pb方相当于上述发明方案的数据请求方网关,作为psi系统的psi结果获得者,可以获得psi系统运行的交集结果;pa方相当于上述方案的psi数据服务方网关,作为psi系统的psi服务支持者。
177.从业务的层面上看pa方的输入为一个集合,pb方的输入也为一个集合(也许只有
一个元素),最终的结果是pb可以获得两个集合的交集,但pa方不能获得关于pb方集合元素的任何信息。因此psi系统对这个发明方案的业务上可以抽象为一个既已存在的子系统,发明方案的整体框架不依赖于具体的psi实现技术。
178.以基于椭圆曲线上diffie-hellman(dh)假设的psi系统为例,设e为椭圆曲线系统(满足大素数p定义的y2=x3 ax b的点),给定参数大素数p,整数a和b,椭圆曲线群的阶n,基点g;设一个点k的m倍点运算为m[
×
]k。
[0179]
pa作为服务器端;pb作为客户端;执行psi协议,pb获得双方集合的交集。
[0180]
基于dh的psi协议如下:
[0181]
对于pa,pa拥有集合数据sa={sa1,sa2,sa3,

},将每个集合元素做哈希运算取得哈希值{h(sa1),h(sa2),h(sa3),

};然后将哈希值分别转化为椭圆曲线上的点:将哈希值作为点的一个坐标值,然后计算出另一个坐标;如果不成功则再次哈希或者采用其他规则变换原哈希值,转化后的点计作:{ep(sa1),ep(sa2),ep(sa3),

};然后均匀随机选取随机数(对应第二加密密钥),对每个集合元素而成的椭圆曲线的点,进行ra倍点操作(即进行加密),得到隐私保护集合{ra[
×
]ep(sa1),ra[
×
]ep(sa2),ra[
×
]ep(sa3),

}。
[0182]
对于pb,pb拥有集合数据sb={sb1,sb2,sb3,

},将每个集合元素做哈希运算取得哈希值{h(sb1),h(sb2),h(sb3),

};然后将哈希值分别转化为椭圆曲线上的点,转化后的点计作:{ep(sb1),ep(sb2),ep(sb3),

};然后均匀随机选取随机数(对应第一加密密钥),对每个集合元素而成的椭圆曲线的点,进行rb倍点操作(即进行加密),得到隐私保护集合{rb[
×
]ep(sb1),rb[
×
]ep(sb2),rb[
×
]ep(sb3),

}。
[0183]
上述流程,就是数据的盲化或者说是加密过程,双方各自处理数据,不涉及交互流程,在实际的协议设计中可根据应用调整,只要在发送给对方之前处理过即可。
[0184]
接下来,pb作为客户端,发起服务请求,将数据msg1:{rb[
×
]ep(sb1),rb[
×
]ep(sb2),rb[
×
]ep(sb3),

}发送给pa;如果sb数据是按照某种顺序排列的,则先随机置换后发送;建立原始数据sb={sb1,sb2,sb3,

}和随机置换后的盲化元素{rb[
×
]ep(sb1),rb[
×
]ep(sb2),rb[
×
]ep(sb3),

}之间的索引。
[0185]
pa接收到pb的数据msg1后,使用ra对每个数据进行倍点操作,得到msg2:{ra[
×
]rb[
×
]ep(sb1),ra[
×
]rb[
×
]ep(sb2),ra[
×
]rb[
×
]ep(sb3),

};将上述数据原序发送给pb。
[0186]
pb接收到msg2:{ra[
×
]rb[
×
]ep(sb1),ra[
×
]rb[
×
]ep(sb2),ra[
×
]rb[
×
]ep(sb3),

}后,使用rb的逆元rb-1
(也就是rb
×
rb-1
≡1mod n),对上述每条数据再次计算倍点得到result1:{rb-1
[
×
]ra[
×
]rb[
×
]ep(sb1),rb-1
[
×
]ra[
×
]rb[
×
]ep(sb2),rb-1
[
×
]ra[
×
]rb[
×
]ep(sb3),

},即{ra[
×
]ep(sb1),ra[
×
]ep(sb2),ra[
×
]ep(sb3),

};并建立原始数据sb={sb1,sb2,sb3,

}和result1之间的索引;对result1进行排序。
[0187]
pa将其自己的数据msg3:{ra[
×
]ep(sa1),ra[
×
]ep(sa2),ra[
×
]ep(sa3),

}发送给pb;如果sa数据是按照某种顺序排列的,则先随机置换后发送。
[0188]
pb收到pa发送的msg3后,对msg3进行排序。
[0189]
pb将result1中每条元素与msg3中的每条元素比较;如果存在相等的情况,则说明
该元素对应的索引值sb在pa的集合sa中也存在;也就是对两个盲化后集合求取集合交集,因此pb可得双方原始交集。
[0190]
请参考图4,其示意性地示出了本技术一些实施方式所提供的一种保护隐私的信息查询方法的时序图,如图4所示,该保护隐私的信息查询方法可以包括以下内容:
[0191]
步骤s301:数据请求方向数据请求方网关发送第一查询请求,举例而言,若该第一查询请求为位置核验查询请求,则对位置核验的核验业务发送的查询参数信息包括m1={位置类型,指定时间点1,手机号码1,指定atm机位置坐标1};若该第一查询请求为实名认证查询请求,则对实名制的核验业务发送的查询参数信息包括m1={证件类型,手机号码1,证件编号1}。
[0192]
步骤s302:数据请求方网关接收到m1后,以该第一查询请求为位置核验查询请求为例,执行以下操作:
[0193]
(1)根据m1消息的手机号码1(即目标查询对象的标识信息)确定主体所在集合范围,如134号段的所有手机号码。
[0194]
(2)向数据服务方网关发送第二查询请求,该第二查询请求包括查询参数信息m2={位置类型,指定时间点1,134号段的所有手机号码}。
[0195]
(3)数据请求方网关作为psi系统的psi结果获得者对m1做如下处理:
[0196]
(3.1)将m1中的每一项串接起来并通过哈希函数计算输出第一哈希值h(m1)=h(位置类型|指定时间点1|手机号码1|指定atm机位置坐标1)。
[0197]
(3.2)将第一哈希值h(m1)转化为椭圆曲线上的点ep(m1)。
[0198]
(3.3)使用数据请求方网关的第一加密密钥rb,对ep(m1)进行加密或者称为盲化,得到第一加密数据m3=rb[
×
]ep(m1),将该第一加密数据m3发送给数据服务方网关。
[0199]
同理,上述操作对实名制核验业务处理相同,只是m1的各项内容有差异。
[0200]
步骤s303:数据服务方网关收到数据请求方网关发送的信息m2后,根据其中的主体所在集合范围信息、时间信息和数据类型向数据服务方查询符合该要求的所有主体信息,也就是将m2转发给数据服务方。
[0201]
步骤s304:数据服务方收到数据服务方网关的请求后,根据m2各项的内容返回满足要求的手机号码信息,该信息由主体和对应的位置信息或者证件号码信息组成,并形成一个集合m4={{位置类型,指定时间点1,主体1,位置1},{位置类型,指定时间点1,主体2,位置2},{位置类型,指定时间点1,主体3,位置3},

},或者对于实名制核验业务m4={{证件类型,主体1,证件1},{证件类型,主体2,证件2},{证件类型,主体3,证件3},

},将m4发送给数据服务方网关。
[0202]
步骤s305:数据服务方网关收到所要求的信息集合m4后,将该集合作为psi服务支持者的输入:
[0203]
(1)将集合m4(对应所有对象的查询结果)中的每个元素的每一项串接起来并通过哈希函数计算出第二哈希值h(m4_1)=h(位置类型|指定时间点1|主体1|位置1),h(m4_2)=h(位置类型|指定时间点1|主体2|位置2),h(m4_3)=h(位置类型|指定时间点1|主体3|位置3),


[0204]
(2)将每个第二哈希值转化为椭圆曲线上的点,即第二点数据ep(m4_1),ep(m4_2),ep(m4_3),


[0205]
(3)使用数据请求方网关的第二加密密钥ra对每个点进行加密,得到第四加密数据ra[
×
]ep(m4_1),ra[
×
]ep(m4_2),ra[
×
]ep(m4_3),


[0206]
(4)将加密后的所有元素组成集合m5={ra[
×
]ep(m4_1),ra[
×
]ep(m4_2),ra[
×
]ep(m4_3),

}发送给数据请求方网关,该集合m5即为查询结果数据集。
[0207]
步骤s306:数据服务方网关收到数据请求方网关发送的第一加密数据m3=rb[
×
]ep(m1)后,使用其第二加密密钥ra对m3进行再次加密(即二次加密),得到第二加密数据m6=ra[
×
]rb[
×
]ep(m1),并将m6发送给数据请求方网关。
[0208]
步骤s307:数据请求方网关运行psi系统的协议得到psi求交集的结果(空集或者存在交集):
[0209]
(1)数据请求方网关收到m6后,使用其第一加密密钥rb的逆元即第一解密密钥rb-1
对第二加密数据m6进行解密,得到第三加密数据m7=rb-1
[
×
]ra[
×
]rb[
×
]ep(m1)=ra[
×
]ep(m1);
[0210]
(2)使用m7与集合m5中的每个元素相比较,如果存在相等的情况,则说明psi系统运行结果中存在交集,如果不相等则交集为空集。
[0211]
步骤s308:如果存在交集,数据请求方网关向数据请求方回复是;如果是空集,则向数据请求方回复否。
[0212]
在上述的实施例中,提供了一种应用于数据请求方网关的保护隐私的信息查询方法,与之相对应的,本技术还提供一种应用于数据请求方网关的保护隐私的信息查询装置。本技术实施例提供的应用于数据请求方网关的保护隐私的信息查询装置可以实施上述应用于数据请求方网关的保护隐私的信息查询方法,该应用于数据请求方网关的保护隐私的信息查询装置可以通过软件、硬件或软硬结合的方式来实现。例如,该应用于数据请求方网关的保护隐私的信息查询装置可以包括集成的或分开的功能模块或单元来执行上述各方法中的对应步骤。请参考图5,其示意性地示出了本技术的一些实施方式所提供的一种保护隐私的信息查询装置的第一种示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
[0213]
如图5所示,一种应用于数据请求方网关的保护隐私的信息查询装置10可以包括:
[0214]
第一查询请求接收模块101,用于接收数据请求方发送的针对目标查询对象的第一查询请求;
[0215]
第二查询请求发送模块102,用于根据所述第一查询请求,向数据服务方网关发送针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合中包含所述目标查询对象;
[0216]
查询结果数据集接收模块103,用于接收所述数据服务方网关返回的包含已加密数据的查询结果数据集,所述查询结果数据集基于所述扩展查询对象集合中每个对象对应的查询结果确定;
[0217]
目标查询结果确定模块104,用于根据所述查询结果数据集,利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果;
[0218]
目标查询结果发送模块105,用于向所述数据请求方返回所述目标查询结果。
[0219]
在本技术实施例的一些变更实施方式中,所述第二查询请求发送模块102,包括:
[0220]
扩展查询对象集合确定单元,用于根据所述目标查询对象确定扩展查询对象集合;
[0221]
第二查询请求生成单元,用于生成针对所述扩展查询对象集合的第二查询请求;
[0222]
第二查询请求发送单元,用于向数据服务方网关发送所述第二查询请求。
[0223]
在本技术实施例的一些变更实施方式中,所述扩展查询对象集合确定单元,包括:
[0224]
标识信息扩展子单元,用于对所述目标查询对象的标识信息进行扩展,得到标识信息集合;
[0225]
扩展查询对象集合确定子单元,用于根据所述标识信息集合中所有标识信息对应的所有对象,确定扩展查询对象集合。
[0226]
在本技术实施例的一些变更实施方式中,所述第二查询请求生成单元,包括:
[0227]
脱敏处理子单元,用于对所述第一查询请求中的查询参数信息进行脱敏处理;
[0228]
第二查询请求生成子单元,用于根据脱敏处理后剩余的查询参数信息,生成针对所述扩展查询对象集合的第二查询请求。
[0229]
在本技术实施例的一些变更实施方式中,所述目标查询结果确定模块104,包括:
[0230]
请求查询数据集确定单元,用于根据所述第一查询请求确定请求查询数据集,其中,所述请求查询数据集中的元素根据所述目标查询对象的查询参数信息确定;
[0231]
交集计算单元,用于通过计算所述请求查询数据集与所述查询结果数据集的交集,确定针对所述目标查询对象的目标查询结果。
[0232]
在本技术实施例的一些变更实施方式中,所述请求查询数据集确定单元,包括:
[0233]
查询参数信息确定子单元,用于根据所述第一查询请求确定所述目标查询对象对应的查询参数信息;
[0234]
数据转换子单元,用于按照预设数据转换算法,将所述查询参数信息由多值数据转换为单值数据;
[0235]
第一加密数据生成子单元,用于采用第一加密密钥对所述单值数据进行加密,得到第一加密数据;
[0236]
第一加密数据发送子单元,用于向所述数据服务方网关发送所述第一加密数据;
[0237]
第二加密数据接收子单元,用于接收所述数据服务方网关返回的第二加密数据,其中,所述第二加密数据是采用第二加密密钥对所述第一加密数据进行二次加密后得到的;
[0238]
第二加密数据解密子单元,用于采用第一解密密钥对所述第二加密数据进行解密,得到第三加密数据;其中,所述第一解密密钥与所述第一加密密钥相对应;
[0239]
请求查询数据集生成子单元,用于以所述第三加密数据作为元素,生成请求查询数据集。
[0240]
在本技术实施例的一些变更实施方式中,所述数据转换子单元,包括:
[0241]
第一数据串联子单元,用于将所述查询参数信息中的多个数据项进行串联,得到第一数据串;
[0242]
第一哈希计算子单元,用于计算所述第一数据串对应的第一哈希值;
[0243]
第一椭圆数据转化子单元,用于将所述第一哈希值转化为椭圆曲线上的第一点数据。
[0244]
在本技术实施例的一些变更实施方式中,所述第一查询请求用于请求查询所述目标查询对象的查询参数信息是否在所述数据提供方存在;
[0245]
所述交集计算单元,包括:
[0246]
交集计算子单元,用于计算所述请求查询数据集与所述查询结果数据集的交集;
[0247]
空集处理子单元,用于若所述交集为空集,则确定针对所述目标查询对象的目标查询结果为在所述数据服务方不存在所述目标查询对象的查询参数信息;
[0248]
非空集处理子单元,用于若所述交集为非空集,则确定针对所述目标查询对象的目标查询结果为在所述数据服务方存在所述目标查询对象的查询参数信息。
[0249]
在本技术实施例的一些变更实施方式中,所述第一查询请求包括:位置核验查询请求或实名认证查询请求;其中,
[0250]
所述位置核验查询请求用于请求查询所述目标查询对象是否在指定位置出现;
[0251]
所述实名认证查询请求用于请求查询所述目标查询对象是否已通过实名认证。
[0252]
本技术实施例提供的用于数据请求方网关的保护隐私的信息查询装置10,与本技术前述实施例提供的用于数据请求方网关的保护隐私的信息查询方法出于相同的发明构思,具有相同的有益效果。
[0253]
另外,与上述实施例提供的一种用于数据服务方网关的保护隐私的信息查询方法相对应的,本技术还提供一种用于数据服务方网关的保护隐私的信息查询装置。本技术实施例提供的用于数据服务方网关的保护隐私的信息查询装置可以实施上述用于数据服务方网关的保护隐私的信息查询方法,该用于数据服务方网关的保护隐私的信息查询装置可以通过软件、硬件或软硬结合的方式来实现。例如,该用于数据服务方网关的保护隐私的信息查询装置可以包括集成的或分开的功能模块或单元来执行上述各方法中的对应步骤。请参考图6,其示出了本技术的一些实施方式所提供的一种保护隐私的信息查询装置的第二种示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
[0254]
如图6所示,所述保护隐私的信息查询装置20,用于数据请求方网关,可以包括:
[0255]
第二查询请求接收模块201,用于接收数据请求方网关发送的针对扩展查询对象集合的第二查询请求,其中,所述扩展查询对象集合包括目标查询对象;
[0256]
第二查询请求转发模块202,用于向数据服务方发送所述第二查询请求,以通过所述数据服务方对所述扩展查询对象集合中每个对象进行查询;
[0257]
查询结果数据集生成模块203,用于根据查询到的每个所述对象对应的查询结果,生成包含已加密数据的查询结果数据集;
[0258]
查询结果数据集发送模块204,用于向所述数据请求方网关返回所述查询结果数据集,以使所述数据请求方网关根据所述查询结果数据集利用隐私保护集合交集算法确定针对所述目标查询对象的目标查询结果。
[0259]
在本技术实施例的一些变更实施方式中,所述查询结果数据集生成模块203,包括:
[0260]
单值数据转换单元,用于针对查询到的每个所述对象对应的查询结果,按照预设的数据转换算法将所述查询结果由多值数据转换为单值数据,并采用第二加密密钥对所述单值数据进行加密,得到第四加密数据;
[0261]
查询结果数据集生成单元,用于根据每个所述对象对应的所述第四加密数据,生成查询结果数据集。
[0262]
在本技术实施例的一些变更实施方式中,所述单值数据转换单元,包括:
[0263]
第二数据串联子单元,用于将所述查询结果中的多个数据项进行串联,得到第二数据串;
[0264]
第二哈希计算子单元,用于计算所述第二数据串对应的第二哈希值;
[0265]
第二椭圆数据转化子单元,用于将所述第二哈希值转化为椭圆曲线上的第二点数据。
[0266]
在本技术实施例的一些变更实施方式中,所述装置20还包括:
[0267]
第一加密数据接收模块,用于接收所述数据请求方网关发送的第一加密数据;
[0268]
二次加密模块,用于采用第二加密密钥对所述第一加密数据进行二次加密,得到第二加密数据;
[0269]
第二加密数据发送模块,用于向所述数据请求方网关发送所述第二加密数据,以使所述数据请求方网关采用第一解密密钥对所述第二加密数据解密后得到仅采用所述第二加密密钥加密的第三加密数据。
[0270]
本技术实施例提供的用于数据服务方网关的保护隐私的信息查询装置20,与本技术前述实施例提供的用于数据服务方网关的保护隐私的信息查询方法出于相同的发明构思,具有相同的有益效果。
[0271]
本技术实施方式还提供一种与前述实施方式所提供的保护隐私的信息查询方法对应的信息查询系统,该信息查询系统可以参考图1所示的系统架构示意图进行理解,如图1所示,该信息查询系统可以包括:互相连接的数据请求方网关和数据服务方网关;其中,
[0272]
上述数据请求方网关用于执行前述任意实施方式所提供的用于数据请求方网关的保护隐私的信息查询方法;
[0273]
上述数据服务方网关用于执行前述任意实施方式所提供的用于数据服务方网关的保护隐私的信息查询方法。
[0274]
本技术实施例提供的信息查询系统,与前述实施例提供的用于数据服务方网关的保护隐私的信息查询方法和用于数据请求方网关的保护隐私的信息查询方法出于相同的发明构思,具体内容请参见前述用于数据请求方网关的保护隐私的信息查询方法的实施例说明,以及用于数据服务方网关的保护隐私的信息查询方法的实施例说明进行理解,此处不再赘述,该信息查询系统具有与其采用、运行或实现的方法相同的有益效果。
[0275]
本技术实施方式还提供一种与前述实施方式所提供的任意保护隐私的信息查询方法对应的电子设备,所述电子设备可以是具有数据运算和网络传输功能的任意电子设备,以执行上述用于数据服务方网关的保护隐私的信息查询方法或用于数据请求方网关的保护隐私的信息查询方法。
[0276]
请参考图7,其示出了本技术的一些实施方式所提供的一种电子设备的示意图。如图7所示,所述电子设备30可以包括:处理器300,存储器301,总线302和通信接口303,所述处理器300、通信接口303和存储器301通过总线302连接;所述存储器301中存储有可在所述处理器300上运行的计算机程序,所述处理器300运行所述计算机程序时执行本技术前述任一实施方式所提供的保护隐私的信息查询方法。
[0277]
其中,存储器301可能包含高速随机存取存储器(random access memory,ram),也可能还可以包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口303(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
[0278]
总线302可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器301用于存储程序,所述处理器300在接收到执行指令后,执行所述程序,前述本技术实施例任一实施方式揭示的所述保护隐私的信息查询方法可以应用于处理器300中,或者由处理器300实现。
[0279]
处理器300可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器300中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器300可以是通用处理器,可以包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器301,处理器300读取存储器301中的信息,结合其硬件完成上述方法的步骤。
[0280]
本技术实施例提供的电子设备与本技术实施例提供的保护隐私的信息查询方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
[0281]
本技术实施方式还提供一种与前述实施方式所提供的保护隐私的信息查询方法对应的计算机可读介质,请参考图8,其示出的计算机可读存储介质为光盘40,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的保护隐私的信息查询方法。
[0282]
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
[0283]
本技术的上述实施例提供的计算机可读存储介质与本技术实施例提供的保护隐私的信息查询方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
[0284]
需要说明的是,附图中的流程图和框图显示了根据本技术的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而
定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0285]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0286]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0287]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0288]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0289]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,可以包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质可以包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0290]
最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围,其均应涵盖在本技术的权利要求和说明书的范围当中。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献