一种隐私保护的多方数据处理方法、装置以及设备与流程

文档序号:32056588发布日期:2022-11-04 21:44阅读:70来源:国知局
一种隐私保护的多方数据处理方法、装置以及设备与流程

1.本发明涉及数据处理技术领域,特别是涉及一种隐私保护的多方数据处理方法、装置以及设备。


背景技术:

2.在多设备联合工作的场景中,不同的设备可以存储不同的表格数据。由于各个设备中存储的表格数据不完全相同,所以,对多个设备中存储的表格数据联合进行数据统计时,需要将各设备中存储的表格数据联合起来,共同完成数据统计。
3.然而,每一设备中存储的表格数据均会涉及大量的隐私信息,为减少隐私信息泄露,需要提供一种适用于多设备联合进行数据处理的方案。


技术实现要素:

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.第三发送模块,用于向第一设备发送结果字段的字段值的信息,以使得第一设备根据第三数据行中数据统计条件内结果字段的字段值的信息,得到针对数据统计条件的联合统计结果。
41.本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
42.存储器,用于存放计算机程序;
43.处理器,用于执行存储器上所存放的程序时,实现上述任一项所述的隐私保护的多方数据处理方法步骤。
44.本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的隐私保护的多方数据处理方法步骤。
45.本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的隐私保护的多方数据处理方法步骤。
46.本发明实施例有益效果:
47.本发明实施例提供的方案中,实施统计的第一设备在并未直接获取第二设备上的表格数据的情况下,通过第三数据分片和第一数据分片、第二数据分片和第四数据分片的统计结果得到联合统计结果。进行统计时,第一设备获取第二设备的数据分片,数据分片中包含拆分后部分恢复信息而不是完整的恢复信息,不能用于直接得到第二设备中表格数据的字段值,也就是第一设备并未获得第二设备上的实际的表格数据,这样减少统计过程中第一设备对其他设备的数据的获取,从而降低了数据统计过程中隐私泄露的风险。
48.且在上述过程中,各数据分片分别由第一表格数据、第二表格数据的字段值拆分得到,采用各数据分片进行统计,相当于对明文的第一表格数据、第二表格数据按数据统计条件的进行统计,在降低数据隐私泄露的风险的同时,基于两个设备上的表格数据进行统计,并且统计结果满足数据统计条件,实现了多个设备的条件联合统计。
49.当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优
点。
附图说明
50.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
51.图1为本发明实施例提供的第一种隐私保护的多方数据处理方法的流程示意图。
52.图2为本发明实施例提供的第二种隐私保护的多方数据处理方法的流程示意图。
53.图3为本发明实施例提供的第一种隐私保护的多方数据处理方法的信令流程图。
54.图4为本发明实施例提供的第一种隐私保护的多方数据处理装置的结构示意图。
55.图5为本发明实施例提供的第二种隐私保护的多方数据处理装置的结构示意图。
56.图6为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
57.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本技术所获得的所有其他实施例,都属于本发明保护的范围。
58.下面对本发明实施例的执行主体进行说明。
59.第一设备为需要进行数据处理并获取数据处理的处理结果的设备,例如数据统计时需要获取统计结果的设备。相应的,第二设备为上述数据处理过程的参与设备,提供数据以支持数据处理,并且不需要获取上述处理结果。
60.在本发明实施例中可以存在多个第二设备,且每个第二设备与第一设备之间均可按照后续实施例的步骤进行数据处理。
61.其中,第一设备和第二设备,可以是多种类型的电子设备,如台式计算机,服务器等。
62.为了减少多设备联合进行数据处理时产生的隐私信息泄漏,本发明实施例提供了一种隐私保护的多方数据处理方法、装置、设备以及存储介质。
63.本发明的一个实施例中,参见图1,提供了第一种隐私保护的多方数据处理方法的流程示意图,应用于第一设备,该方法包括以下步骤s101-s109。
64.步骤s101:获得第二设备存储的第二表格数据中标识字段的各第二字段值的信息,所述标识字段为第二表格数据和第一设备存储的第一表格数据中均存在的字段。
65.标识字段为第二表格数据、第一表格数据共有的字段,用于表示表格数据的归属的对象,例如,对象可以是用户,即标识字段下不同的字段值可以唯一地对应不同的用户,表示字段值所在数据行分别属于的用户。
66.例如,在下表1,下表2所示的举例中,id(identity document,身份标识号)字段为标识字段。
67.表1
68.id性别年龄10342140313240535042
69.表2
70.id消费金额消费次数vip信息14004042005151005178007081000190
71.其中,表1为第一表格数据,表2为第二表格数据。
72.第一表格数据的字段包括id、性别、年龄;性别字段下每一行的字段值为0或1,0表示性别女,1表示性别男;第二表格的字段包括id、消费金额、消费次数、vip信息,vip信息字段下每一行的字段值为0或1,0表示不是vip,1表示是vip。
73.各第二字段值的信息为根据标识字段下各字段值生成的信息,如,根据表2中id字段下各字段值《1,4,5,7,8》生成的信息。
74.第二字段值的信息可以是基于第二字段值生成的标识信息,且标识信息中不包含原始的第二字段值。本发明的一个实施例中,第二字段值的信息可以是根据各第二字段值生成的伪随机信息。具体的生成伪随机信息的方式可以参见后续实施中oprf-psi,此处暂不详述。采用此种方式,第二设备向第一设备发送的第二字段值的伪随机信息,若存在攻击者,则不能通过截获伪随机信息直接确定第二字段值,保护了第二设备的隐私安全。
75.本发明的另一个实施例中,第二字段的信息也可以是对各第二字段值进行哈希运算得到的哈希值。
76.第二设备向第一设备直接发送字段值会导致第一设备获知第二设备上存储的数据信息。例如,第一设备的使用者可以基于第二设备标识字段下的字段值推断第二设备上存储的数据所属的用户。按照上述实现方式发送第二字段值的信息作为替代,使得第一设备无法直接获得第二设备中的字段值,也就保护了第二设备的隐私信息。
77.步骤s102:根据所获得的第二字段值的信息,确定第一表格数据中标识字段的第一字段值与第二表格数据中第二字段值相同的第一数据行。
78.将标识字段下的各第一字段值与第二字段值的信息进行比较,可以确定和第二字段值相同的第一字段值,所确定的第一字段值所在的数据行为第一数据行。
79.本发明的一个实施例中,可以按照如下方式确定第一数据行:
80.获得第一表格数据中标识字段的第一字段值;根据所获得的第二字段值的信息,确定与第二字段值存在交集的第一字段值;将所确定的第一字段值在第一表格数据中所在的数据行确定为第一数据行。
81.本发明的一个实施例中,可以生成第一字段值的信息,且第一字段值的信息与第
二字段值的信息类型相同。在此情况下,第一字段值的信息、第二字段值的信息中相同的部分对应第一字段值与第二字段值的交集。交集中每一字段值对应的第一表格、第二表格中的数据行归属的对象一致,例如归属于同一用户。在此情况下,后续进行条件统计时仅需要采用交集中存在的标识字段对应的数据行,而不需要对交集外各标识字段值对应的第一表格数据、第二表格数据进行数据处理,减少了数据统计需要花费的计算资源。
82.上述过程中,可以通过多种方式实现上述确定与第二字段值存在交集的第一字段值的步骤,以下进行举例说明。
83.一种实现方式中,可以基于oprf-psi(oblivious pseudo random function-private set intersection,不经意伪随机函数-隐私集合求交)协议确定上述交集。在此情况下,第二字段值的信息为:以各第二字段值为输入参数由不经意伪随机函数输出的伪随机参数;第一字段的信息为:以各第一字段值为输入参数由同一不经意伪随机函数输出的伪随机参数。
84.在此情况下,对各第二字段值、各第一字段值生成的伪随机参数进行比较,可以得到伪随机参数的交集,存在于交集中的伪随机参数对应的第一字段值即为与第二字段值存在交集的第一字段值。
85.另一种实现方式中,第二字段值的信息为各第二字段值的哈希值。则按照求得第二字段值的哈希值的相同哈希算法,对各第一字段值进行哈希运算,将所得第一字段值的哈希值与第二字段值的哈希值进行两两比较,比较出的相同的哈希值对应的第一字段值即为与第二字段值存在交集的第一字段值。
86.步骤s103:对第一数据行中数据统计条件内条件字段的第三字段值进行拆分,得到第一数据分片和第二数据分片。
87.数据统计条件为:实现第一设备的数据统计需求的条件,例如,对应于上述表1、表2所述的举例,数据统计条件为:统计女性人群且是vip客户的消费总金额。
88.条件字段为数据统计条件中待筛选的字段值所在的字段;结果字段为得到统计结果所需的字段值所在的字段。例如,数据统计条件为:统计女性人群且是vip客户的消费总金额,筛选条件为:“性别”字段下字段值为0以及“vip信息”字段下字段值为1;结果字段为“消费金额”字段。
89.拆分第三字段值得到第三字段值的恢复信息,将所得恢复信息随机地分成两组,所得两组信息即为第一数据分片和第二数据分片。
90.本发明的一个实施例中,第一数据分片、第二数据分片分别包括:以第三字段值为输出参数的秘密恢复函数的部分输入参数。
91.在此情况下,恢复信息可以是对每一第三字段值进行拆分得到的该第三字段值的拆分值。任一拆分值与第三字段值之间的数值关系是不确定的,且使用预设数量个、或预设数量以上个拆分值能够还原所拆分的第三字段值。在此情况下,秘密恢复函数是用于实现还原过程的函数,拆分值为秘密恢复函数的输入参数。
92.使用秘密恢复函数实现还原的方式与拆分得到各数据分片的方式相对应,例如,拆分值可以是以第三字段值为参数构造的n阶线性方程组的解。根据方程组的特性可知,n个拆分值可以解上述方程组,从而得到第三字段值,则秘密恢复函数基于解上述方程组的计算过程形成;反之,若只存在n-1个拆分值,则无法解上述方程组并还原出第三字段值,即
上述预设数量为n。在此情况下,单个拆分值作为方程组的解,与方程组的参数之间的数值关系是不确定的,即不能根据单个拆分值确定第三字段值。
93.第一数据分片可以包括小于预设数量个拆分值,沿用上述举例,形成第一数据分片时,可以限制每一第一数据分片中最多包含n-1个拆分值,则每一第一数据分片不能用于还原第三字段值。
94.第二数据分片与第一数据分片类似,区别仅在于第二数据分片与第一数据分片在名称概念上的替换,此处不再详述。
95.在此情况下,第一设备向第二设备发送数据分片时,数据分片中不包含原始的任意表格数据,因此保证了第一设备在数据传输过程中的隐私安全。
96.在本发明实施例中,基于n阶线性方程进行拆分仅为举例,类似的,也可以使用随机字符串对第三字段值进行异或运算等其他方式进行拆分,本发明实施例并不对此进行限定。
97.步骤s104:生成数据统计条件的密文条件。
98.密文条件是对数据分片中的拆分值进行数据统计的统计条件,该统计条件与数据统计条件具有相同的统计方式。例如,若数据统计条件为求字段值a下的累和,对应生成的密文条件为加法条件,统计方式为:对拆分值做加法运算,所得结果为数据分片上的统计结果。
99.在相同的统计方式下,密文条件可以包含:随机拆分数据统计条件中原有的数值关系形成的子关系;例如,判断a》10的数据统计条件拆分后可以形成若干个a》x的密文条件,x为10拆分出的随机数。
100.这样,相对于数据统计条件而言,密文条件具有随机性,第二设备在获取密文条件时,不能直接根据密文条件准确地推断数据统计条件。
101.具体的密文条件以及基于mpc(secure multi-party computation,多方安全计算)协议生成,采用密文条件进行统计可以隐藏数据统计条件的明文信息,使得数据统计过程更为安全。这样在使用密文条件进行各数据分片的统计时,进行统计的设备不能根据密文条件得到数据统计条件,实现了数据统计条件的条件隐藏,若数据统计条件存在第一设备的敏感信息,则敏感信息不会被第二设备获取,保证了第一设备的信息安全。
102.步骤s105:向第二设备发送密文条件、第二数据分片和存在于第二表格数据内的条件字段。
103.接收第一设备发送的上述信息后,第二设备可以对第二表格数据中条件字段的第四字段值进行拆分得到第三数据分片和第四数据分片。
104.其中,条件字段本身包含的信息仅有字段名称,不包含具体的第二设备上的数据,泄漏隐私的风险较小。
105.在执行本发明实施例提供的方案之前,第一设备可以预先获取第二设备的条件字段的字段名称,据此从数据统计条件中确定存在于第二表格数据内的条件字段。
106.本发明的一个实施例中,第三数据分片、第四数据分片分别包括:以第四字段值为输出参数的秘密恢复函数的部分输入参数。
107.具体拆分得到第三数据分片和第四数据分片类似前述步骤s103中第一数据分片和第二数据分片,区别仅在于第三数据分片与第一数据分片、第二数据分片与第四数据分
片等名称概念上的替换,以及拆分时涉及的字段值不同:第二设备拆分条件字段下的所有字段值,第一设备拆分条件字段下第一数据行的字段值。
108.这样,第二设备向第一设备发送数据分片时,数据分片中也不包含任意表格数据,因此保证了第二设备在数据传输过程中的隐私安全。
109.步骤s106:接收第二设备反馈的第三数据分片以及第二统计结果。
110.第二统计结果为:第二设备统计第二数据分片和第四数据分片是否满足密文条件的统计结果。
111.密文条件中指定的筛选方式可以是对应表示数据统计条件的判断逻辑的表达式,表达式可以基于mpc协议指定的生成方式生成。
112.其中,上述表达式可以将第一数据分片和第三数据分片中属于同一标识字段的拆分值作为输入参数,得到输出参数,输出参数可是以表示第二数据分片和第四数据分片是否满足密文条件的参数值。
113.其中,在前述步骤s102中确定了第一字段值和第二字段值的交集,根据交集中第一数据行和第二数据行对应的位置关系可以确定第一数据分片和第三数据分片中属于同一标识字段的第三字段值和第四字段值,所确定的字段值拆分出的拆分值也属于该标识字段。仅采用所得交集的位置关系,相比于让第一设备直接获取第二设备在交集中的标识字段下字段值的数据行,隐藏了交集中包含的字段值信息,例如表1表2所示举例中的id信息,包括第二设备中的字段值信息,这样减少了第一设备对第二设备的信息获取,也就减少了第二设备隐私泄露的风险。
114.步骤s107:统计第一数据分片和第三数据分片是否满足密文条件,得到第一统计结果。
115.第一统计结果的获得方式与步骤s106中第二统计结果的获得方式相同,区别仅在于第一数据分片与第二数据分片、第三数据分片与第四数据分片等名称概念上的替换,且得到第一统计结果的执行主体为第一设备,此处不再详述。
116.步骤s108:根据第一统计结果和第二统计结果,确定第二表格数据中满足数据统计条件的第三数据行。
117.由于秘密恢复函数能够以拆分值作为输入参数,相应的也可以用拆分值数值类型相同的数值作为输入参数。例如,拆分值1,拆分值2可以作为秘密恢复函数a的输入参数,拆分值1与拆分值2的和值、平均值及其他统计方式下形成的各种统计结果与拆分值数值类型相同,也可以作为输入参数。
118.由上,第一统计结果和第二统计结果与拆分值数值类型相同,将第一统计结果和第二统计结果作为秘密恢复函数的输入参数,得到的输出参数表示明文的统计结果。在此过程中,前述步骤求得的第一字段值和第二字段值的交集仅用于提供位置关系,且统计时实际采用密文条件而非数据统计条件,既不暴露交集信息又不暴露数据统计条件的条件信息,提高了联合统计的安全性。
119.步骤s109:从第二设备获得第三数据行中数据统计条件内结果字段的字段值的信息,得到针对数据统计条件的联合统计结果。
120.在上述过程中,第一设备向第二设备获取结果字段下所有字段值的信息,在此情况下,第二设备不会获知第一设备获得联合统计结果所需要使用的具体字段值,相应地也
不会获知数据统计条件如何筛选字段值,这样,仅有实际进行统计的第一设备持有数据统计条件并获知数据统计条件的筛选方法,保护了第一设备的隐私信息。
121.本发明的一个实施例中,联合统计结果可以按照以下方式获得:
122.生成表征第三数据行在第二表格数据中位置的位置信息;从第二设备获得第二表格数据中结果字段的第五字段值的信息;基于所生成位置信息、第五字段值的信息进行联合统计,得到针对数据统计条件的联合统计结果。
123.位置信息可以用向量表示,向量中包含的数值顺序对应第二表格数据中的数据行顺序,其中,第三数据行所在位置可以在向量中用1表示,除第三数据行以外的其他数据行所在位置可以用0表示。例如,在表1、表2所示的举例中,表2的第三数据行为:id为4、5的数据行,则对应的位置信息可以是:《0,1,1,0,0》。
124.类似的,第五字段值的信息也可是表示结果字段下所有字段值的向量,向量中的数值顺序同样对应于第二表格数据中的数据行顺序。例如,在前述表2中,第五字段值的信息可以表示为消费金额向量《400,200,100,800,1000》。
125.位置信息和第五字段值的信息均对应相同的数据行数据,在此情况下,可以确定向量中数值1表示的位置对应的第五字段值,得到符合数据统计条件的联合统计结果,在表1,表2的实施例中,所得联合统计结果为300,即id为4和id为5的用户的消费金额的总量,此二人为女性且是vip,符合数据统计条件。这样通过位置信息能够获取到第二表格数据中符合统计条件的第五字段值,得到数据统计结果。
126.其中,可以按照前述步骤s103所示的方式将位置信息和第五字段值的信息拆分成数据分片,并采用mpc协议生成计算联合统计结果的密文条件的表达式进行统计,类似前述步骤s103-108,此处不再详述。这样可以基于mpc协议保证统计过程的正确性和隐私性。
127.本发明实施例提供的方案中,实施统计的第一设备在并未直接获取第二设备上的表格数据的情况下,通过第三数据分片和第一数据分片、第二数据分片和第四数据分片的统计结果得到联合统计结果。进行统计时,第一设备获取第二设备的数据分片,数据分片中包含拆分后部分恢复信息而不是完整的恢复信息,不能用于直接得到第二设备中表格数据的字段值,也就是第一设备并未获得第二设备上的实际的表格数据,这样减少统计过程中第一设备对其他设备的数据的获取,从而降低了数据统计过程中隐私泄露的风险。
128.且在上述过程中,各数据分片分别由第一表格数据、第二表格数据的字段值拆分得到,采用各数据分片进行统计,相当于对明文的第一表格数据、第二表格数据按数据统计条件的进行统计,在降低数据隐私泄露的风险的同时,基于两个设备上的表格数据进行统计,并且统计结果满足数据统计条件,实现了实现了多个设备的条件联合统计。
129.本发明的一个实施例中,参见图2,提供了第二种隐私保护的多方数据处理方法的流程示意图,应用于第二设备,该方法包括以下步骤s201-s207。
130.步骤s201:向第一设备发送第二设备存储的第二表格数据中标识字段的各第二字段值的信息。
131.步骤s202:接收第一设备发送的数据统计条件的密文条件、第二数据分片和存在于第二表格数据内的数据统计条件的条件字段。
132.第二数据分片为:对第一数据行中数据统计条件内条件字段的第三字段值进行拆分得到的数据分片,第一数据行为:第一表格数据中标识字段的第一字段值与第二数据行
中第二字段值相同的数据行,标识字段为第二表格数据和第一设备存储的第一表格数据中均存在的字段。
133.步骤s203:对第二表格数据中条件字段的第四字段值进行拆分得到第三数据分片和第四数据分片。
134.步骤s204:统计第二数据分片和第四数据分片是否满足密文条件,得到第二统计结果。
135.步骤s205:向第一设备发送第三数据分片、第二统计结果。
136.本步骤使得第一设备统计第一数据分片和第三数据分片是否满足密文条件,得到第一统计结果,并根据第一统计结果和第二统计结果,确定第二表格数据中满足数据统计条件的第三数据行。
137.步骤s206:从第一设备获得统计条件的结果字段。
138.步骤s207:向第一设备发送结果字段的字段值的信息。
139.本步骤以使得第一设备根据第三数据行中数据统计条件内结果字段的字段值的信息,得到针对数据统计条件的联合统计结果。
140.步骤s201-s207中各名称概念与前述步骤s101-s109相同,此处不再详述。
141.由上可见,第二设备参与数据统计过程时,向第一设备发送第三数据分片、第二统计结果,其中不包含根据数据统计条件对数据行进行筛选时的具体数据,结合前述第一设备的实施例可知,第三数据分片和第二统计结果中包含的数据均为字段值的拆分值或拆分值的统计结果,不包含原始的字段值的信息,因此,最大限度地减小了第一设备在数据统计过程对第二设备的数据的获取,包含了第二设备的隐私信息。
142.本发明的一个实施例中,向第一设备发送结果字段的字段值的信息,以使得第一设备根据第三数据行中数据统计条件内结果字段的字段值的信息,得到针对数据统计条件的联合统计结果,包括:
143.生成第二表格数据中结果字段的第五字段值的信息;向第一设备发送第五字段值的信息,以使得第一设备基于位置特征、第五字段值的信息进行联合统计,得到针对数据统计条件的联合统计结果。
144.生成第五字段值的信息,进行联合统计的方式参见上述步骤s109,此处不再详述。
145.在此情况下,第一设备可以通过位置信息能够获取到第二表格数据中符合统计条件的第五字段值,得到数据统计结果。
146.下面通过图3所示的实施例对隐私保护的多方数据处理的整体流程进行说明。
147.本发明的一个实施例中,参见图3,提供了一种隐私保护的多方数据处理方法的信令流程图。为便于说明,本实施例中延用前述表1、表2进行数据处理。
148.其中,步骤s301提取的id列为标识字段下的第一字段值。由于第一设备持有数据统计条件,在提取时可以采用数据统计条件预先选择符合条件的字段值,减少后续步骤中求交集的计算量。例如,数据统计条件为统计女性人群且是vip客户的消费总金额,第一设备可以从表1中预先选出sex=0的第一字段值,即id=1、4、5。
149.步骤s302提取的id列为第二表格数据的标识字段下的第二字段值。
150.步骤s303运行psi协议,第一设备可以根据psi协议设置用于确定第一字段值和第二字段值交集的实现方式,步骤s304类似步骤s303。
151.步骤s305中,作为发送方的第二设备向作为接收方的第一设备发送id信息,即第二字段值的信息;
152.步骤s306的交集向量基于第一字段值和第二字段值交集得到,表示交集中第二字段值在第二表格数据中数据行的位置,见表2,交集为id=1,4,5,为第二表格数据中前三行,对应向量《1,1,1,0,0》中1出现的位置。
153.步骤s307:向第二设备同步信息。同步的信息包括密文条件、存在于第二表格数据内的条件字段、结果字段。
154.步骤s308拆分数据分片得到第一、二数据分片,步骤s309拆分数据分片得到第三、四数据分片,并按照mpc协议进行数据分片上的交换,得到第一统计结果和第二统计结果,参见前述步骤s104-s107。
155.步骤s310得到的筛选结果为基于第一统计结果和第二统计结果确定的第三数据行,即表2中id=4、5的数据行,对应的位置信息为:《0,1,1,0,0》
156.步骤s311生成的消费金额向量《400,200,100,800,1000》。
157.基于mpc协议对位置信息和消费金额向量计算,可以按照步骤s312获得联合统计结果,即满足数据统计条件的用户的消费金额,并按照步骤s313计算消费总金额为300。
158.参照图3,若存在多个设备,每个设备上的数据表格均存在数据统计条件中部分条件字段,则第一设备与每一第二设备均可按照上述流程进行通信。与存在一个第二设备的区别仅在于,s307向第二设备同步信息时,同步的条件字段不同,为每一第二设备中数据表格实际具有的条件字段,且拆分数据分片时,若第一设备和第二设备共有n台,n》2的情况下,每一设备可以拆分n个数据分片,将其中n-1个数据分片分别发往其他n-1台设备,使得每一设备上根据自己未发送的数据分片和接收到的数据分片得到分片统计结果,再由第一设备手机所有分片统计结果,得到联合统计结果。其具体实施方式与上述前述实施例相同,此处不再详述。
159.与上述隐私保护的多方数据处理方法相对应,本发明的一个实施例中,参见图4,提供了第一种隐私保护的多方数据处理装置的结构示意图,所述装置包括:
160.信息获得模块401,用于获得第二设备存储的第二表格数据中标识字段的各第二字段值的信息,所述标识字段为第二表格数据和第一设备存储的第一表格数据中均存在的字段;
161.第一数据行确定模块402,用于根据所获得的第二字段值的信息,确定第一表格数据中标识字段的第一字段值与第二表格数据中第二字段值相同的第一数据行;
162.第一拆分模块403,用于对第一数据行中数据统计条件内条件字段的第三字段值进行拆分,得到第一数据分片和第二数据分片;
163.密文条件生成模块404,用于生成数据统计条件的密文条件;
164.第一发送模块405,用于向第二设备发送密文条件、第二数据分片和存在于第二表格数据内的条件字段,以使得第二设备对第二表格数据中条件字段的第四字段值进行拆分得到第三数据分片和第四数据分片;
165.第一接收模块406,用于接收第二设备反馈的第三数据分片以及第二统计结果,第二统计结果为:第二设备统计第二数据分片和第四数据分片是否满足密文条件的统计结果;
166.第一统计模块407,用于统计第一数据分片和第三数据分片是否满足密文条件,得到第一统计结果;
167.数据行确定模块408,用于根据第一统计结果和第二统计结果,确定第二表格数据中满足数据统计条件的第三数据行;
168.联合统计模块409,用于从第二设备获得第三数据行中数据统计条件内结果字段的字段值的信息,得到针对数据统计条件的联合统计结果。
169.本发明实施例提供的方案中,实施统计的第一设备在并未直接获取第二设备上的表格数据的情况下,通过第三数据分片和第一数据分片、第二数据分片和第四数据分片的统计结果得到联合统计结果。进行统计时,第一设备获取第二设备的数据分片,数据分片中包含拆分后部分恢复信息而不是完整的恢复信息,不能用于直接得到第二设备中表格数据的字段值,也就是第一设备并未获得第二设备上的实际的表格数据,这样减少统计过程中第一设备对其他设备的数据的获取,从而降低了数据统计过程中隐私泄露的风险。
170.且在上述过程中,各数据分片分别由第一表格数据、第二表格数据的字段值拆分得到,采用各数据分片进行统计,相当于对明文的第一表格数据、第二表格数据按数据统计条件的进行统计,在降低数据隐私泄露的风险的同时,基于两个设备上的表格数据进行统计,并且统计结果满足数据统计条件,实现了实现了多个设备的条件联合统计。
171.本发明的一个实施例中,所述联合统计模块409,具体用于生成表征第三数据行在第二表格数据中位置的位置信息;从第二设备获得第二表格数据中结果字段的第五字段值的信息;基于所生成位置信息、第五字段值的信息进行联合统计,得到针对数据统计条件的联合统计结果。
172.这样通过位置信息能够获取到第二表格数据中符合统计条件的第五字段值,得到数据统计结果。
173.本发明的一个实施例中,所述第一数据行确定模块402,具体用于获得第一表格数据中标识字段的第一字段值;根据所获得的第二字段值的信息,确定与第二字段值存在交集的第一字段值;将所确定的第一字段值在第一表格数据中所在的数据行确定为第一数据行。
174.在此情况下,后续进行条件统计时仅需要采用交集中存在的标识字段对应的数据行,而不需要对交集外各标识字段值对应的第一表格数据、第二表格数据进行数据处理,减少了数据统计需要花费的计算资源。
175.本发明的一个实施例中,所述各第二字段值的信息为:根据各第二字段值生成的伪随机信息;
176.或,
177.所述第一数据分片、第二数据分片分别包括:以第二字段值为输出参数的秘密恢复函数的部分输入参数;
178.或,
179.所述第三数据分片、第四数据分片分别包括:以第四字段值为输出参数的秘密恢复函数的部分输入参数。
180.采用此种方式,第二设备向第一设备发送的第二字段值的伪随机信息,若存在攻击者,则不能通过截获伪随机信息直接确定第二字段值,保护了第一设备的隐私安全。
181.第一设备向第二设备发送数据分片时,数据分片中不包含原始的任意表格数据,因此保证了第一设备在数据传输过程中的隐私安全。
182.第二设备向第一设备发送数据分片时,数据分片中也不包含原始的任意表格数据,因此保证了第二设备在数据传输过程中的隐私安全。
183.参见图5,提供了第二种隐私保护的多方数据处理装置的结构示意图,应用于第二设备,所述装置包括:
184.信息发送模块501,用于向第一设备发送第二设备存储的第二表格数据中标识字段的各第二字段值的信息;
185.第二接收模块502,用于接收第一设备发送的数据统计条件的密文条件、第二数据分片和存在于第二表格数据内的数据统计条件的条件字段,第二数据分片为:对第一数据行中数据统计条件内条件字段的第三字段值进行拆分得到的数据分片,第一数据行为:第一表格数据中标识字段的第一字段值与第二数据行中第二字段值相同的数据行,标识字段为第二表格数据和第一设备存储的第一表格数据中均存在的字段;
186.第二拆分模块503,用于对第二表格数据中条件字段的第四字段值进行拆分得到第三数据分片和第四数据分片;
187.第二统计模块504,用于统计第二数据分片和第四数据分片是否满足密文条件,得到第二统计结果;
188.第二发送模块505,用于向第一设备发送第三数据分片、第二统计结果,以使得所述第一设备统计第一数据分片和第三数据分片是否满足密文条件,得到第一统计结果,并根据第一统计结果和第二统计结果,确定第二表格数据中满足数据统计条件的第三数据行;
189.结果字段获得模块506,用于从第一设备获得统计条件的结果字段;
190.第三发送模块507,用于向第一设备发送结果字段的字段值的信息,以使得第一设备根据第三数据行中数据统计条件内结果字段的字段值的信息,得到针对数据统计条件的联合统计结果。
191.由上可见,第二设备参与数据统计过程时,向第一设备发送第三数据分片、第二统计结果,其中不包含根据数据统计条件对数据行进行筛选时的具体数据,结合前述第一设备的实施例可知,第三数据分片和第二统计结果中包含的数据均为字段值的拆分值或拆分值的统计结果,不包含原始的字段值的信息,因此,最大限度地减小了第一设备在数据统计过程对第二设备的数据的获取,包含了第二设备的隐私信息。
192.本发明的一个实施例中,所述第三发送模块507,具体用于:生成第二表格数据中结果字段的第五字段值的信息;向第一设备发送所述第五字段值的信息,以使得第一设备基于位置特征、所述第五字段值的信息进行联合统计,得到针对数据统计条件的联合统计结果。
193.在此情况下,第一设备可以通过位置信息能够获取到第二表格数据中符合统计条件的第五字段值,得到数据统计结果。
194.本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
195.存储器603,用于存放计算机程序;
196.处理器601,用于执行存储器603上所存放的程序时,实现前述实施例中应用于第一设备的隐私保护的多方数据处理方法或者应用于第二设备的隐私保护的多方数据处理方法步骤。
197.上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
198.通信接口用于上述电子设备与其他设备之间的通信。
199.存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
200.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
201.在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前述实施例中应用于第一设备的隐私保护的多方数据处理方法或者应用于第二设备的隐私保护的多方数据处理方法步骤。
202.在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述实施例中应用于第一设备的隐私保护的多方数据处理方法或者应用于第二设备的隐私保护的多方数据处理方法步骤。
203.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
204.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖
非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
205.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备以及存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
206.以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1