数据处理方法、装置、设备及存储介质与流程

文档序号:32388844发布日期:2022-11-30 07:22阅读:44来源:国知局
数据处理方法、装置、设备及存储介质与流程

1.本公开涉及大数据技术和加密技术领域,尤其涉及一种数据处理方法、装置、设备、介质和程序产品。


背景技术:

2.数据共享交互协作有助于更好发挥数据价值,赋能相关场景和机构,随着数据安全与隐私保护的要求不断提升,机构间进行数据共享协作过程中需要最大程度上保护各方隐私,避免数据外泄。
3.在实现本公开发明构思的过程中,发明人发现相关技术中至少存在以下问题:相关技术中,对于包含筛选策条件的数据处理时,需要将筛选条件直接发送给数据提供方,难以有效保护筛选条件的隐私,提高数据外泄的风险。


技术实现要素:

4.鉴于上述问题,本公开提供了数据处理方法、装置、设备、介质和程序产品。
5.根据本公开的第一个方面,提供了一种数据处理方法,应用于数据需求方,上述方法包括:
6.通过不经意伪随机函数协议,接收由数据提供方生成的与样本标识集合对应的第一样本标识掩码集合;并根据预设的筛选阈值,利用秘密分享协议生成第一阈值分片和第二阈值分片;
7.利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合;
8.运行乘法秘密重分享协议,根据上述第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合;
9.利用上述第一乘法秘密分片集合通过不经意传输协议从上述数据提供方发送的随机数集中确定第一筛选掩码集合;
10.接收由上述数据提供方发送的双重掩码集合,其中,上述双重掩码集合由上述数据提供方根据第二筛选掩码集合和第二样本标识掩码集合确定,上述第二筛选掩码集合是根据第二乘法秘密分片集合按照不经意传输协议确定的,上述第二乘法秘密分片集合是利用上述参数数组处理后的第一秘密特征分片集合确定的;以及
11.利用隐私集合求交协议,根据上述第一筛选掩码集合、上述双重掩码集合和上述第一样本标识掩码集合确定目标集合。
12.根据本公开的实施例,上述第一样本特征分片集合和上述第二样本特征分片集合由上述数据提供方利用秘密分享协议对样本与特征集合中的样本特征处理后得到的;
13.上述第二秘密特征分片集合是由上述数据提供方根据上述第二阈值分片和第二样本特征分片集合确定的;
14.上述第一乘法秘密分片集合和上述第二乘法秘密分片集合中对应元素的乘积与
上述第一秘密特征分片集合和上述第二秘密特征分片集合中对应元素的加和满足预设条件。
15.根据本公开的实施例,上述第一样本特征分片集合包括n个第一样本特征分片,上述第一特征秘密分片集合包括n个第一特征秘密分片;
16.上述利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合包括:
17.针对上述第一样本特征分片集合中的第k个第一样本特征分片,利用上述第k个第一样本特征分片减去上述第一阈值片,得到与上述第k个第一样本特征分片对应的第k个第一特征秘密分片,最终得到上述第一特征秘密分片集合,其中,n为正整数,1≤k≤n。
18.根据本公开的实施例,上述第一样本特征分片集合包括n个第一样本特征分片,上述第一特征秘密分片集合包括n个第一特征秘密分片;
19.上述利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合包括:
20.针对上述第一样本特征分片集合中的第k个第一样本特征分片,利用上述第一阈值片减去上述第k个第一样本特征分片,得到与上述第k个第一样本特征分片对应的第k个第一特征秘密分片,最终得到上述第一特征秘密分片集合,其中,n为正整数,1≤k≤n。
21.根据本公开的实施例,上述第一秘密特征分片集合包括n个第一秘密特征分片,上述第二秘密特征分片集合包括n个第二秘密特征分片,上述第一乘法特征分片包括n个第一乘法特征分片;
22.上述根据上述第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合包括:
23.针对上述第一乘法秘密分片中的第k个第一乘法秘密分片,利用上述参数数组和上述第k个第一秘密特征分片确定第k个第一中间值,以便于数据提供方根据上述第k个第一中间值、第k个第二秘密特征分片和上述参数数组确定第k个第二中间值;
24.根据上述参数数组和上述第k个第二中间值确定上述第k个第一乘法秘密分片,其中,n为正整数,1≤k≤n。
25.根据本公开的实施例,上述参数数据组包括第一参数、第二参数fk和第三参数,第三参数包括第一子参数和第二子参数,其中,上述第一参数和上述第二参数的乘积与上述第三参数相等;上述第一子参数和上述第二子参数的加和与上述第三参数相等;
26.上述利用上述参数数组和上述第k个第一秘密特征分片确定第k个第一中间值,以便于数据提供方根据上述第k个第一中间值、第k个第二秘密特征分片和上述参数数组确定第k个第二中间值包括:
27.利用第k个第一秘密特征分片、上述第一参数和上述第一子参数确定上述第k个第一中间值;
28.向上述数据提供方发送上述第k个第一中间值,以便于上述数据提供方根据上述第k个第一中间值、上述第二参数、第k个第二秘密特征分片和上述第二子参数确定上述第k个第二中间值;
29.上述根据上述参数数组和上述第k个第二中间值确定上述第k个第一乘法秘密分片包括:
30.接收上述第k个第二中间值,并根据上述第一参数和上述第k个第二中间值确定上述第k个第一乘法秘密分片。
31.根据本公开的实施例,上述第一筛选掩码集合包括n个第一筛选掩码,上述第一乘法秘密分片集合包括n个第一乘法秘密分片;上述随机数集包括n组随机数,每一组随机数中包括至少两个不相等的随机数;
32.上述利用上述第一乘法秘密分片集合通过不经意传输协议从上述数据提供方发送的随机数集中确定第一筛选掩码集合包括:
33.针对上述第一筛选掩码集合中的第k个第一筛选掩码,根据第k个第一乘法秘密分片,利用符号函数确定与上述第k个第一乘法秘密分片对应的第k个输出值;
34.执行上述不经意传输协议,从上述数据提供方获取第k组随机数;
35.根据上述第k个输出值从上述第k组随机数中确定上述第k个第一筛选掩码,其中,n为正整数,1≤k≤n。
36.根据本公开的实施例,上述利用隐私集合求交协议,根据上述第一筛选掩码集合、上述双重掩码集合和上述第一样本标识掩码集合确定目标集合包括:
37.根据上述第一筛选掩码集合和上述双重掩码集合确定待匹配样本标识集合;
38.利用上述隐私集合求交协议确定上述待匹配样本标识集合和上述第一样本标识掩码集合的交集,得到上述目标集合。
39.根据本公开的实施例,上述目标集合包括样本标识掩码;
40.上述方法还包括:
41.针对上述目标集合中的每个样本标识掩码,根据上述样本标识掩码与上述第一样本标识集合中样本标识之间的对应关系,还原上述目标集合中的上述样本标识掩码,得到原始集合。
42.本公开的第二方面提供了一种数据处理方法,应用于数据提供方,上述方法包括:
43.调用不经意伪随机函数算法协议,利用随机生成的随机数确定与样本与特征集合对应的第二样本标识掩码集合;
44.根据上述样本与特征集合中的样本特征,利用秘密分享协议生成第一样本特征分片集合和第二样本特征分片集合,并向上述数据需求方发送上述第一样本特征分片集合,以便于上述数据需求方根据上述第一样本特征分片集合确定第一特征秘密分片集合;
45.根据上述第二样本特征分片集合和由上述数据需求方发送的第二阈值分片确定第二特征秘密分片集合,其中,上述第二阈值分片是根据预设的筛选阈值利用秘密分享协议生成的;
46.运行乘法秘密重分享协议,根据利用预先生成的参数数组处理后的第一秘密特征分片集合确定第二乘法秘密分片集合;
47.根据上述第二乘法秘密分片集合从上述随机数集中确定第二筛选掩码集合;
48.利用上述第二筛选掩码集合对上述第二样本标识掩码集合进行掩码处理,得到双重掩码集合,并向上述数据需求方发送上述双重掩码集合,以便于上述数据需求方利用隐私集合求交协议,根据第一筛选掩码集合、上述双重掩码集合和第一样本标识掩码集合确定目标集合,其中,上述第一筛选掩码集合θn是根据第一乘法秘密分片集合按照不经意传输协议确定的,上述第一乘法秘密分片集合是根据上述第一特征秘密分片集合和利用上述
参数数组处理后的第二特征秘密分片集合确定的。
49.根据本公开的实施例,上述方法还包括:
50.利用预设值更新上述第二阈值分片,得到更新后的第二阈值分片;
51.其中,上述根据上述第二样本特征分片集合和由上述数据需求方发送的第二阈值分片确定第二特征秘密分片集合包括:
52.根据上述第二样本特征分片集合和上述更新后的第二阈值分片确定上述第二特征秘密分片集合。
53.根据本公开的实施例,上述利用预设值更新上述第二阈值分片,得到更新后的第二阈值分片包括:
54.在筛选条件为大于等于筛选策略的情况下,利用上述预设值与上述第二阈值分片相加,得到上述更新的第二阈值分片;或者
55.在筛选条件为小于等于筛选策略的情况下,利用上述第二阈值分片减去上述预设值,得到上述更新的第二阈值分片。
56.本公开的第三方面提供了一种数据处理装置,应用于数据需求方,上述装置包括:
57.第一接收模块,用于通过不经意伪随机函数协议,接收由数据提供方生成的与样本标识集合对应的第一样本标识掩码集合;并根据预设的筛选阈值,利用秘密分享协议生成第一阈值分片和第二阈值分片;
58.第一确定模块,用于利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合;
59.第二确定模块,用于运行乘法秘密重分享协议,根据上述第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合;
60.第三确定模块,用于利用上述第一乘法秘密分片集合通过不经意传输协议从上述数据提供方发送的随机数集中确定第一筛选掩码集合;
61.第二接收模块,用于接收由上述数据提供方发送的双重掩码集合,其中,上述双重掩码集合由上述数据提供方根据第二筛选掩码集合和第二样本标识掩码集合确定,上述第二筛选掩码集合是根据第二乘法秘密分片集合按照不经意传输协议确定的,上述第二乘法秘密分片集合是利用上述参数数组处理后的第一秘密特征分片集合确定的;以及
62.求交模块,用于利用隐私集合求交协议,根据上述第一筛选掩码集合、上述双重掩码集合和上述第一样本标识掩码集合确定目标集合。
63.本公开的第四方面提供了一种数据处理装置,应用于数据提供方,上述装置包括:
64.第四确定模块,用于调用不经意伪随机函数算法协议,利用随机生成的随机数确定与样本与特征集合对应的第二样本标识掩码集合;
65.生成模块,用于根据上述样本与特征集合中的样本特征,利用秘密分享协议生成第一样本特征分片集合和第二样本特征分片集合,并向上述数据需求方发送上述第一样本特征分片集合,以便于上述数据需求方根据上述第一样本特征分片集合确定第一特征秘密分片集合;
66.第五确定模块,用于根据上述第二样本特征分片集合和由上述数据需求方发送的第二阈值分片确定第二特征秘密分片集合,其中,上述第二阈值分片是根据预设的筛选阈值利用秘密分享协议生成的;
67.第六确定模块,用于运行乘法秘密重分享协议,根据利用预先生成的参数数组处理后的第一秘密特征分片集合确定第二乘法秘密分片集合;
68.第七确定模块,用于根据上述第二乘法秘密分片集合从上述随机数集中确定第二筛选掩码集合;
69.掩码处理模块,用于利用上述第二筛选掩码集合对上述第二样本标识掩码集合进行掩码处理,得到双重掩码集合,并向上述数据需求方发送上述双重掩码集合,以便于上述数据需求方利用隐私集合求交协议,根据第一筛选掩码集合、上述双重掩码集合和第一样本标识掩码集合确定目标集合,其中,上述第一筛选掩码集合是根据第一乘法秘密分片集合按照不经意传输协议确定的,上述第一乘法秘密分片集合是根据上述第一特征秘密分片集合和利用上述参数数组处理后的第二特征秘密分片集合确定的。
70.本公开的第五方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当上述一个或多个程序被上述一个或多个处理器执行时,使得一个或多个处理器执行上述方法。
71.本公开的第六方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述方法。
72.本公开的第七方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法。
73.根据本公开提供的数据处理方法、装置、设备、介质和程序产品,通过使用不经意伪随机函数对样本标识集合进行标识掩码得到第一样本标识掩码集合;然后利用秘密分享协议对筛选阈值随机分片,得到第一阈值分片和第二阈值分片;之后利用第一阈值分片和由数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合;之后运行乘法秘密重分享协议,根据第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合,并利用第一乘法秘密分片集合通过不经意传输协议,从随机数集中确定第一筛选掩码集合,之后根据第一筛选掩码集合、来自数据提供方的双重掩码集合和样本标识掩码集合,利用隐私集合求交协议求交确定目标集合。由于是通过秘密分享协议对筛选阈值随机分片,将其中一个阈值分片发送给数据提供方,因此,数据提供方无法获知筛选阈值,从而保证了筛选条件不外泄,提高了数据传输过程中的隐私性。
附图说明
74.通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
75.图1示意性示出了根据本公开实施例的数据处理方法、装置、设备、介质和程序产品的应用场景图;
76.图2示意性示出了根据本公开实施例的数据处理方法的流程图;
77.图3示意性示出了根据本公开实施例的确定第一筛选掩码集合的流程图;
78.图4示意性示出了根据本公开实施例的数据处理装置的结构框图;
79.图5示意性示出了根据本公开另一实施例的数据处理方法的流程图;
80.图6示意性示出了根据本公开另一实施例的数据处理装置的结构框图;以及
81.图7示意性示出了根据本公开实施例的适于实现数据处理方法的电子设备的方框图。
具体实施方式
82.以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
83.在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
84.在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
85.在使用类似于“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。
86.术语解释:
87.消息(message):任意长度的比特串。
88.隐私集合求交(private set intersection,psi):一类密码学算法和协议,输入为双方的样本集合,输出为双方的交集样本集合,求交过程中不会泄露双方样本交集以外的其他信息,同时确保前向安全性,常见的隐私集合求交协议包含基于rsa盲签名、基于椭圆曲线、基于扩展不经意传输(ot-extension)等技术路线。
89.多策略隐私集合求交(multi-strategy private set intersection,ms-psi):一类特殊的隐私求交协议,能够在求交过程中添加一定的隐私策略(求交触发条件或要求),输入为双方的样本集合以及隐私策略,输出满足该策略的交集样本集合,求交过程中不泄露策略中的隐私信息,能够实现更精准更有效的求交计算过程,并更好保护各方隐私。
90.不经意传输(oblivious transfer,ot):一类特殊的密码学协议,能够实现数据发送者向数据接收者发送两份数据(x0,x1),但是数据接收者仅能按照自身需要(0或1)接收其中一份数据,并且确保数据发送者不知道其接收了哪份数据。通过rsa、椭圆曲线、二次剩余类、格密码等技术路线都可以构造不经意传输协议,该技术发展较为成熟。
91.扩展不经意传输(extended oblivious transfer,ot-e):在基础不经意传输协议基础上的改进协议,用于优化多次进行不经意传输的性能,通过仅调用k次不经意传输,就实现完成n次(n>>k)不经意传输的效果,通常k可以为固定值(64,128,256等),n的数量级可以为千万、亿级别,本方案中我们使用扩展不经意传输实现多次基础不经意传输的性能优化。
92.不经意伪随机函数(oblivious pseudo-random function,oprf):一类特殊的伪
随机函数计算协议,函数值接收者随机生成随机数r,发送者生成随机数s,双方通过交互计算协议,最终实现由接收者在不掌握s的前提下得到随机函数f(r,s)的值。
93.基于不经意伪随机函数的隐私集合求交(psi from oblivious pseudo-random function):不经意伪随机函数常用于实现高性能的隐私集合求交协议,一般的方式为甲方生成s,双方运行不经意伪随机函数,甲方计算f(idi,s),乙方获得称为样本掩码,双方发送掩码后进行求交运算。
94.秘密分享(secret sharing,ss):一类特殊的密码学协议,也称为加法秘密分享,对于某隐私数据a,甲乙双方各掌握一个随机值x0,x1,满足a=x0+x1,x0,x1称为a的加法秘密分片,也可以记为(x0,x1)=[a]。通过秘密分享机制,能实现加、减、乘等多方隐私计算。此外,也存在多方的秘密分项情形,即将隐私数据拆分为多份,这里不再一一赘述。
[0095]
乘法三元组(beaver’s triplets):一种秘密分享算法中常见的辅助数据元素,用于实现秘密分享状态下的多方乘法计算,乘法三元组的形式为各方掌握[a],[b],[c]的秘密分片,满足c=a
·
b,其中[a],[b],[c]为各方分别掌握的秘密分片。生成三元组的过程也是进行秘密分享模式下的隐私计算必备的初始化过程。根据实际计算场景,乘法三元组的形式也可以适当的调整,本方案中使用的乘法三元组略有不同,为在满足c=a
·
b的前提下,甲乙方分别掌握a,b,并掌握[c]的情形(即甲方掌握a,c1,乙方掌握b,c2,且c=c1+c2)。
[0096]
乘法秘密重分享(multiplicative re-sharing):有别于常见的加法秘密分享,乘法秘密分享是对于隐私数据a,双方各掌握掌握一个随机值u0,u1,满足a=u0·
u1,此时也可以记为(u0,u1)=《a》。当双方初始状态下各自掌握a的加法秘密分片[a],通过已有学术论文的算法,可在不借助第三方,且不打开隐私数据a的前提下,通过隐私算法使各方各自获取a的乘法分片《a》,该过程称为乘法秘密重分享。
[0097]
数据共享交互协作有助于更好发挥数据价值,赋能相关场景和机构,随着数据安全与隐私保护的要求不断提升,机构间进行数据共享协作过程中须避免数据外泄等安全隐患。在机构间进行样本共享的数据业务落地过程中,多采用隐私集合求交等技术实现双方共有样本的提取与筛选,并保护样本交集之外的数据不外泄,在联合营销、联邦学习、广告投放等场景中应用广泛。
[0098]
但是,相关技术中的隐私集合求交技术只能在样本集合这一单一维度进行交集筛选,无法将样本所包含的其他特征及其判断条件作为筛选依据。例如,以数据需求方pa与数据提供方pb之间的样本筛选场景为例,当数据需求方pa希望本方样本集合与对方样本集合中满足“年份>2021”这一约束条件的样本进行附带条件的隐私求交时,则只能将额外的筛选条件“>2021”发送给数据提供方pb。
[0099]
具体地,例如如下应用场景,数据需求方pa与数据提供方pb进行数据共享协同,数据需求方pa的样本集合为a={id1,id2,

,idm},数据提供方pb的样本与特征集合为其中为样本,xk为特征。此外,数据需求方pa提供额外的隐私判断筛选条件(例如xi>a),求交的目标为:数据需求方pa最终获取特征满足xi>a的全部交集样本,即:c=a∩
>a b={idk}k满足idk∈a∩b且xk>a,其中∩
>a
记为在大于策略下的样本隐私求交符号。利用利用隐私集合求交技术实现如上目的技术方案包括:数据需求方pa和数据提供方pb各自准备自身的初始样本集合a和b;数据需求方将筛选
条件(例如xi>a)发送给数据提供方,数据提供方收到筛选条件后在自身数据样本集合中进行初筛,提取满足xi>a的样本集合b

