本发明涉及信息安全领域,特别是涉及一种基于秘密分享的数据处理方法、设备、程序产品及介质。
背景技术:
1、在很多领域中,会基于多个数据方在同一时间区间内的数据进行数据共用(例如在智能交通领域可以对气象、公安以及路方在同一时间区间内的未来数据进行数据共用,以对道路通行效率进行预测),然而如果各个数据方的数据是阶段性的(例如气象预测未来半小时的天气为小雨,之后转为大雨),并且各个数据方的数据并未在时间轴上对齐,那么就不具备统一的时间区间从而难以进行数据共用,因此在进行数据共用前就需要对各个数据方的数据进行时间轴上的对齐,以便针对各个数据方在统一的时间区间内的数据进行数据共用,然而相关技术中缺少一种成熟的数据处理方法,导致难以高效地实现多个数据方的数据在时间轴上的对齐。
2、因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
技术实现思路
1、本发明的目的是提供一种基于秘密分享的数据处理方法、设备、程序产品及存储介质,数据方可针对预设时间段内的各理论变点,根据理论变点是否为自身实际变点的情况,为理论变点生成对应不同全局特征值的秘密分享份额,然后将秘密分享份额分配至各数据方,使得各数据方可根据接收到的秘密分享份额确定出各理论变点的全局特征值,进而得到由各个数据方的实际变点构成的全局变点序列,不但高效地实现了多方的秘密数据在时间轴上的对齐,而且保护了数据方的实际变点不被泄露。
2、为解决上述技术问题,本发明提供了一种基于秘密分享的数据处理方法,应用于基于多方数据的数据共用场景中的任一数据方,包括:
3、确定出由自身在预设时间段内的各个实际变点构成的第一变点集合,其中,所述预设时间段为以预设时间精度进行时间编码后的预设时间段,实际变点指自身的秘密数据在所述预设时间段内发生变化的时间点;
4、确定出由所述预设时间段内的各个理论变点构成的第二变点集合,其中,理论变点指所述预设时间段内的任一时间点;
5、对于第二变点集合中的任一个理论变点,若所述理论变点属于所述第一变点集合,通过秘密分享技术为所述理论变点生成满足第一条件的多个秘密分享份额,若所述理论变点不属于所述第一变点集合,通过秘密分享技术为所述理论变点生成满足第二条件的多个秘密分享份额,其中,第一条件指各个所述秘密分享份额经过所述秘密分享技术的指定运算类型的运算结果为满足第一特征的数值,第二条件指各个所述秘密分享份额经过所述指定运算类型的运算结果为满足第二特征的数值;
6、对于第二变点集合中的任一个理论变点,将所述理论变点的各个秘密分享份额,分配至所述数据共用场景中的各个数据方;
7、根据各个数据方发送的秘密分享份额确定出各个所述理论变点的全局特征值,并根据各个所述理论变点的全局特征值确定出由各个数据方的实际变点构成的全局变点序列,以便针对所述全局变点序列所确定的各个时间区间进行数据共用,其中,全局特征值满足第一特征或第二特征,用于表征所属的理论变点是否为实际变点。
8、另一方面,所述秘密分享技术包括加法秘密分享;
9、所述指定运算类型为加法运算,所述第一特征为具备指定符号且数值非零,所述第二特征为数值为零,所述指定符号为正数符号或负数符号中的一者。
10、另一方面,对于第二变点集合中的任一个理论变点,若所述理论变点属于所述第一变点集合,通过秘密分享技术为所述理论变点生成满足第一条件的多个秘密分享份额,若所述理论变点不属于所述第一变点集合,通过秘密分享技术为所述理论变点生成满足第二条件的多个秘密分享份额包括:
11、对于第二变点集合中的任一个理论变点,若所述理论变点属于所述第一变点集合,从预设数值集合中随机选取满足第一条件的m个数值,作为所述理论变点的秘密分享份额,其中,m为大于1的整数;
12、对于第二变点集合中的任一个理论变点,若所述理论变点不属于所述第一变点集合,从预设数值集合中随机选取满足第二条件的m个数值,作为所述理论变点的秘密分享份额;
13、所述预设数值集合包括{-1,0,1}。
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、其中, x i为数据方 p i的秘密数据, i为数据方的序号, n为数据方总数, i∈{1,2,..., n-1, n};γ为预设数乘因子, e i为与秘密数据对应的预设非负整数。
44、另一方面,在执行运算类型为乘法运算的运算步骤时,基于第一秘密分享份额以及第二秘密分享份额,在其他各数据方的协作下,得到两个作为乘数的秘密数据的乘积的秘密分享份额包括:
45、在执行运算类型为乘法运算的运算步骤时,通过将第一秘密分享份额与第二秘密分享份额进行减法运算,得到中间参数的秘密分享份额,并将所述中间参数的秘密分享份额广播至其他各数据方;
46、根据各数据方的所述中间参数的秘密分享份额,确定出所述中间参数;
47、若自身存在与所述运算步骤对应的乘法门的预设标记,基于所述第一秘密分享份额、所述第二秘密分享份额以及所述中间参数,通过第一预设关系式得到两个作为乘数的秘密数据的乘积的秘密分享份额,其中,所述预设标记表示所在的数据方需为所述预设标记对应的乘法门,执行第一预设关系式的计算;
48、若自身不存在与所述运算步骤对应的乘法门的预设标记,基于所述第一秘密分享份额、所述第二秘密分享份额以及所述中间参数,通过第二预设关系式得到两个作为乘数的秘密数据的乘积的秘密分享份额。
49、另一方面,乘法三元组包括:
50、([ a],[ b],[ c]);
51、所述第一预设关系式包括:
52、 c king +δ·β king +σ·α king -δ·σ;
53、所述第二预设关系式包括:
54、 c i +δ·β i +σ·α i;
55、其中, a为第一因子, b为第二因子, c为 a与 b的乘积,[ a]表示 a的秘密分享,[ b]表示 b的秘密分享,[ c]表示 c的秘密分享, i为数据方的序号,king为存在预设标记的数据方的序号, i∈{1,..., n},king∈{1,..., n}, n为数据方的总数, c i指序号为 i的数据方持有的乘法门的 c的第 i个秘密分享份额,cking指序号为king的数据方持有的对应的乘法门的 c的第king个秘密分享份额, δ与 σ均为中间参数, α与 β均指秘密数据, α i为序号为 i的数据方持有的秘密数据 α的第 i个秘密分享份额, αking为序号为king的数据方持有的秘密数据 α的第king个秘密分享份额, β i为 i的数据方持有的秘密数据 β的第 i个秘密分享份额, βking为序号为king的数据方持有的秘密数据 β的第king个秘密分享份额。
56、另一方面,所述基于多方数据的数据共用场景包括:
57、基于多个数据方未来的秘密数据进行内容预测的预测场景。
58、另一方面,根据各个数据方发送的秘密分享份额确定出各个所述理论变点的全局特征值,并根据各个所述理论变点的全局特征值确定出由各个数据方的实际变点构成的全局变点序列之后,所述基于秘密分享的数据处理方法还包括:
59、存储本次得到的全局变点序列;
60、判断本次确定出的所述全局变点序列与存储的上次确定出的全局变点序列是否一致;
61、若一致,则控制报警器报警。
62、另一方面,确定出由自身在预设时间段内的各个实际变点构成的第一变点集合包括:
63、响应于预测结果更新指令,确定出由自身在未来的预设时间段内的各个实际变点构成的第一变点集合,其中,所述预测结果更新指令包括第一更新指令或第二更新指令,所述第一更新指令为每隔第一预设周期自动生成的更新指令;
64、所述基于秘密分享的数据处理方法还包括:
65、响应于每隔第二预设周期生成的更新识别指令,基于秘密分享技术判断所述数据共用场景中是否存在秘密数据产生更新的数据方;
66、若存在,则生成所述第二更新指令。
67、另一方面,响应于每隔第二预设周期生成的更新识别指令,基于秘密分享技术判断所述数据共用场景中是否存在秘密数据产生更新的数据方包括:
68、响应于每隔第二预设周期生成的更新识别指令,确定出自身的数据更新情况,其中,数据更新情况包括自从上一次更新预测结果后,自身的秘密数据产生更新以及未产生更新两种情况;
69、通过秘密分享技术为更新情况表征值生成多个秘密分享份额,其中,更新情况表征值用于表征自身的所述数据更新情况;
70、将所述更新情况表征值的各个秘密分享份额,分配至所述预测场景中的各个数据方;
71、根据各个数据方发送的所述更新情况表征值的秘密分享份额,确定出全局更新情况表征值,其中,所述全局更新情况表征值等于各数据方的更新情况表征值经过所述秘密分享技术的指定运算类型的运算结果,用于表征所述预测场景中是否存在秘密数据产生更新的数据方;
72、根据所述全局更新情况表征值,确定所述预测场景中是否存在秘密数据产生更新的数据方。
73、为解决上述技术问题,本发明还提供了一种基于秘密分享的数据处理设备,包括:
74、存储器,用于存储计算机程序;
75、处理器,用于执行所述计算机程序时实现如上所述基于秘密分享的数据处理方法的步骤。
76、为解决上述技术问题,本发明还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如上所述基于秘密分享的数据处理方法的步骤。
77、为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述基于秘密分享的数据处理方法的步骤。
78、有益效果:本发明提供了一种基于秘密分享的数据处理方法,考虑到通过对各个数据方的实际变点进行汇总可将多方的秘密数据在时间轴上对齐,然而数据方可能不愿泄露自身的数据变化情况,结合考虑到秘密分享技术能够通过对数据进行拆分以及分片段运算的方式,在分享信息的情况下保证数据不泄露,因此本发明中的数据方,可针对预设时间段内的各理论变点,根据理论变点是否为自身实际变点的情况,为理论变点生成对应不同全局特征值的秘密分享份额,然后将秘密分享份额分配至各数据方,使得各数据方可根据接收到的秘密分享份额确定出各理论变点的全局特征值(表征理论变点是否为某数据方的实际变点),进而得到由各个数据方的实际变点构成的全局变点序列,不但高效地实现了多方的秘密数据在时间轴上的对齐,而且保护了数据方的实际变点不被泄露。
79、本发明还提供了一种基于秘密分享的数据处理设备、计算机程序产品及计算机可读存储介质,具有如上基于秘密分享的数据处理方法相同的有益效果。
1.一种基于秘密分享的数据处理方法,其特征在于,应用于基于多方数据的数据共用场景中的任一数据方,包括:
2.根据权利要求1所述的基于秘密分享的数据处理方法,其特征在于,所述秘密分享技术包括加法秘密分享;
3.根据权利要求2所述的基于秘密分享的数据处理方法,其特征在于,对于第二变点集合中的任一个理论变点,若所述理论变点属于所述第一变点集合,通过秘密分享技术为所述理论变点生成满足第一条件的多个秘密分享份额,若所述理论变点不属于所述第一变点集合,通过秘密分享技术为所述理论变点生成满足第二条件的多个秘密分享份额包括:
4.根据权利要求3所述的基于秘密分享的数据处理方法,其特征在于,所述理论变点的秘密分享份额的数量等于所述数据共用场景中的数据方的数量;
5.根据权利要求4所述的基于秘密分享的数据处理方法,其特征在于,根据各个数据方发送的秘密分享份额确定出各个所述理论变点的全局特征值包括:
6.根据权利要求5所述的基于秘密分享的数据处理方法,其特征在于,根据各个所述理论变点的全局特征值确定出由各个数据方的实际变点构成的全局变点序列包括:
7.根据权利要求1所述的基于秘密分享的数据处理方法,其特征在于,根据各个数据方发送的秘密分享份额确定出各个所述理论变点的全局特征值,并根据各个所述理论变点的全局特征值确定出由各个数据方的实际变点构成的全局变点序列之后,所述基于秘密分享的数据处理方法还包括:
8.根据权利要求7所述的基于秘密分享的数据处理方法,其特征在于,将自身在所述目标时间区间内的秘密数据被划分得到的各个秘密分享份额,分配至所述数据共用场景中的各个数据方包括:
9.根据权利要求8所述的基于秘密分享的数据处理方法,其特征在于,所述功能函数表示为由多个运算类型的电路门构成的算术电路;
10.根据权利要求9所述的基于秘密分享的数据处理方法,其特征在于,所述算术电路包括加法门、数乘门与乘法门;
11.根据权利要求9所述的基于秘密分享的数据处理方法,其特征在于,所述功能函数包括:
12.根据权利要求10所述的基于秘密分享的数据处理方法,其特征在于,在执行运算类型为乘法运算的运算步骤时,基于第一秘密分享份额以及第二秘密分享份额,在其他各数据方的协作下,得到两个作为乘数的秘密数据的乘积的秘密分享份额包括:
13.根据权利要求12所述的基于秘密分享的数据处理方法,其特征在于,乘法三元组包括:
14.根据权利要求1至13任一项所述的基于秘密分享的数据处理方法,其特征在于,所述基于多方数据的数据共用场景包括:
15.根据权利要求14所述的基于秘密分享的数据处理方法,其特征在于,根据各个数据方发送的秘密分享份额确定出各个所述理论变点的全局特征值,并根据各个所述理论变点的全局特征值确定出由各个数据方的实际变点构成的全局变点序列之后,所述基于秘密分享的数据处理方法还包括:
16.根据权利要求14所述的基于秘密分享的数据处理方法,其特征在于,确定出由自身在预设时间段内的各个实际变点构成的第一变点集合包括:
17.根据权利要求16所述的基于秘密分享的数据处理方法,其特征在于,响应于每隔第二预设周期生成的更新识别指令,基于秘密分享技术判断所述数据共用场景中是否存在秘密数据产生更新的数据方包括:
18.一种基于秘密分享的数据处理设备,其特征在于,包括:
19.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至17任一项所述基于秘密分享的数据处理方法的步骤。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至17任一项所述基于秘密分享的数据处理方法的步骤。