;双方关于集合a和b

执行隐私集合求交算法,由pa获取a∩b


[0100]
可见,上述方法将筛选条件直接发送给数据提供方,无法有效保护筛选条件的隐私,在银行、证券、互联网等行业中会涉及核心判断规则的外泄,无法完全符合相关机构的应用需求。
[0101]
因此,需要研究并实现能够支持多策略筛选条件(“大于>”和“小于<”)的隐私集合求交技术与算法,有效保护数据需求方的样本集合与筛选条件隐私,数据提供方无法识别关于筛选条件的任何有效信息,实现更高级别的隐私保护效果,实现更安全、更精准、更有效的样本求交与共享。
[0102]
针对以上技术问题,本公开提供一种数据处理方法,应用于数据需求方,该方法包括:通过不经意伪随机函数仂、议,接收由数据提供方生成的与样本标识集合对应的第一样本标识掩码集合;并根据预设的筛选阈值,利用秘密分享协议生成第一阈值分片和第二阈值分片;利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合;运行乘法秘密重分享协议,根据上述第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合;利用上述第一乘法秘密分片集合通过不经意传输协议从上述数据提供方发送的随机数集中确定第一筛选掩码集合;接收由上述数据提供方发送的双重掩码集合,其中,上述双重掩码集合由上述数据提供方根据第二筛选掩码集合和第二样本标识掩码集合确定,上述第二筛选掩码集合是根据第二乘法秘密分片集合按照不经意传输协议确定的,上述第二乘法秘密分片集合是利用上述参数数组处理后的第一秘密特征分片集合确定的;以及利用隐私集合求交协议,根据上述第一筛选掩码集合、上述双重掩码集合和上述第一样本标识掩码集合确定目标集合。
[0103]
在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
[0104]
在本公开的技术方案中,对数据的获取、收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
[0105]
图1示意性示出了根据本公开实施例的数据处理方法、装置、设备、介质和程序产品的应用场景图;
[0106]
如图1所示,根据该实施例的应用场景100可以包括数据需求端101、数据提供端102、网络103。网络103用以在数据需求端101、数据提供端102之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0107]
数据需求端101可以通过执行本公开实施例中的应用于数据需求端的数据处理方法,将第二阈值分片向数据提供端102发送。
[0108]
数据提供端102可以通过执行本公开实施例中的应用于数据提供端的数据处理方法,将通过加法秘密分享方式得到的第一样本特征分片集合向数据需求端101发送。
[0109]
数据需求端101利用第一阈值分片和由数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合;并运行乘法秘密重分享协议,根据第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合,之
后利用第一乘法秘密分片集合通过不经意传输协议从数据提供方发送的随机数集中确定第一筛选掩码集合。
[0110]
数据提供端102根据第二样本特征分片集合和由数据需求方发送的第二阈值分片确定第二特征秘密分片集合,并运行乘法秘密重分享协议,根据利用预先生成的参数数组处理后的第一秘密特征分片集合确定第二乘法秘密分片集合,之后根据第二乘法秘密分片集合从随机数集中确定第二筛选掩码集合,之后利用第二筛选掩码集合对第二样本标识掩码集合进行掩码处理,得到双重掩码集合,并向数据需求方发送所述双重掩码集合。
[0111]
数据需求端101利用数据提供方发送的双重掩码集合,利用隐私集合求交协议,根据第一筛选掩码集合、双重掩码集合和第一样本标识掩码集合确定目标集合。
[0112]
应该理解,图1中的数据需求端、数据提供端的数目仅仅是示意性的。根据实现需要,可以具有任意数目的数据需求端、数据提供端进行数据交互。
[0113]
以下将基于图1描述的场景,通过图2~图5对公开实施例的数据处理方法进行详细描述。
[0114]
图2示意性示出了根据本公开实施例的数据处理方法的流程图。
[0115]
如图2所示,该实施例的数据处理方法应用于数据需求方,该方法包括操作s210~操作s260。
[0116]
在操作s210,通过不经意伪随机函数协议,接收由数据提供方生成的与样本标识集合对应的第一样本标识掩码集合;并根据预设的筛选阈值,利用秘密分享协议生成第一阈值分片和第二阈值分片。
[0117]
根据本公开的实施例,数据需求方需要预先准备样本标识集合和筛选阈值。样本标识集合可以是数据需求方预先准备的包含样本id的样本标识集合。例如,样本标识集合可以为a={id1,id2,

,idm}。
[0118]
根据本公开的实施例,样本id可以包括能够与被识别对象一一绑定的识别码。例如,样本id可以包括业务标识、身份标识、通信标识等。具体地,样本id可以包括终端编号、身份证号、企业编号等等。
[0119]
根据本公开的实施例,在进行不经意伪随机函数协议之前,数据需求方和数据提供方需要预先约定随机函数。数据需求方通过不经意伪随机函数协议与数据提供方进行多次交互获得数据提供方计算的与样本标识集合a={id1,id2,

,idm}对应的第一样本标识掩码集合s={f(id1,s),

,f(idm,s)}={s1,

,sm},但数据需求方无法获取随机数s。
[0120]
根据本公开的实施例,第一阈值分片和第二阈值分片的加和与筛选阈值相等。
[0121]
在操作s220,利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合。
[0122]
根据本公开的实施例,第一样本特征分片集合是由数据提供方利用秘密分享协议对样本与特征集合中的样本特征处理后得到的,第一样本特征分片集合的具体生成方式在下述数据提供方执行端进行详细阐述。
[0123]
在操作s230,运行乘法秘密重分享协议,根据上述第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合。
[0124]
根据本公开的实施例,第二秘密特征分片集合是由数据提供方根据所述第二阈值分片和第二样本特征分片集合确定的。
[0125]
根据本公开的实施例,第二样本特征分片集合是由数据提供方利用秘密分享协议对样本与特征集合中的样本特征处理后得到的。
[0126]
根据本公开的实施例,针对根据第一乘法秘密分片集合中的第i个第一乘法秘密分片,根据第i个第一特征秘密分片和利用预先生成的参数数组处理后的第i个第二特征秘密分片确定第i个第一乘法秘密分片。
[0127]
具体地,第一特征秘密分片集合包括y
′k,第二特征秘密分片集合包括z
′k,第一乘法秘密分片集合包括uk,其中,k=1,

,n;根据第一特征秘密分片集合中的第k个元素y
′k、和利用参数数组处理后的第二特征秘密分片集合中的第k个元素z
′k,得到第一乘法秘密分片集合中的第k个元素uk。
[0128]
在操作s240,利用上述第一乘法秘密分片集合通过不经意传输协议从上述数据提供方发送的随机数集中确定第一筛选掩码集合。
[0129]
根据本公开的实施例,针对第一乘法秘密分片集合中的每个第一乘法秘密分片,通过不经意传输协议从数据提供方发送的随机数集中确定与该第一乘法秘密分片对应的第一筛选掩码,最终得到第一筛选掩码集合。
[0130]
具体地,第一乘法秘密分片集合包括uk,其中,k=1,

,n;对于第一乘法秘密分片集合uk中的第k个元素uk,通过不经意传输协议从上述数据提供方发送的随机数集中确定第k个第一筛选掩码。
[0131]
在操作s250,接收由上述数据提供方发送的双重掩码集合,其中,上述双重掩码集合由上述数据提供方根据第二筛选掩码集合和第二样本标识掩码集合确定,上述第二筛选掩码集合是根据第二乘法秘密分片集合按照不经意传输协议确定的,上述第二乘法秘密分片集合是利用上述参数数组处理后的第一秘密特征分片集合确定的。
[0132]
在操作s260,利用隐私集合求交协议,根据上述第一筛选掩码集合、上述双重掩码集合和上述第一样本标识掩码集合确定目标集合。
[0133]
需要说明的是,本公开实施例中获得的数据均记征得数据需求方和数据提供方的许可,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
[0134]
根据本公开提供的数据处理方法,通过使用不经意伪随机函数对样本标识集合进行标识掩码得到第一样本标识掩码集合;然后利用秘密分享协议对筛选阈值随机分片,得到第一阈值分片和第二阈值分片;之后利用第一阈值分片和由数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合;之后运行乘法秘密重分享协议,根据第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合,并利用第一乘法秘密分片集合通过不经意传输协议,从随机数集中确定第一筛选掩码集合,之后根据第一筛选掩码集合、来自数据提供方的双重掩码集合和样本标识掩码集合,利用隐私集合求交协议求交确定目标集合。由于是通过秘密分享协议对筛选阈值随机分片,将其中一个阈值分片发送给数据提供方,因此,数据提供方无法获知筛选阈值,从而保证了筛选条件不外泄,提高了数据传输过程中的隐私性。
[0135]
根据本公开的实施例,通过使用不经意传输、秘密分享、乘法秘密重分享和隐私集合求交相结合的密码学技术路线,通过对于样本特征与筛选阈值之间进行乘法秘密重分享,进而根据乘法秘密分片进行不经意传输通信,最后进行已嵌入不经意传输信息的隐私求交方案,实现了对于数据需求方pa而言,在满足数据需求方能够正确获取满足相应样本
特征筛选阈值的样本交集集合的情况下,无法反推交集结果之外的任何样本以及特征数据信息。对于数据提供方pb而言,数据提供方pb无法获取筛选阈值条件a,也无法自主获取交集结果(由于获取交集结果可能造成对筛选阈值的反推),从而实现在pb视角下无法获取任何有效信息的数据共享协同效果(pb不掌握交集集合,不掌握交集元素数量,不掌握隐私筛选条件),实现了最大隐私程度的精准求交效果。
[0136]
根据本公开的实施例,上述方法还包括:使用布谷鸟哈希过滤器等技术手段处理样本标识掩码集合,以提高检索和匹配性能。
[0137]
根据本公开的实施例,上述第一样本特征分片集合和上述第二样本特征分片集合由上述数据提供方利用秘密分享协议对样本与特征集合中的样本特征处理后得到的;上述第二秘密特征分片集合是由上述数据提供方根据上述第二阈值分片和第二样本特征分片集合确定的;上述第一乘法秘密分片集合和上述第二乘法秘密分片集合中对应元素的乘积与上述第一秘密特征分片集合和上述第二秘密特征分片集合中对应元素的加和满足预设条件。
[0138]
根据本公开的实施例,预设条件可以为第一乘法秘密分片集合uk和第二乘法秘密分片集合v
k’的乘积与第一秘密特征分片集合y
k’和第二秘密特征分片集合z
k’的加和正负性相同。
[0139]
根据本公开的实施例,上述第一样本特征分片集合包括n个第一样本特征分片,上述第一特征秘密分片集合包括n个第一特征秘密分片;上述利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合包括:针对上述第一样本特征分片集合中的第k个第一样本特征分片,利用上述第k个第一样本特征分片减去上述第一阈值分片,得到与上述第k个第一样本特征分片对应的第k个第一特征秘密分片,最终得到上述第一特征秘密分片集合,其中,n为正整数,1≤k≤n。
[0140]
根据本公开的实施例,对于大于策略的情况下,对于k=1,

,n,数据需求方需要计算y
′k=y
k-a1作为自己关于x
k-a的加法秘密分片,其中,y
′k为第一特征秘密分片集合,a1为第一阈值分片。
[0141]
根据本公开的实施例,上述第一样本特征分片集合包括n个第一样本特征分片,上述第一特征秘密分片集合包括n个第一特征秘密分片;上述利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合包括:针对上述第一样本特征分片集合中的第k个第一样本特征分片,利用上述第一阈值片减去上述第k个第一样本特征分片,得到与上述第k个第一样本特征分片对应的第k个第一特征秘密分片,最终得到上述第一特征秘密分片集合,其中,n为正整数,1≤k≤n。
[0142]
根据本公开的实施例,对于小于策略的情况下,对于k=1,

,n,数据需求方需要计算y
′k=a
1-yk作为自己关于a-xk的加法秘密分片,其中,y
′k为第一特征秘密分片集合,a1为第一阈值分片。
[0143]
根据本公开的实施例,上述第一秘密特征分片集合包括n个第一秘密特征分片,上述第二秘密特征分片集合包括n个第二秘密特征分片,上述第一乘法特征分片包括n个第一乘法特征分片;上述根据上述第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合包括:针对上述第一乘法秘密分片中的第k个第一乘法秘密分片,利用上述参数数组和上述第k个第一秘密特征分片确定第k个第
一中间值,以便于数据提供方根据上述第k个第一中间值、第k个第二秘密特征分片和上述参数数组确定第k个第二中间值;根据上述参数数组和上述第k个第二中间值确定上述第k个第一乘法秘密分片,其中,n为正整数,l≤k≤n。
[0144]
根据本公开的实施例,上述参数数据组包括第一参数、第二参数fk和第三参数,第三参数包括第一子参数和第二子参数,其中,上述第一参数和上述第二参数的乘积与上述第三参数相等;上述第一子参数和上述第二子参数的加和与上述第三参数相等;上述利用上述参数数组和上述第k个第一秘密特征分片确定第k个第一中间值,以便于数据提供方根据上述第k个第一中间值、第k个第二秘密特征分片和上述参数数组确定第k个第二中间值包括:利用第k个第一秘密特征分片、上述第一参数和上述第一子参数确定上述第k个第一中间值;向上述数据提供方发送上述第k个第一中间值,以便于上述数据提供方根据上述第k个第一中间值、上述第二参数、第k个第二秘密特征分片和上述第二子参数确定上述第k个第二中间值;上述根据上述参数数组和上述第k个第二中间值确定上述第k个第一乘法秘密分片包括:接收上述第k个第二中间值,并根据上述第一参数和上述第k个第二中间值确定上述第k个第一乘法秘密分片。
[0145]
根据本公开的实施例,数据需求方和数据提供方采用乘法秘密重分享算法,计算x
k-a的乘法秘密分片,即计算(uk,vk)=《x
k-a》满足uk·
vk=x
k-a,k=1,

,n。此处重点介绍数据需求方的执行过程,具体如下,对于k=1,

,n,预先生成n组参数数组可以包括(ek,fk,[gk]),满足gk=ek·fk
(其中数据需求方掌握ek,g
′k,数据提供方掌握fk,g
″k,且满足(g
′k,g
″k)=[gk],即g
′k+g
″k=gk);数据需求方计算pk=(y

k-g
′k)/ek并将pk发送给数据提供方,以便于数据提供方计算vk=fk+pk,qk=(z

k-g
″k)/vk;之后,数据需求方计算uk=ek+qk,得到第一乘法秘密分片集合uk。
[0146]
根据本公开的实施例,上述第一筛选掩码集合包括n个第一筛选掩码,上述第一乘法秘密分片集合包括n个第一乘法秘密分片;上述随机数集包括n组随机数,每一组随机数中包括至少两个不相等的随机数;上述利用上述第一乘法秘密分片集合通过不经意传输协议从上述数据提供方发送的随机数集中确定第一筛选掩码集合包括:针对上述第一筛选掩码集合中的第k个第一筛选掩码,根据第k个第一乘法秘密分片,利用符号函数确定与上述第k个第一乘法秘密分片对应的第k个输出值;执行上述不经意传输协议,从上述数据提供方获取第k组随机数;根据上述第k个输出值从上述第k组随机数中确定上述第k个第一筛选掩码,其中,n为正整数,l≤k≤n。
[0147]
根据本公开的实施例,对于k=1,

,n,数据需求方计算u
′k=sig(uk),其中,sig为符号函数,如果x>0则sig(x)=1,如果x<0则sig(x)=-1,如果x=0则sig(x)=0。
[0148]
对于k=1,

,n,数据提供方随机生成n组随机数(αk,βk),并且要求αk≠βk,执行不经意传输协议,在不经意传输协议中,数据需求方作为数据接收者,如果u
′k=1,则数据需求方选取αk作为接收目标数据;如果u
′k=-1,则数据需求方选取βk作为接收目标数据;如果u
′k=0,则数据需求方随机选取αk或βk(各1/2概率)作为接收目标数据,随后执行n次不经意传输协议,数据需求方获取自己的接收数据集合为(θ1,

,θn),满足u
′k=1时,θk=αk;u
′k=-1时,θk=βk;u
′k=0时,θk=α
k or βk各1/2概率;(θ1,

,θn)为第一筛选掩码集合。
[0149]
根据本公开的实施例,为了提高性能,可以使用扩展不经意传输技术,实现执行n次不经意传输协议的性能加速。
[0150]
图3示意性示出了根据本公开实施例的确定第一筛选掩码集合的流程图。
[0151]
如图3所示,该实施例以第k组随机数为(αk,βk),并且要求αk≠βk为例,且符号输出值为1时,数据需求方接收αk;符号输出值为-1时,数据需求方接收βk。该实施例的数据处理方法包括操作s301~s305。
[0152]
在操作s301,针对第一筛选掩码集合中的第k个第一筛选掩码,根据第k个第一乘法秘密分片,利用符号函数确定与上述第k个第一乘法秘密分片对应的第k个输出值。
[0153]
在操作s302,执行不经意传输协议,从数据提供方获取第k组随机数。
[0154]
在操作s303,判断第k个输出值是否为1。在确定第k个输出值等于1的情况下,执行操作s304;在确定第k个输出值为-1的情况下,执行操作s305。
[0155]
在操作s304,确定随机数αk为第k个第一筛选掩码。
[0156]
在操作s305,确定随机数βk为第k个第一筛选掩码。
[0157]
根据本公开的实施例,上述利用隐私集合求交协议,根据上述第一筛选掩码集合、上述双重掩码集合和上述第一样本标识掩码集合确定目标集合包括:根据上述第一筛选掩码集合和上述双重掩码集合确定待匹配样本标识集合;利用上述隐私集合求交协议确定上述待匹配样本标识集合和上述第一样本标识掩码集合的交集,得到上述目标集合。
[0158]
根据本公开的实施例,上述目标集合包括样本标识掩码;上述方法还包括:针对上述目标集合中的每个样本标识掩码,根据上述样本标识掩码与上述第一样本标识集合中样本标识之间的对应关系,还原上述目标集合中的上述样本标识掩码,得到原始集合。
[0159]
在其中一个实施例中,双重掩码集合可以为在其中一个实施例中,双重掩码集合可以为第一筛选掩码集合可以为(θ1,

,θn),根据第一筛选掩码集合和双重掩码集合确定的待匹配样本标识集合可以为t2={t

1-θ1,

,t

n-θn}={t
″1,

,t
″n};然后利用隐私求交协议,计算集合t2={t

1-θ1,

,t

n-θn}={t
″1,

,t
″n}和集合s={f(id1,s),

,f(idm,s)}={s1,

,sm}的交集,得到目标集合i,即i=s∩t2={i1,

,i
l
},假定交集i的元素数量为l;通过交集i中元素与s集合的对应关系,还原出原始集合交集集合交集
[0160]
根据本公开的实施例,在大于筛选策略的情况下,数据需求方通过运行本公开实施例提供的数据处理方法能够得到符合大于筛选判断条件的交集结果,无法获取数据提供方任何其他样本信息与特征信息,也无法判断不在最终交集中的样本是由于不在交集中还是不满足筛选条件。
[0161]
根据本公开的实施例,运用加法秘密分享、乘法秘密分享、不经意传输、扩展不经意传输、不经意伪随机函数、隐私求交、乘法三元组等密码学技术,构造出了高性能、高安全性的大于&小于策略隐私集合求交方案,不但具备很强的场景落地潜力,也同样具备较高的理论价值。
[0162]
根据本公开的实施例,本公开实施例的数据处理方法支持(>,<,≥,≤)筛选策略,符合实际场景中对特征筛选的常用逻辑,能在传统隐私集合求交的基础上进一步提升求交准确性和精准度,提高可配置性和灵活性。
[0163]
根据本公开的实施例,本公开实施例的数据处理方法具备前向安全性、样本隐私
性、筛选条件隐私性,能够最大程度确保求交过程中的数据安全与隐私保护。
[0164]
基于上述数据处理方法,本公开还提供了一种数据处理装置。以下将结合图4对该装置进行详细描述。
[0165]
图4示意性示出了根据本公开实施例的数据处理装置的结构框图。
[0166]
如图4所示,该实施例的数据处理装置400包括第一接收模块410、第一确定模块420、第二确定模块430、第三确定模块440、第二接收模块450和求交模块460。
[0167]
第一接收模块410用于通过不经意伪随机函数协议,接收由数据提供方生成的与样本标识集合对应的第一样本标识掩码集合;并根据预设的筛选阈值,利用秘密分享协议生成第一阈值分片和第二阈值分片。在一实施例中,第一接收模块410可以用于执行前文描述的操作s210,在此不再赘述。
[0168]
第一确定模块420用于利用上述第一阈值分片和由上述数据提供方发送的第一样本特征分片集合确定第一特征秘密分片集合。在一实施例中,第一确定模块420可以用于执行前文描述的操作s220,在此不再赘述。
[0169]
第二确定模块430用于运行乘法秘密重分享协议,根据上述第一特征秘密分片集合和利用预先生成的参数数组处理后的第二特征秘密分片集合确定第一乘法秘密分片集合。在一实施例中,第二确定模块430可以用于执行前文描述的操作s230,在此不再赘述。
[0170]
第三确定模块440用于利用上述第一乘法秘密分片集合通过不经意传输协议从上述数据提供方发送的随机数集中确定第一筛选掩码集合。在一实施例中,第三确定模块440可以用于执行前文描述的操作s240,在此不再赘述。
[0171]
第二接收模块450用于接收由上述数据提供方发送的双重掩码集合,其中,上述双重掩码集合由上述数据提供方根据第二筛选掩码集合和第二样本标识掩码集合确定,上述第二筛选掩码集合是根据第二乘法秘密分片集合按照不经意传输协议确定的,上述第二乘法秘密分片集合是利用上述参数数组处理后的第一秘密特征分片集合确定的。在一实施例中,第二接收模块450可以用于执行前文描述的操作s250,在此不再赘述。
[0172]
求交模块460用于利用隐私集合求交协议,根据上述第一筛选掩码集合、上述双重掩码集合和上述第一样本标识掩码集合确定目标集合。在一实施例中,求交模块460可以用于执行前文描述的操作s260,在此不再赘述。
[0173]
根据本公开的实施例,上述第一样本特征分片集合和上述第二样本特征分片集合由上述数据提供方利用秘密分享协议对样本与特征集合中的样本特征处理后得到的;上述第二秘密特征分片集合是由上述数据提供方根据上述第二阈值分片和第二样本特征分片集合确定的;上述第一乘法秘密分片集合和上述第二乘法秘密分片集合中对应元素的乘积与上述第一秘密特征分片集合和上述第二秘密特征分片集合中对应元素的加和满足预设条件。
[0174]
根据本公开的实施例,上述第一样本特征分片集合包括n个第一样本特征分片,上述第一特征秘密分片集合包括n个第一特征秘密分片。
[0175]
根据本公开的实施例,上述第一确定模块包括:第一得到子模块。
[0176]
第一得到子模块,用于针对上述第一样本特征分片集合中的第k个第一样本特征分片,利用上述第k个第一样本特征分片减去上述第一阈值片,得到与上述第k个第一样本特征分片对应的第k个第一特征秘密分片,最终得到上述第一特征秘密分片集合,其中,n为
正整数,1≤k≤n。
[0177]
根据本公开的实施例,上述第一样本特征分片集合包括n个第一样本特征分片,上述第一特征秘密分片集合包括n个第一特征秘密分片。
[0178]
根据本公开的实施例,上述第一确定模块还包括:第二得到子模块。
[0179]
第二得到子模块,用于针对上述第一样本特征分片集合中的第k个第一样本特征分片,利用上述第一阈值片减去上述第k个第一样本特征分片,得到与上述第k个第一样本特征分片对应的第k个第一特征秘密分片,最终得到上述第一特征秘密分片集合,其中,n为正整数,1≤k≤n。
[0180]
根据本公开的实施例,上述第一秘密特征分片集合包括n个第一秘密特征分片,上述第二秘密特征分片集合包括n个第二秘密特征分片,上述第一乘法特征分片包括n个第一乘法特征分片。
[0181]
根据本公开的实施例,上述第二确定模块包括:第一确定子模块和第二确定子模块。
[0182]
第一确定子模块,用于针对上述第一乘法秘密分片中的第k个第一乘法秘密分片,利用上述参数数组和上述第k个第一秘密特征分片确定第k个第一中间值,以便于数据提供方根据上述第k个第一中间值、第k个第二秘密特征分片和上述参数数组确定第k个第二中间值。
[0183]
第二确定子模块,用于根据上述参数数组和上述第k个第二中间值确定上述第k个第一乘法秘密分片,其中,n为正整数,1≤k≤n。
[0184]
根据本公开的实施例,上述参数数据组包括第一参数、第二参数fk和第三参数,第三参数包括第一子参数和第二子参数,其中,上述第一参数和上述第二参数的乘积与上述第三参数相等;上述第一子参数和上述第二子参数的加和与上述第三参数相等。
[0185]
根据本公开的实施例,上述第一确定子模块包括:第一确定单元、第二确定单元。
[0186]
第一确定单元,用于利用第k个第一秘密特征分片、上述第一参数和上述第一子参数确定上述第k个第一中间值。
[0187]
第二确定单元,用于向上述数据提供方发送上述第k个第一中间值,以便于上述数据提供方根据上述第k个第一中间值、上述第二参数、第k个第二秘密特征分片和上述第二子参数确定上述第k个第二中间值。
[0188]
根据本公开的实施例,上述第二确定子模块包括:第三确定单元。
[0189]
第三确定单元,用于接收上述第k个第二中间值,并根据上述第一参数和上述第k个第二中间值确定上述第k个第一乘法秘密分片。
[0190]
根据本公开的实施例,上述第一筛选掩码集合包括n个第一筛选掩码,上述第一乘法秘密分片集合包括n个第一乘法秘密分片;上述随机数集包括n组随机数,每一组随机数中包括至少两个不相等的随机数。
[0191]
根据本公开的实施例,上述第三确定模块包括:第三确定子模块、第一获取子模块和第四确定子模块。
[0192]
第三确定子模块,用于针对上述第一筛选掩码集合中的第k个第一筛选掩码,根据第k个第一乘法秘密分片,利用符号函数确定与上述第k个第一乘法秘密分片对应的第k个输出值。
[0193]
第一获取子模块,用于执行上述不经意传输协议,从上述数据提供方获取第k组随机数。
[0194]
第四确定子模块,用于根据上述第k个输出值从上述第k组随机数中确定上述第k个第一筛选掩码,其中,n为正整数,1≤k≤n。
[0195]
根据本公开的实施例,上述求交模块包括:第五确定子模块和求交子模块。
[0196]
第五确定子模块,用于根据上述第一筛选掩码集合和上述双重掩码集合确定待匹配样本标识集合。
[0197]
求交子模,用于利用上述隐私集合求交协议确定上述待匹配样本标识集合和上述第一样本标识掩码集合的交集,得到上述目标集合。
[0198]
根据本公开的实施例,上述目标集合包括样本标识掩码。
[0199]
根据本公开的实施例,上述数据处理装置还包括:还原模块。
[0200]
还原模块,用于针对上述目标集合中的每个样本标识掩码,根据上述样本标识掩码与上述第一样本标识集合中样本标识之间的对应关系,还原上述目标集合中的上述样本标识掩码,得到原始集合。
[0201]
根据本公开的实施例,第一接收模块410、第一确定模块420、第二确定模块430、第三确定模块440、第二接收模块450和求交模块460中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,第一接收模块410、第一确定模块420、第二确定模块430、第三确定模块440、第二接收模块450和求交模块460中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、片上系统、基板上的系统、封装上的系统、专用集成电路(asic),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一接收模块410、第一确定模块320、第二确定模块430、第三确定模块440、第二接收模块450和求交模块460中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
[0202]
图5示意性示出了根据本公开另一实施例的数据处理方法的流程图。
[0203]
如图5所示,该实施例的数据处理方法包括操作s510~操作s560。
[0204]
在操作s510,调用不经意伪随机函数算法协议,利用随机生成的随机数确定与样本与特征集合对应的第二样本标识掩码集合。
[0205]
根据本公开的实施例,数据提供方需要预先准备样本与特征集合。样本与特征集合可以包含样本标识和样本特征的集合,样本与特征集合例如可以为其中为样本,xk为该样本对应的特征。样本特征xk例如可以是账户余额、信用分数、年龄、学历、民族等用户特征信息。
[0206]
在本公开的技术方案中,对数据的获取、收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
[0207]
根据本公开的实施例,在进行不经意伪随机函数协议之前,数据需求方和数据提供方需要预先约定随机函数。数据提供方通过调用不经意伪随机函数生成随机数s,利用随
机数和随机函数计算与样本与特征集合对应的第二样本标识掩码集合
[0208]
在操作s520,根据上述样本与特征集合中的样本特征,利用秘密分享协议生成第一样本特征分片集合和第二样本特征分片集合,并向上述数据需求方发送上述第一样本特征分片集合,以便于上述数据需求方根据上述第一样本特征分片集合确定第一特征秘密分片集合。
[0209]
根据本公开的实施例,数据提供方根据样本与特征集合:随机生成样本特征x1,

,xn的加法秘密分片[x1],

,[xn],其中[xk]=(yk,zk),满足xk=yk+zk,k=1,

,n,随后数据提供方将y1,

,yn发送给数据需求方。其中,y1,

,yn为第一样本特征分片集合yk,z1,

,zn为第二样本特征分片集合zk。
[0210]
根据本公开的实施例,数据需求方接收到第一样本特征分片集合yk之后,根据第一阈值分片确定第一特征秘密分片集合y
′k,具体方法已在数据需求方执行部分进行阐述,此处不再展开论述。
[0211]
在操作s530,根据上述第二样本特征分片集合和由上述数据需求方发送的第二阈值分片确定第二特征秘密分片集合,其中,上述第二阈值分片是根据预设的筛选阈值利用秘密分享协议生成的。
[0212]
根据本公开的实施例,数据提供方接收数据需求方发送的第二阈值分片,利用第二阈值分片确定第二特征秘密分片集合。
[0213]
根据本公开的实施例,对于大于策略的情况下,对于k=1,

,n,数据提供方需要计算z
′k=z
k-a2作为自己关于x
k-a的加法秘密分片,其中,z
′k为第二特征秘密分片集合,a2为第二阈值分片。
[0214]
根据本公开的实施例,对于小于策略的情况下,对于k=1,

,n,数据提供方需要计算z
′k=a
2-zk作为自己关于a-xk的加法秘密分片,其中,z
′k为第二特征秘密分片集合,a2为第二阈值分片。
[0215]
需要说明的是,对于第二阈值分片的确定方法,是由数据需求方执行的,已在数据需求方执行部分进行阐述,此处不再展开论述。
[0216]
在操作s540,运行乘法秘密重分享协议,根据利用预先生成的参数数组处理后的第一秘密特征分片集合确定第二乘法秘密分片集合。
[0217]
根据本公开的实施例,数据需求方和数据提供方采用乘法秘密重分享算法,计算x
k-a的乘法秘密分片,即计算(uk,vk)=《x
k-a》满足uk·
vk=x
k-a,k=1,

,n。此处重点介绍数据提供方的执行过程,具体如下,对于k=1,

,n,预先生成n组参数数组可以包括(ek,fk,[gk]),满足gk=ek·fk
(其中数据需求方掌握ek,g
′k,数据提供方掌握fk,g
″k,且满足(g
′k,g
″k)=[gk],即g
′k+g
″k=gk);数据提供方接收数据需求方计算得到的pk=(y

k-g
′k)/ek,利用pk计算vk=fk+pk,得到第二乘法秘密分片集合vk。
[0218]
根据本公开的实施例,数据提供方和数据需求方乘法秘密重分享的分片结果为(uk,vk)=《x
k-a》,满足uk·
vk=x
k-a。
[0219]
在操作s550,根据上述第二乘法秘密分片集合从上述随机数集中确定第二筛选掩码集合。
[0220]
根据本公开的实施例,第二筛选掩码集合包括n个第二筛选掩码,上述第二乘法秘密分片集合包括n个第二乘法秘密分片;上述随机数集包括n组随机数,每一组随机数中包括至少两个不相等的随机数;针对上述第二筛选掩码集合中的第k个第二筛选掩码,根据第k个第二乘法秘密分片,利用符号函数确定与上述第k个第二乘法秘密分片对应的第k个输出值;根据上述第k个输出值从上述第k组随机数中确定上述第k个第二筛选掩码,其中,n为正整数,1≤k≤n。
[0221]
根据本公开的实施例,对于k=1,

,n,数据提供方计算v
′k=sig(vk),其中,sig为符号函数,如果x>0则sig(x)=1,如果x<0则sig(x)=-1,如果x=0则sig(x)=0;
[0222]
对于k=1,

,n,数据提供方随机生成n组随机数(αk,βk),并且要求αk≠βk,根据预设条件从随机数集中确定第二筛选掩码集合(γ1,

,γn)。预设条件如下:如果v
′k=1则数据提供方选取αk作为接收目标数据,即γk=αk;如果v
′k=-1,则数据提供方选取βk作为接收目标数据,即γk=βk;由于根据算法机制,vk=0的概率可忽略,因此这里不考虑vk=0的情形可忽略。
[0223]
在操作s560,利用上述第二筛选掩码集合对上述第二样本标识掩码集合进行掩码处理,得到双重掩码集合,并向上述数据需求方发送上述双重掩码集合,以便于上述数据需求方利用隐私集合求交协议,根据第一筛选掩码集合、上述双重掩码集合和第一样本标识掩码集合确定目标集合,其中,上述第一筛选掩码集合θn是根据第一乘法秘密分片集合按照不经意传输协议确定的,上述第一乘法秘密分片集合是根据上述第一特征秘密分片集合和利用上述参数数组处理后的第二特征秘密分片集合确定的。
[0224]
根据本公开的实施例,数据提供方将第二筛选掩码集合(γ1,

,γn)作为自身的筛选条件标识;根据第二样本标识掩码将第二筛选掩码集合(γ1,

,γn)进行嵌入,计算)进行嵌入,计算得到双重掩码集合t1;之后将双重掩码集合t1发送给数据需求方。
[0225]
根据本公开的实施例,通过对样本与特征集合进行双重掩码,能够有效提高数据传输的安全性。
[0226]
根据本公开的实施例,由于数据提供方处理的数据均为随机值,无法获取任何关于交集、筛选策略判断结果、交集元素数量等有效信息,降低了数据泄露风险。
[0227]
根据本公开的实施例,使用不经意传输协议、扩展不经意传输协议、秘密分享、乘法秘密重分享和隐私集合求交相结合的技术路线,在保持现有基于扩展不经意传输的隐私求交算法性能的前提下,实现了能够保护隐私筛选条件不外泄的大于&小于策略隐私集合求交技术方案,具备较高的创新性和实用性,具备多特征多策略灵活扩展的特性,在相关高敏感场景下的样本求交与筛选场景中具备较高的应用潜力。
[0228]
在其中一个实施例中,数据需求方pa与数据提供方pb进行数据共享协同,数据需求方pa的样本集合为a={id1,id2,

,idm},数据提供方pb的样本与特征集合为
其中为样本,xk为特征。双方的计算任务为获取a,b集合中满足“大于>”筛选条件的交集,c=a∩
>a b={idk}k满足idk∈a∩b且xk>a。通过采用本公开实施例提供的方法,在安全性方面,对于数据需求方而言,对于全部(不在最终结果输出集合中的样本),无法区分其是因为不在样本交集中还是因为其不满足判断条件xi≤a;对于数据提供方而言,不掌握任何交集信息和筛选条件,真正实现仅提供数据,不获取任何信息的数据供给模式。此外,方案还需满足前向安全性,即本次求交任务中所通信的信息和数据,不会对未来造成任何信息泄露。
[0229]
根据本公开的实施例,上述方法还包括:利用预设值更新上述第二阈值分片,得到更新后的第二阈值分片;
[0230]
其中,上述根据上述第二样本特征分片集合和由上述数据需求方发送的第二阈值分片确定第二特征秘密分片集合包括:
[0231]
根据上述第二样本特征分片集合和上述更新后的第二阈值分片确定上述第二特征秘密分片集合。
[0232]
根据本公开的实施例,预设值可以根据系统支持编码格式和具体数值确定得到。
[0233]
根据本公开的实施例,由于本方公开实施例的数据为64bit或128bit字长的浮点数,因此可以在秘密分享环节对数据进行一定的调整,在不影响结果的前提下避免xk=a的发生。以大于策略(x>3)为例,数据提供方可以在接收到数据需求方发送来的第二阈值分片a2之后,计算新的第二阈值分片a
′2=a9+∈,∈为系统支持编码的小数,例如∈=0.0000x,并使用a
′2代替a2代替后续的计算,则筛选策略变为(x>3+∈),根据实际场景中样本的稀疏性和特征的取值范围,可以确保微调后的策略不发生xk=a+∈,因此不会产生u
′k=0导致数据提供方信息泄露风险。
[0234]
根据本公开的实施例,上述利用预设值更新上述第二阈值分片,得到更新后的第二阈值分片包括:
[0235]
在筛选条件为大于等于筛选策略的情况下,利用上述预设值与上述第二阈值分片相加,得到上述更新的第二阈值分片;或者
[0236]
在筛选条件为小于等于筛选策略的情况下,利用上述第二阈值分片减去上述预设值,得到上述更新的第二阈值分片。
[0237]
根据本公开的实施例,对于大于等于(≥)策略,只需在大于策略的基础上,使用新的微调机制,即数据提供方计算新的a
′2=a
2-∈,∈为系统支持编码的小数,例如∈=0.0000x,并使用a
′2代替a2进行后续的计算。
[0238]
根据本公开的实施例,对于小于等于(≤)策略,只需要在小于策略基础上,数据提供方计算新的a
′2=a2+∈,∈为系统支持编码的小数,例如∈=0.0000x,并使用a
′2代替a2进行后续的计算。
[0239]
根据本公开的实施例,对本公开提供的方法进行了正确性验证,下面以筛选条件为xk>a为例进行解释说明。
[0240]
由于数据需求方和数据提供方根据乘法秘密重分享技术分别获取了uk,vk作为x
k-a的乘法分片,满足x
k-a=uk·
vk,因此双方通过使用表示uk,vk正负性的符号函数sig,即可将xk>a的条件转化为(u
′k=1,v
′k=1)或(u
′k=-1,v
′k=-1)。可知在满足xk>a条件的情形
下,γk=θk;而在不满足条件xk>a的情形下,γk≠θk,特别的,当u
′k=0时,由于此时数据需求方已经知道xk=a,并按照方案将会在最后交集提取中剔除该样本,因此暂不考虑u
′k=0时的影响,通过后面的方案微调中,可使用其他方法避免u
′k=0的发生。
[0241][0242]
s={f(id1,s),

,f(idm,s)}.
[0243]
因此,可知当xk>a时,γk=θk,此时,此时可知当时,于是通过s与t2的交集就可以得出数据需求方和数据提供方是否存在交集且满足大于筛选条件a的结论。
[0244]
当xk<a时,γk≠θk,此时因此即使无法在求交环节中被作为交集输出。
[0245]
当xk=a时,其为满足u
′k=0的样本,无论其对应的元素是否为交集,都将其排除出交集结果中。
[0246]
因此本公开实施例提供的数据处理方法的正确性成立,利用本公开实施例提供的方法具备前向安全性、样本隐私性、筛选条件隐私性,能够最大程度确保求交过程中的数据安全与隐私保护。
[0247]
基于上述数据处理方法,本公开还提供了一种数据处理装置。以下将结合图6对该装置进行详细描述。
[0248]
图6示意性示出了根据本公开另一实施例的数据处理装置的结构框图。
[0249]
如图6所示,该实施例的数据处理装置600包括第四确定模块610、生成模块620、第五确定模块630、第六确定模块640、第七确定模块650和掩码处理模块660。
[0250]
第四确定模块610用于调用不经意伪随机函数算法协议,利用随机生成的随机数确定与样本与特征集合对应的第二样本标识掩码集合。在一实施例中,第四确定模块610可以用于执行前文描述的操作s510,在此不再赘述。
[0251]
生成模块620用于根据上述样本与特征集合中的样本特征,利用秘密分享协议生成第一样本特征分片集合和第二样本特征分片集合,并向上述数据需求方发送上述第一样本特征分片集合,以便于上述数据需求方根据上述第一样本特征分片集合确定第一特征秘密分片集合。在一实施例中,生成模块620可以用于执行前文描述的操作s520,在此不再赘述。
[0252]
第五确定模块630用于根据上述第二样本特征分片集合和由上述数据需求方发送的第二阈值分片确定第二特征秘密分片集合,其中,上述第二阈值分片是根据预设的筛选阈值利用秘密分享协议生成的。在一实施例中,第五确定模块630可以用于执行前文描述的操作s530,在此不再赘述。
[0253]
第六确定模块640用于运行乘法秘密重分享协议,根据利用预先生成的参数数组处理后的第一秘密特征分片集合确定第二乘法秘密分片集合。在一实施例中,第六确定模块640可以用于执行前文描述的操作s540,在此不再赘述。
[0254]
第七确定模块650用于根据上述第二乘法秘密分片集合从上述随机数集中确定第
702以及ram 703通过总线704彼此相连。处理器701通过执行rom 702和/或ram 703中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除rom 702和ram 703以外的一个或多个存储器中。处理器701也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
[0266]
根据本公开的实施例,电子设备700还可以包括输入/输出(i/o)接口705,输入/输出(i/o)接口705也连接至总线704。电子设备700还可以包括连接至i/o接口705的以下部件中的一项或多项:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
[0267]
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
[0268]
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的rom 702和/或ram 703和/或rom 702和ram 703以外的一个或多个存储器。
[0269]
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的名称方法。
[0270]
在该计算机程序被处理器701执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
[0271]
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分709被下载和安装,和/或从可拆卸介质711被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0272]
在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被处理器701执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
[0273]
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执
行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如java,c++,python,“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0274]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0275]
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和h或结合均落入本公开的范围。
[0276]
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1