CN112084530B - 多方联合进行安全统计的方法和装置 - Google Patents
多方联合进行安全统计的方法和装置 Download PDFInfo
- Publication number
- CN112084530B CN112084530B CN202010948796.9A CN202010948796A CN112084530B CN 112084530 B CN112084530 B CN 112084530B CN 202010948796 A CN202010948796 A CN 202010948796A CN 112084530 B CN112084530 B CN 112084530B
- Authority
- CN
- China
- Prior art keywords
- party
- sample
- product
- slice
- value
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000001914 filtration Methods 0.000 claims abstract description 229
- 239000012634 fragment Substances 0.000 claims abstract description 136
- 230000005540 biological transmission Effects 0.000 claims abstract description 40
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000002776 aggregation Effects 0.000 description 4
- 238000004220 aggregation Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Classifications
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
Abstract
本说明书实施例提供一种多方联合进行安全统计的方法和装置,方法包括:根据目标样本对应的第一隐私数据,计算第一过滤条件的第一过滤结果的第一逻辑值;根据本方具有的第一逻辑值,与第二方提供的目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到结果逻辑值的第一分片;第二方得到结果逻辑值的第二分片;其中,结果逻辑值的各可能取值由第二方根据目标样本对应的第二隐私数据确定的;根据本方具有的样本集合中各样本的结果逻辑值的第一分片,与第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。能够同时满足安全性和实用性。
Description
技术领域
本说明书一个或多个实施例涉及计算机领域,尤其涉及多方联合进行安全统计的方法和装置。
背景技术
当前,普遍存在多方需要联合起来对各方的数据一起做统计的需求,比如若干商业保险机构联合统计得到行业的总体情况,或者若干医疗机构联合统计得到某些疾病的总体情况。由于各方的数据都是机密的,在做联合统计时,各方都需要保护自己的数据,不能泄露给其他方。这为多方的联合统计带来了很大的困难。
在一个典型的统计问题中,样本数据垂直分布在多方,各方拥有样本的不同类别的信息,需要结合多方的不同类别的信息对样本做条件过滤,然后对条件过滤后的满足条件的样本做统计。举个具体例子,两个机构有各自用户的身份标识(比如身份证号、手机号等),其中一方有用户的年龄和工资信息,另一方有用户的学历信息。两个机构想要联合起来,对共同用户统计某种学历和某个年龄段的用户的收入信息,比如本科学历且年龄在25到30之间的人群的收入总和等。两个机构都可以得到统计的结果,但是除了统计结果外,不能泄露用户的信息。针对上述统计问题,现有技术中缺乏同时满足安全性和实用性的可行性方案。
发明内容
本说明书一个或多个实施例描述了一种多方联合进行安全统计的方法和装置,能够同时满足安全性和实用性。
第一方面,提供了一种多方联合进行安全统计的方法,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述方法通过所述第一方执行,包括:
根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;
根据本方具有的所述第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;
根据本方具有的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。
在一种可能的实施方式中,所述样本对应于用户,所述第一隐私数据包括用户的若干第一特征项,所述第二隐私数据包括用户的若干第二特征项。
在一种可能的实施方式中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求和;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的第一数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一数据项和所述结果逻辑值的第一乘积的第一分片;所述第二方得到所述第一乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第一乘积的第一分片,与所述第二方具有的各第一乘积的第二分片,通过秘密共享的方式,得到各第一乘积之和的第一分片;所述第二方得到各第一乘积之和的第二分片;
从所述第二方接收各第一乘积之和的第二分片,根据各第一乘积之和的第一分片以及各第一乘积之和的第二分片,确定各第一乘积之和,作为针对第一隐私数据中的第一数据项求和的最终结果。
在一种可能的实施方式中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最大值;所述进行样本统计运算的步骤包括:
对各样本的第一数据项均加上第一正数,得到各样本分别对应的第一偏大数据项;所述第一偏大数据项均大于零;
根据本方具有的所述目标样本对应的第一偏大数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏大数据项和所述结果逻辑值的第二乘积的第一分片;所述第二方得到所述第二乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第二乘积的第一分片,与所述第二方具有的各第二乘积的第二分片,通过秘密共享的方式,得到各第二乘积中的最大值的第一分片;所述第二方得到各第二乘积中的最大值的第二分片;
从所述第二方接收各第二乘积中的最大值的第二分片,根据各第二乘积中的最大值的第一分片以及各第二乘积中的最大值的第二分片,确定各第二乘积中的最大值,将各第二乘积中的最大值减去所述第一正数,作为针对第一隐私数据中的第一数据项求最大值的最终结果。
在一种可能的实施方式中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最小值;所述进行样本统计运算的步骤包括:
对各样本的第一数据项均减去第二正数,得到各样本分别对应的第一偏小数据项;所述第一偏小数据项均小于零;
根据本方具有的所述目标样本对应的第一偏小数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏小数据项和所述结果逻辑值的第三乘积的第一分片;所述第二方得到所述第三乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第三乘积的第一分片,与所述第二方具有的各第三乘积的第二分片,通过秘密共享的方式,得到各第三乘积中的最小值的第一分片;所述第二方得到各第三乘积中的最小值的第二分片;
从所述第二方接收各第三乘积中的最小值的第二分片,根据各第三乘积中的最小值的第一分片以及各第三乘积中的最小值的第二分片,确定各第三乘积中的最小值,将各第三乘积中的最小值加上所述第二正数,作为针对第一隐私数据中的第一数据项求最小值的最终结果。
在一种可能的实施方式中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求和;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二数据项和所述结果逻辑值的第四乘积的第一分片;所述第二方得到所述第四乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第四乘积的第一分片,与所述第二方具有的各第四乘积的第二分片,通过秘密共享的方式,得到各第四乘积之和的第一分片;所述第二方得到各第四乘积之和的第二分片;
从所述第二方接收各第四乘积之和的第二分片,根据各第四乘积之和的第一分片以及各第四乘积之和的第二分片,确定各第四乘积之和,作为针对第二隐私数据中的第二数据项求和的最终结果。
在一种可能的实施方式中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最大值;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏大数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏大数据项和所述结果逻辑值的第五乘积的第一分片;所述第二方得到所述第五乘积的第二分片;所述第二偏大数据项为所述第二方对各样本的第二数据项均加上第三正数得到的;所述第二偏大数据项均大于零;
根据本方具有的所述样本集合中各样本分别对应的各第五乘积的第一分片,与所述第二方具有的各第五乘积的第二分片,通过秘密共享的方式,得到各第五乘积中的最大值的第一分片;所述第二方得到各第五乘积中的最大值的第二分片;
向所述第二方发送各第五乘积中的最大值的第一分片,以使所述第二方根据各第五乘积中的最大值的第一分片以及各第五乘积中的最大值的第二分片,确定各第五乘积中的最大值,将各第五乘积中的最大值减去所述第三正数,作为针对第二隐私数据中的第二数据项求最大值的最终结果。
在一种可能的实施方式中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最小值;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏小数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏小数据项和所述结果逻辑值的第六乘积的第一分片;所述第二方得到所述第六乘积的第二分片;所述第二偏小数据项为所述第二方对各样本的第二数据项均减去第四正数得到的;所述第二偏小数据项均小于零;
根据本方具有的所述样本集合中各样本分别对应的各第六乘积的第一分片,与所述第二方具有的各第六乘积的第二分片,通过秘密共享的方式,得到各第六乘积中的最小值的第一分片;所述第二方得到各第六乘积中的最小值的第二分片;
向所述第二方发送各第六乘积中的最小值的第一分片,以使所述第二方根据各第六乘积中的最小值的第一分片以及各第六乘积中的最小值的第二分片,确定各第六乘积中的最小值,将各第六乘积中的最小值加上所述第四正数,作为针对第二隐私数据中的第二数据项求最小值的最终结果。
在一种可能的实施方式中,所述样本统计运算包括,对满足所述总过滤条件的样本进行计数;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的常数1和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的常数1和所述结果逻辑值的第七乘积的第一分片;所述第二方得到所述第七乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第七乘积的第一分片,与所述第二方具有的各第七乘积的第二分片,通过秘密共享的方式,得到各第七乘积之和的第一分片;所述第二方得到各第七乘积之和的第二分片;
从所述第二方接收各第七乘积之和的第二分片,根据各第七乘积之和的第一分片以及各第七乘积之和的第二分片,确定各第七乘积之和,作为对满足所述总过滤条件的样本进行计数的最终结果。
第二方面,提供了一种多方联合进行安全统计的方法,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述样本集合中各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述方法通过所述第二方执行,包括:
根据目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值;所述目标样本为所述样本集合中的任一样本;
根据所述第二逻辑值与所述第一过滤条件的第一过滤结果的各可能值,确定所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值;
根据本方具有的所述目标样本对应的所述结果逻辑值的各可能取值,与所述第一方具有的第一逻辑值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第二分片;所述第一方得到所述结果逻辑值的第一分片;所述第一逻辑值由所述第一方根据所述目标样本对应的第一隐私数据计算得到的;
根据本方具有的所述样本集合中各样本的结果逻辑值的第二分片,与所述第一方具有的各样本的结果逻辑值的第一分片,通过秘密共享的方式,进行样本统计运算。
第三方面,提供了一种多方联合进行安全统计的装置,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述装置设置于所述第一方,包括:
单方计算单元,用于根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;
不经意传输单元,用于根据本方具有的所述单方计算单元得到的第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;
统计单元,用于根据本方具有的所述不经意传输单元得到的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。
第四方面,提供了一种多方联合进行安全统计的装置,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述样本集合中各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述装置设置于所述第二方,包括:
单方计算单元,用于根据目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值;所述目标样本为所述样本集合中的任一样本;
逻辑推理单元,用于根据所述单方计算单元得到的第二逻辑值与所述第一过滤条件的第一过滤结果的各可能值,确定所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值;
不经意传输单元,用于根据本方具有的所述逻辑推理单元得到的所述目标样本对应的所述结果逻辑值的各可能取值,与所述第一方具有的第一逻辑值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第二分片;所述第一方得到所述结果逻辑值的第一分片;所述第一逻辑值由所述第一方根据所述目标样本对应的第一隐私数据计算得到的;
统计单元,用于根据本方具有的所述不经意传输单元得到的所述样本集合中各样本的结果逻辑值的第二分片,与所述第一方具有的各样本的结果逻辑值的第一分片,通过秘密共享的方式,进行样本统计运算。
第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面的方法。
第六方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面或第二方面的方法。
通过本说明书实施例提供的方法和装置,第一方具有样本集合中各样本分别对应的第一隐私数据,第二方具有所述各样本分别对应的第二隐私数据;安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;第一方首先根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;然后根据本方具有的所述第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;最后根据本方具有的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。由上可见,本说明书实施例,针对样本数据垂直分布在多方的统计场景,通过使用不经意传输技术,对于由两方的多个过滤条件组合的复杂情形,只需一轮不经意传输便可得到总过滤结果的结果逻辑值,交互轮数少,在过滤条件数量较小的情形下,通信量也较小,具有实用性。此外,通过叠加秘密共享的扩展不经意传输方式,输出结果为两方分片的形式,使得不经意传输技术能够和秘密共享技术融合,支持多种统计运算,包括求和、计数、求极值等统计运算。整个过程中,不会泄露各方的隐私数据,能够同时满足安全性和实用性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的多方联合进行安全统计的方法流程图;
图3示出一种基础的不经意传输原理图;
图4示出一种扩展的不经意传输原理图;
图5示出根据另一个实施例的多方联合进行安全统计的方法流程图;
图6示出根据一个实施例的多方联合进行安全统计的装置的示意性框图;
图7示出根据另一个实施例的多方联合进行安全统计的装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及多方联合进行安全统计。可以理解的是,上述多方可以为两方或两方以上,例如,三方、四方等。本说明书实施例,以两方联合进行安全统计为例进行说明。参照图1,第一方11具有样本1的第一隐私数据10、样本2的第一隐私数据20、样本3的第一隐私数据30、样本4的第一隐私数据40、样本5的第一隐私数据50;第二方12具有样本1的第二隐私数据11、样本2的第二隐私数据21、样本3的第二隐私数据31、样本4的第二隐私数据41、样本5的第二隐私数据51。其中,第一隐私数据包括样本的第一特征部分,第一特征部分对应于第一维度集合,第二隐私数据包括样本的第二特征部分,第二特征部分对应于第二维度集合。以样本1为例,第一隐私数据10为样本1的第一特征部分,第二隐私数据11为样本1的第二特征部分,第一特征部分和第二特征部分分别对应于样本1的若干维度。
可以理解的是,第一方和第二方仅为对两方的区分,还可以将第一方称为A方,将第二方称为B方,等。假设有A和B两方,N个样本中每个样本的样本维度为d,其中A方拥有样本的d1维特征,B方拥有样本的d2维特征,d=d1+d2,本说明书实施例,需要结合多方的不同维度的特征对样本做条件过滤,然后对条件过滤后的满足条件的样本做统计。
本说明书实施例中,样本对应于第一方的第一隐私数据和第二方的第二隐私数据,对于各方的隐私数据涵盖的信息不做限定,可以是任何不可外传的信息,例如,用户的个人信息或商业秘密等。举例来说,隐私数据为用户的个人信息,包括了用户的姓名、年龄、收入等,隐私数据中的每项信息可以作为样本的一个维度的特征,具体可以参照表一所示的各样本包含特征的对应关系表。
表一:各样本包含特征的对应关系表
由表一可见,表一中不同列的数据可能分布在不同方,例如,姓名和年龄分布在第一方,收入、理财金额、消费金额分布在第二方,这种数据垂直分布在多方的数据分布方式,可以称为垂直切分。
本说明书实施例,需要基于多方的隐私数据进行安全统计,以图1为例,就是针对样本1、样本2、样本3、样本4和样本5先进行条件过滤,再对条件过滤后满足条件的样本进行安全统计,分布在不同方的隐私数据共同构成一个样本,一个样本最终是否满足条件,不仅取决于第一方的第一隐私数据,还取决于第二方的第二隐私数据。本说明书实施例,利用安全多方计算(secure multi-party computation,MPC)的方式,在不泄露隐私数据的前提下,实现多方联合进行安全统计。
图2示出根据一个实施例的多方联合进行安全统计的方法流程图,该方法可以基于图1所示的实施场景,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述方法通过所述第一方执行。如图2所示,该实施例中多方联合进行安全统计的方法包括以下步骤:步骤21,根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;步骤22,根据本方具有的所述第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;步骤23,根据本方具有的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。下面描述以上各个步骤的具体执行方式。
首先在步骤21,根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本。可以理解的是,上述第一逻辑值可以根据第一隐私数据直接确定,当目标样本对应的第一隐私数据满足第一过滤条件时,该目标样本对应的第一逻辑值为1,否则为0。
本说明书实施例中,第一隐私数据可以包括若干数据项,当每个数据项代表一项样本特征时,数据项也可以称为特征项,第一逻辑值可以根据第一隐私数据包括的一个或多个数据项而确定。
在一个示例中,所述样本对应于用户,所述第一隐私数据包括用户的若干第一特征项,所述第二隐私数据包括用户的若干第二特征项。
可以理解的是,所述总过滤条件可以包括,针对所述第一隐私数据的一个或多个第一过滤条件,当有多个第一过滤条件时,可以根据目标样本对应的第一隐私数据,分别计算所述目标样本针对各第一过滤条件的第一过滤结果的第一逻辑值。
例如,第一方(也称为A方)对应有C1和C2两个第一过滤条件,对每个样本分别计算第一过滤条件C1对应的第一逻辑值A.C1,以及第一过滤条件C2对应的第一逻辑值A.C2,每个第一逻辑值为0或1。
然后在步骤22,根据本方具有的所述第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的。可以理解的是,结果逻辑值体现了目标样本是否符合总过滤条件,如果目标样本符合总过滤条件,则该目标样本的结果逻辑值为1,否则为0。结果逻辑值不仅与第一逻辑值相关,而且与第二逻辑值相关。
本说明书实施例采用了叠加秘密共享的扩展不经意传输方式,使得结果逻辑值以分片的形式分布于第一方和第二方,便于后续基于结果逻辑值的分片,采用秘密共享的方式进行样本统计运算。
其中,秘密共享(secret sharing,SS)也称为秘密分享,是一种秘密分割的技术,将秘密分割成多个分片,每个分片都是随机的,只有足够多的分片可以恢复出原始秘密。通过将秘密分成多个分片,分发给多个计算参与方,每个参与方有一个分片,多个参与方便可基于分片对数据安全地做加法、乘法,以及更复杂的比大小、求最大值、最小值等运算,而且计算过程中,数据都是处于分片状态的,任何参与方都无法获得原文数据,计算结束后的结果也以分片形式存在各方,需要恢复明文时,才把结果的分片聚集在一起恢复出明文。
图3示出一种基础的不经意传输原理图。参照图3,不经意传输(oblivioustransfer,OT)中,发送方有两个消息m_0和m_1,接收方想接收其中第b个消息(b=0或1)。两方通过运行OT协议,接收方能够获得消息m_b,但不能获得m_{1-b},而且b的值也不会泄露给发送方。
图4示出一种扩展的不经意传输原理图,即本说明书实施例中采用的叠加秘密共享的扩展不经意传输方式。参照图4,发送方有两个消息m_0和m_1,接收方想接收其中第b个消息(b=0或1),但是接收方得到的是m_b的一个分片,发送方保存m_b的另一个分片。具体的实现方式,可以是发送方先本地生成随机数r,然后再将m_0-r,m_1-r作为基础OT的输入,那么接收方收到的m_b-r便是m_b的一个分片,而发送方本地已有r,即m_b的另一个分片。
本说明书实施例中,由于第二方不能获得第一隐私数据,所以不能确定目标样本对应的第一逻辑值,由于逻辑值只有0、1两个可能值,第二方可以先计算出目标样本对应的第二逻辑值,再结合第一逻辑值的各可能值,综合确定结果逻辑值的各可能取值。
可以理解的是,总过滤条件可以由两方的第一过滤条件和第二过滤条件通过“逻辑与(and)”或“逻辑或(or)”交错组合在一起。例如,第一方(也称为A方)对应有C1和C2两个第一过滤条件,对每个样本分别计算第一过滤条件C1对应的第一逻辑值A.C1,以及第一过滤条件C2对应的第一逻辑值A.C2,每个第一逻辑值为0或1。第二方(也称为B方)对应有D1和D2两个第二过滤条件,对每个样本分别计算第二过滤条件D1对应的第二逻辑值B.D1,以及第二过滤条件D2对应的第二逻辑值B.D2,每个第二逻辑值为0或1。第二方针对每个样本,遍历每个第一过滤条件的所有可能值,计算总过滤条件的所有可能值V,得到的第一过滤条件的可能值与总过滤条件的可能值之间的对应关系可以如表二所示。
表二:第一过滤条件的可能值与总过滤条件的可能值的对应关系表
A.C1 | A.C2 | … | 总过滤条件的值V(0或1) |
0 | 0 | … | * |
1 | 0 | … | * |
0 | 1 | … | * |
1 | 1 | … | * |
由表二可见,第一列和第二列给出了第一过滤条件的所有可能值,第三列省略了第二过滤条件的第二逻辑值,第四列给出了经过逻辑推理得出的总过滤条件的值V,由于表中未给出具体的第二逻辑值,也未给出总过滤条件中第一过滤条件与第二过滤条件的逻辑关系,因此总过滤条件的值V统一用*代替。可以理解的是,若给出具体的第二逻辑值,并给出总过滤条件中第一过滤条件与第二过滤条件的逻辑关系,很容易得出总过滤条件的值V。例如,第二逻辑值B.D1为1,第二逻辑值B.D2为0,总过滤条件为(A.C1 and B.D1)or(A.C2and B.D2),得到的第一过滤条件的可能值与总过滤条件的可能值之间的对应关系可以如表三所示。
表三:第一过滤条件的可能值与总过滤条件的可能值的对应关系表
A.C1 | A.C2 | B.D1 | B.D2 | 总过滤条件的值V(0或1) |
0 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 0 | 1 |
0 | 1 | 1 | 0 | 0 |
1 | 1 | 1 | 0 | 1 |
由表三可见,第一列和第二列给出了第一过滤条件的所有可能值,第三列和第四列给出了第二过滤条件的第二逻辑值,第五列给出了经过逻辑推理得出的总过滤条件的值V。可以理解的是,只要知道A.C1和A.C2,就可以唯一确定总过滤条件的值V。本说明书实施例中,第一方提供第一逻辑值C=[A.C1,A.C2],第二方提供总过滤条件的各可能取值V,通过叠加秘密共享的扩展不经意传输方式,第一方得到所述结果逻辑值W的第一分片P1;所述第二方得到所述结果逻辑值W的第二分片P2。其中,结果逻辑值即总过滤条件的值。
本说明书实施例中,上述总过滤条件可以基于结构化查询语言(structuredquery language,SQL)中的WHERE子句来实现,WHERE子句用于提取那些满足指定条件的记录。这种情况下,总过滤条件的值就是WHERE子句的值。
最后在步骤23,根据本方具有的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。可以理解的是,基于结果逻辑值可以对样本集合中各样本进行过滤,对过滤后的样本进行样本统计运算。
本说明书实施例中,样本统计运算可以但不限于包括针对第一隐私数据中的第一数据项求和、针对第一隐私数据中的第一数据项求最大值、针对第一隐私数据中的第一数据项求最小值、针对第二隐私数据中的第二数据项求和、针对第二隐私数据中的第二数据项求最大值、针对第二隐私数据中的第二数据项求最小值、对满足所述总过滤条件的样本进行计数等。其中,第一隐私数据可以包括多个数据项,第一数据项可以为该多个数据项中的任意一个;第二隐私数据可以包括多个数据项,第二数据项可以为该多个数据项中的任意一个。
在一个示例中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求和;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的第一数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一数据项和所述结果逻辑值的第一乘积的第一分片;所述第二方得到所述第一乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第一乘积的第一分片,与所述第二方具有的各第一乘积的第二分片,通过秘密共享的方式,得到各第一乘积之和的第一分片;所述第二方得到各第一乘积之和的第二分片;
从所述第二方接收各第一乘积之和的第二分片,根据各第一乘积之和的第一分片以及各第一乘积之和的第二分片,确定各第一乘积之和,作为针对第一隐私数据中的第一数据项求和的最终结果。
该示例中,采用了基于秘密共享的乘法,以及基于秘密共享的求和。第一方输入第一数据项X和结果逻辑值W的第一分片P1,第二方输入结果逻辑值W的第二分片P2,基于秘密共享的乘法,第一方得到X*W的分片S1,第二方得到X*W的分片S2,两方基于秘密共享的求和,对各样本的(S1,S2)求和,以得到针对第一隐私数据中的第一数据项求和的最终结果。
在一个示例中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最大值;所述进行样本统计运算的步骤包括:
对各样本的第一数据项均加上第一正数,得到各样本分别对应的第一偏大数据项;所述第一偏大数据项均大于零;
根据本方具有的所述目标样本对应的第一偏大数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏大数据项和所述结果逻辑值的第二乘积的第一分片;所述第二方得到所述第二乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第二乘积的第一分片,与所述第二方具有的各第二乘积的第二分片,通过秘密共享的方式,得到各第二乘积中的最大值的第一分片;所述第二方得到各第二乘积中的最大值的第二分片;
从所述第二方接收各第二乘积中的最大值的第二分片,根据各第二乘积中的最大值的第一分片以及各第二乘积中的最大值的第二分片,确定各第二乘积中的最大值,将各第二乘积中的最大值减去所述第一正数,作为针对第一隐私数据中的第一数据项求最大值的最终结果。
该示例中,采用了基于秘密共享的乘法,以及基于秘密共享的求最大值。其中,对各样本的第一数据项均加上第一正数,得到各样本分别对应的第一偏大数据项;所述第一偏大数据项均大于零;后续将各第二乘积中的最大值减去所述第一正数,作为针对第一隐私数据中的第一数据项求最大值的最终结果。这种处理方式克服了由于结果逻辑值为0值,而对求最大值带来的影响,例如,过滤后的各样本的第一数据项均为负数的情况,如果未对第一数据项加上第一正数,则最后求得的最大值就为0。其中,对于上述第一正数的具体数值不做限定,只需要足够大使得第一偏大数据项均大于零。
在一个示例中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最小值;所述进行样本统计运算的步骤包括:
对各样本的第一数据项均减去第二正数,得到各样本分别对应的第一偏小数据项;所述第一偏小数据项均小于零;
根据本方具有的所述目标样本对应的第一偏小数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏小数据项和所述结果逻辑值的第三乘积的第一分片;所述第二方得到所述第三乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第三乘积的第一分片,与所述第二方具有的各第三乘积的第二分片,通过秘密共享的方式,得到各第三乘积中的最小值的第一分片;所述第二方得到各第三乘积中的最小值的第二分片;
从所述第二方接收各第三乘积中的最小值的第二分片,根据各第三乘积中的最小值的第一分片以及各第三乘积中的最小值的第二分片,确定各第三乘积中的最小值,将各第三乘积中的最小值加上所述第二正数,作为针对第一隐私数据中的第一数据项求最小值的最终结果。
该示例中,采用了基于秘密共享的乘法,以及基于秘密共享的求最小值。其中,对各样本的第一数据项均减去第二正数,得到各样本分别对应的第一偏小数据项;所述第一偏小数据项均小于零;后续将各第三乘积中的最小值加上所述第二正数,作为针对第一隐私数据中的第一数据项求最小值的最终结果。这种处理方式克服了由于结果逻辑值为0值,而对求最小值带来的影响,例如,过滤后的各样本的第一数据项均为正数的情况,如果未对第一数据项减去第二正数,则最后求得的最小值就为0。其中,对于上述第二正数的具体数值不做限定,只需要足够大使得第一偏小数据项均小于零。
此外,本说明书实施例不仅可以对第一方的隐私数据的数据项进行统计运算,还可以对第二方的隐私数据的数据项进行统计运算。
在一个示例中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求和;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二数据项和所述结果逻辑值的第四乘积的第一分片;所述第二方得到所述第四乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第四乘积的第一分片,与所述第二方具有的各第四乘积的第二分片,通过秘密共享的方式,得到各第四乘积之和的第一分片;所述第二方得到各第四乘积之和的第二分片;
从所述第二方接收各第四乘积之和的第二分片,根据各第四乘积之和的第一分片以及各第四乘积之和的第二分片,确定各第四乘积之和,作为针对第二隐私数据中的第二数据项求和的最终结果。
在一个示例中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最大值;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏大数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏大数据项和所述结果逻辑值的第五乘积的第一分片;所述第二方得到所述第五乘积的第二分片;所述第二偏大数据项为所述第二方对各样本的第二数据项均加上第三正数得到的;所述第二偏大数据项均大于零;
根据本方具有的所述样本集合中各样本分别对应的各第五乘积的第一分片,与所述第二方具有的各第五乘积的第二分片,通过秘密共享的方式,得到各第五乘积中的最大值的第一分片;所述第二方得到各第五乘积中的最大值的第二分片;
向所述第二方发送各第五乘积中的最大值的第一分片,以使所述第二方根据各第五乘积中的最大值的第一分片以及各第五乘积中的最大值的第二分片,确定各第五乘积中的最大值,将各第五乘积中的最大值减去所述第三正数,作为针对第二隐私数据中的第二数据项求最大值的最终结果。
在一个示例中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最小值;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏小数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏小数据项和所述结果逻辑值的第六乘积的第一分片;所述第二方得到所述第六乘积的第二分片;所述第二偏小数据项为所述第二方对各样本的第二数据项均减去第四正数得到的;所述第二偏小数据项均小于零;
根据本方具有的所述样本集合中各样本分别对应的各第六乘积的第一分片,与所述第二方具有的各第六乘积的第二分片,通过秘密共享的方式,得到各第六乘积中的最小值的第一分片;所述第二方得到各第六乘积中的最小值的第二分片;
向所述第二方发送各第六乘积中的最小值的第一分片,以使所述第二方根据各第六乘积中的最小值的第一分片以及各第六乘积中的最小值的第二分片,确定各第六乘积中的最小值,将各第六乘积中的最小值加上所述第四正数,作为针对第二隐私数据中的第二数据项求最小值的最终结果。
此外,本说明书实施例还可以基于对第一方的隐私数据的数据项进行求和的方案,将各样本对应的第一数据项置为常数1,以实现对满足所述总过滤条件的样本进行计数。或者,基于对第二方的隐私数据的数据项进行求和的方案,将各样本对应的第二数据项置为常数1,以实现对满足所述总过滤条件的样本进行计数。
在一个示例中,所述样本统计运算包括,对满足所述总过滤条件的样本进行计数;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的常数1和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的常数1和所述结果逻辑值的第七乘积的第一分片;所述第二方得到所述第七乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第七乘积的第一分片,与所述第二方具有的各第七乘积的第二分片,通过秘密共享的方式,得到各第七乘积之和的第一分片;所述第二方得到各第七乘积之和的第二分片;
从所述第二方接收各第七乘积之和的第二分片,根据各第七乘积之和的第一分片以及各第七乘积之和的第二分片,确定各第七乘积之和,作为对满足所述总过滤条件的样本进行计数的最终结果。
图5示出根据另一个实施例的多方联合进行安全统计的方法流程图,该方法可以基于图1所示的实施场景,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述方法通过所述第二方执行。如图5所示,该实施例中多方联合进行安全统计的方法包括以下步骤:步骤51,根据目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值;所述目标样本为所述样本集合中的任一样本;步骤52,根据所述第二逻辑值与所述第一过滤条件的第一过滤结果的各可能值,确定所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值;步骤53,根据本方具有的所述目标样本对应的所述结果逻辑值的各可能取值,与所述第一方具有的第一逻辑值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第二分片;所述第一方得到所述结果逻辑值的第一分片;所述第一逻辑值由所述第一方根据所述目标样本对应的第一隐私数据计算得到的;步骤54,根据本方具有的所述样本集合中各样本的结果逻辑值的第二分片,与所述第一方具有的各样本的结果逻辑值的第一分片,通过秘密共享的方式,进行样本统计运算。
可以理解的是,本说明书实施例的多方联合进行安全统计的方法,需要第一方和第二方配合完成,第二方的处理过程均与第一方的处理过程相对应,在此不做赘述。
通过本说明书实施例提供的方法,第一方具有样本集合中各样本分别对应的第一隐私数据,第二方具有所述各样本分别对应的第二隐私数据;安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;第一方首先根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;然后根据本方具有的所述第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;最后根据本方具有的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。由上可见,本说明书实施例,针对样本数据垂直分布在多方的统计场景,通过使用不经意传输技术,对于由两方的多个过滤条件组合的复杂情形,只需一轮不经意传输便可得到总过滤结果的结果逻辑值,交互轮数少,在过滤条件数量较小的情形下,通信量也较小,具有实用性。此外,通过叠加秘密共享的扩展不经意传输方式,输出结果为两方分片的形式,使得不经意传输技术能够和秘密共享技术融合,支持多种统计运算,包括求和、计数、求极值等统计运算。整个过程中,不会泄露各方的隐私数据,能够同时满足安全性和实用性。
此外,本说明书实施例提供的方法,能够支持一方聚合,也能够支持两方聚合,并且两方聚合的情形下仍然只需一轮不经意传输。可以理解的是,对于多个样本,隐私数据的数据项可以视为变量,针对隐私数据的数据项的样本统计运算,可以视为变量聚合。
根据另一方面的实施例,还提供一种多方联合进行安全统计的装置,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述装置设置于所述第一方,用于执行本说明书实施例提供的多方联合进行安全统计的方法中第一方执行的动作。图6示出根据一个实施例的多方联合进行安全统计的装置的示意性框图。如图6所示,该装置600包括:
单方计算单元61,用于根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;
不经意传输单元62,用于根据本方具有的所述单方计算单元61得到的第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;
统计单元63,用于根据本方具有的所述不经意传输单元62得到的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。
可选地,作为一个实施例,所述样本对应于用户,所述第一隐私数据包括用户的若干第一特征项,所述第二隐私数据包括用户的若干第二特征项。
可选地,作为一个实施例,所述样本统计运算包括,针对第一隐私数据中的第一数据项求和;所述统计单元63包括:
第一安全乘法子单元,用于根据本方具有的所述目标样本对应的第一数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一数据项和所述结果逻辑值的第一乘积的第一分片;所述第二方得到所述第一乘积的第二分片;
第一安全求和子单元,用于根据本方具有的所述第一安全乘法子单元得到的所述样本集合中各样本分别对应的各第一乘积的第一分片,与所述第二方具有的各第一乘积的第二分片,通过秘密共享的方式,得到各第一乘积之和的第一分片;所述第二方得到各第一乘积之和的第二分片;
第一确定子单元,用于从所述第二方接收各第一乘积之和的第二分片,根据所述第一安全求和子单元得到的各第一乘积之和的第一分片以及各第一乘积之和的第二分片,确定各第一乘积之和,作为针对第一隐私数据中的第一数据项求和的最终结果。
可选地,作为一个实施例,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最大值;所述统计单元63包括:
正偏移子单元,用于对各样本的第一数据项均加上第一正数,得到各样本分别对应的第一偏大数据项;所述第一偏大数据项均大于零;
第二安全乘法子单元,用于根据本方具有的所述正偏移子单元得到的所述目标样本对应的第一偏大数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏大数据项和所述结果逻辑值的第二乘积的第一分片;所述第二方得到所述第二乘积的第二分片;
第一安全求最大值子单元,用于根据本方具有的所述第二安全乘法子单元得到的所述样本集合中各样本分别对应的各第二乘积的第一分片,与所述第二方具有的各第二乘积的第二分片,通过秘密共享的方式,得到各第二乘积中的最大值的第一分片;所述第二方得到各第二乘积中的最大值的第二分片;
第二确定子单元,用于从所述第二方接收各第二乘积中的最大值的第二分片,根据所述第一安全求最大值子单元得到的各第二乘积中的最大值的第一分片以及各第二乘积中的最大值的第二分片,确定各第二乘积中的最大值,将各第二乘积中的最大值减去所述第一正数,作为针对第一隐私数据中的第一数据项求最大值的最终结果。
可选地,作为一个实施例,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最小值;所述统计单元63包括:
负偏移子单元,用于对各样本的第一数据项均减去第二正数,得到各样本分别对应的第一偏小数据项;所述第一偏小数据项均小于零;
第三安全乘法子单元,用于根据本方具有的所述负偏移子单元得到的所述目标样本对应的第一偏小数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏小数据项和所述结果逻辑值的第三乘积的第一分片;所述第二方得到所述第三乘积的第二分片;
第一安全求最小值子单元,用于根据本方具有的所述第三安全乘法子单元得到的所述样本集合中各样本分别对应的各第三乘积的第一分片,与所述第二方具有的各第三乘积的第二分片,通过秘密共享的方式,得到各第三乘积中的最小值的第一分片;所述第二方得到各第三乘积中的最小值的第二分片;
第三确定子单元,用于从所述第二方接收各第三乘积中的最小值的第二分片,根据所述第一安全求最小值子单元得到的各第三乘积中的最小值的第一分片以及各第三乘积中的最小值的第二分片,确定各第三乘积中的最小值,将各第三乘积中的最小值加上所述第二正数,作为针对第一隐私数据中的第一数据项求最小值的最终结果。
可选地,作为一个实施例,所述样本统计运算包括,针对第二隐私数据中的第二数据项求和;所述统计单元63包括:
第四安全乘法子单元,用于根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二数据项和所述结果逻辑值的第四乘积的第一分片;所述第二方得到所述第四乘积的第二分片;
第二安全求和子单元,用于根据本方具有的所述第四安全乘法子单元得到的所述样本集合中各样本分别对应的各第四乘积的第一分片,与所述第二方具有的各第四乘积的第二分片,通过秘密共享的方式,得到各第四乘积之和的第一分片;所述第二方得到各第四乘积之和的第二分片;
第四确定子单元,用于从所述第二方接收各第四乘积之和的第二分片,根据所述第二安全求和子单元得到的各第四乘积之和的第一分片以及各第四乘积之和的第二分片,确定各第四乘积之和,作为针对第二隐私数据中的第二数据项求和的最终结果。
可选地,作为一个实施例,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最大值;所述统计单元63包括:
第五安全乘法子单元,用于根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏大数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏大数据项和所述结果逻辑值的第五乘积的第一分片;所述第二方得到所述第五乘积的第二分片;所述第二偏大数据项为所述第二方对各样本的第二数据项均加上第三正数得到的;所述第二偏大数据项均大于零;
第二安全求最大值子单元,用于根据本方具有的所述第五安全乘法子单元得到的所述样本集合中各样本分别对应的各第五乘积的第一分片,与所述第二方具有的各第五乘积的第二分片,通过秘密共享的方式,得到各第五乘积中的最大值的第一分片;所述第二方得到各第五乘积中的最大值的第二分片;
第五确定子单元,用于向所述第二方发送所述第二安全求最大值子单元得到的各第五乘积中的最大值的第一分片,以使所述第二方根据各第五乘积中的最大值的第一分片以及各第五乘积中的最大值的第二分片,确定各第五乘积中的最大值,将各第五乘积中的最大值减去所述第三正数,作为针对第二隐私数据中的第二数据项求最大值的最终结果。
可选地,作为一个实施例,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最小值;所述统计单元63包括:
第六安全乘法子单元,用于根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏小数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏小数据项和所述结果逻辑值的第六乘积的第一分片;所述第二方得到所述第六乘积的第二分片;所述第二偏小数据项为所述第二方对各样本的第二数据项均减去第四正数得到的;所述第二偏小数据项均小于零;
第二安全求最小值子单元,用于根据本方具有的所述第六安全乘法子单元得到的所述样本集合中各样本分别对应的各第六乘积的第一分片,与所述第二方具有的各第六乘积的第二分片,通过秘密共享的方式,得到各第六乘积中的最小值的第一分片;所述第二方得到各第六乘积中的最小值的第二分片;
第六确定子单元,用于向所述第二方发送所述第二安全求最小值子单元得到的各第六乘积中的最小值的第一分片,以使所述第二方根据各第六乘积中的最小值的第一分片以及各第六乘积中的最小值的第二分片,确定各第六乘积中的最小值,将各第六乘积中的最小值加上所述第四正数,作为针对第二隐私数据中的第二数据项求最小值的最终结果。
可选地,作为一个实施例,所述样本统计运算包括,对满足所述总过滤条件的样本进行计数;所述统计单元63包括:
第七安全乘法子单元,用于根据本方具有的所述目标样本对应的常数1和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的常数1和所述结果逻辑值的第七乘积的第一分片;所述第二方得到所述第七乘积的第二分片;
第三安全求和子单元,用于根据本方具有的所述第七安全乘法子单元得到的所述样本集合中各样本分别对应的各第七乘积的第一分片,与所述第二方具有的各第七乘积的第二分片,通过秘密共享的方式,得到各第七乘积之和的第一分片;所述第二方得到各第七乘积之和的第二分片;
第七确定子单元,用于从所述第二方接收各第七乘积之和的第二分片,根据所述第三安全求和子单元得到的各第七乘积之和的第一分片以及各第七乘积之和的第二分片,确定各第七乘积之和,作为对满足所述总过滤条件的样本进行计数的最终结果。
根据另一方面的实施例,还提供一种多方联合进行安全统计的装置,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述样本集合中各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述装置设置于所述第二方,用于执行本说明书实施例提供的多方联合进行安全统计的方法中第二方执行的动作。图7示出根据另一个实施例的多方联合进行安全统计的装置的示意性框图。如图7所示,该装置700包括:
单方计算单元71,用于根据目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值;所述目标样本为所述样本集合中的任一样本;
逻辑推理单元72,用于根据所述单方计算单元71得到的第二逻辑值与所述第一过滤条件的第一过滤结果的各可能值,确定所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值;
不经意传输单元73,用于根据本方具有的所述逻辑推理单元72得到的所述目标样本对应的所述结果逻辑值的各可能取值,与所述第一方具有的第一逻辑值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第二分片;所述第一方得到所述结果逻辑值的第一分片;所述第一逻辑值由所述第一方根据所述目标样本对应的第一隐私数据计算得到的;
统计单元74,用于根据本方具有的所述不经意传输单元73得到的所述样本集合中各样本的结果逻辑值的第二分片,与所述第一方具有的各样本的结果逻辑值的第一分片,通过秘密共享的方式,进行样本统计运算。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2或图5所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2或图5所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (22)
1.一种多方联合进行安全统计的方法,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述方法通过所述第一方执行,包括:
根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;
根据本方具有的所述第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;
根据本方具有的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。
2.如权利要求1所述的方法,其中,所述样本对应于用户,所述第一隐私数据包括用户的若干第一特征项,所述第二隐私数据包括用户的若干第二特征项。
3.如权利要求1所述的方法,其中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求和;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的第一数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一数据项和所述结果逻辑值的第一乘积的第一分片;所述第二方得到所述第一乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第一乘积的第一分片,与所述第二方具有的各第一乘积的第二分片,通过秘密共享的方式,得到各第一乘积之和的第一分片;所述第二方得到各第一乘积之和的第二分片;
从所述第二方接收各第一乘积之和的第二分片,根据各第一乘积之和的第一分片以及各第一乘积之和的第二分片,确定各第一乘积之和,作为针对第一隐私数据中的第一数据项求和的最终结果。
4.如权利要求1所述的方法,其中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最大值;所述进行样本统计运算的步骤包括:
对各样本的第一数据项均加上第一正数,得到各样本分别对应的第一偏大数据项;所述第一偏大数据项均大于零;
根据本方具有的所述目标样本对应的第一偏大数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏大数据项和所述结果逻辑值的第二乘积的第一分片;所述第二方得到所述第二乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第二乘积的第一分片,与所述第二方具有的各第二乘积的第二分片,通过秘密共享的方式,得到各第二乘积中的最大值的第一分片;所述第二方得到各第二乘积中的最大值的第二分片;
从所述第二方接收各第二乘积中的最大值的第二分片,根据各第二乘积中的最大值的第一分片以及各第二乘积中的最大值的第二分片,确定各第二乘积中的最大值,将各第二乘积中的最大值减去所述第一正数,作为针对第一隐私数据中的第一数据项求最大值的最终结果。
5.如权利要求1所述的方法,其中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最小值;所述进行样本统计运算的步骤包括:
对各样本的第一数据项均减去第二正数,得到各样本分别对应的第一偏小数据项;所述第一偏小数据项均小于零;
根据本方具有的所述目标样本对应的第一偏小数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏小数据项和所述结果逻辑值的第三乘积的第一分片;所述第二方得到所述第三乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第三乘积的第一分片,与所述第二方具有的各第三乘积的第二分片,通过秘密共享的方式,得到各第三乘积中的最小值的第一分片;所述第二方得到各第三乘积中的最小值的第二分片;
从所述第二方接收各第三乘积中的最小值的第二分片,根据各第三乘积中的最小值的第一分片以及各第三乘积中的最小值的第二分片,确定各第三乘积中的最小值,将各第三乘积中的最小值加上所述第二正数,作为针对第一隐私数据中的第一数据项求最小值的最终结果。
6.如权利要求1所述的方法,其中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求和;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二数据项和所述结果逻辑值的第四乘积的第一分片;所述第二方得到所述第四乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第四乘积的第一分片,与所述第二方具有的各第四乘积的第二分片,通过秘密共享的方式,得到各第四乘积之和的第一分片;所述第二方得到各第四乘积之和的第二分片;
从所述第二方接收各第四乘积之和的第二分片,根据各第四乘积之和的第一分片以及各第四乘积之和的第二分片,确定各第四乘积之和,作为针对第二隐私数据中的第二数据项求和的最终结果。
7.如权利要求1所述的方法,其中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最大值;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏大数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏大数据项和所述结果逻辑值的第五乘积的第一分片;所述第二方得到所述第五乘积的第二分片;所述第二偏大数据项为所述第二方对各样本的第二数据项均加上第三正数得到的;所述第二偏大数据项均大于零;
根据本方具有的所述样本集合中各样本分别对应的各第五乘积的第一分片,与所述第二方具有的各第五乘积的第二分片,通过秘密共享的方式,得到各第五乘积中的最大值的第一分片;所述第二方得到各第五乘积中的最大值的第二分片;
向所述第二方发送各第五乘积中的最大值的第一分片,以使所述第二方根据各第五乘积中的最大值的第一分片以及各第五乘积中的最大值的第二分片,确定各第五乘积中的最大值,将各第五乘积中的最大值减去所述第三正数,作为针对第二隐私数据中的第二数据项求最大值的最终结果。
8.如权利要求1所述的方法,其中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最小值;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏小数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏小数据项和所述结果逻辑值的第六乘积的第一分片;所述第二方得到所述第六乘积的第二分片;所述第二偏小数据项为所述第二方对各样本的第二数据项均减去第四正数得到的;所述第二偏小数据项均小于零;
根据本方具有的所述样本集合中各样本分别对应的各第六乘积的第一分片,与所述第二方具有的各第六乘积的第二分片,通过秘密共享的方式,得到各第六乘积中的最小值的第一分片;所述第二方得到各第六乘积中的最小值的第二分片;
向所述第二方发送各第六乘积中的最小值的第一分片,以使所述第二方根据各第六乘积中的最小值的第一分片以及各第六乘积中的最小值的第二分片,确定各第六乘积中的最小值,将各第六乘积中的最小值加上所述第四正数,作为针对第二隐私数据中的第二数据项求最小值的最终结果。
9.如权利要求1所述的方法,其中,所述样本统计运算包括,对满足所述总过滤条件的样本进行计数;所述进行样本统计运算的步骤包括:
根据本方具有的所述目标样本对应的常数1和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的常数1和所述结果逻辑值的第七乘积的第一分片;所述第二方得到所述第七乘积的第二分片;
根据本方具有的所述样本集合中各样本分别对应的各第七乘积的第一分片,与所述第二方具有的各第七乘积的第二分片,通过秘密共享的方式,得到各第七乘积之和的第一分片;所述第二方得到各第七乘积之和的第二分片;
从所述第二方接收各第七乘积之和的第二分片,根据各第七乘积之和的第一分片以及各第七乘积之和的第二分片,确定各第七乘积之和,作为对满足所述总过滤条件的样本进行计数的最终结果。
10.一种多方联合进行安全统计的方法,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述样本集合中各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述方法通过所述第二方执行,包括:
根据目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值;所述目标样本为所述样本集合中的任一样本;
根据所述第二逻辑值与所述第一过滤条件的第一过滤结果的各可能值,确定所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值;
根据本方具有的所述目标样本对应的所述结果逻辑值的各可能取值,与所述第一方具有的第一逻辑值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第二分片;所述第一方得到所述结果逻辑值的第一分片;所述第一逻辑值由所述第一方根据所述目标样本对应的第一隐私数据计算得到的;
根据本方具有的所述样本集合中各样本的结果逻辑值的第二分片,与所述第一方具有的各样本的结果逻辑值的第一分片,通过秘密共享的方式,进行样本统计运算。
11.一种多方联合进行安全统计的装置,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述装置设置于所述第一方,包括:
单方计算单元,用于根据目标样本对应的第一隐私数据,计算所述目标样本针对所述第一过滤条件的第一过滤结果的第一逻辑值;所述目标样本为所述样本集合中的任一样本;
不经意传输单元,用于根据本方具有的所述单方计算单元得到的第一逻辑值,与所述第二方提供的所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第一分片;所述第二方得到所述结果逻辑值的第二分片;其中,所述结果逻辑值的各可能取值由所述第二方根据所述目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值,再根据所述第二逻辑值与所述第一过滤结果的各可能值确定的;
统计单元,用于根据本方具有的所述不经意传输单元得到的所述样本集合中各样本的结果逻辑值的第一分片,与所述第二方具有的各样本的结果逻辑值的第二分片,通过秘密共享的方式,进行样本统计运算。
12.如权利要求11所述的装置,其中,所述样本对应于用户,所述第一隐私数据包括用户的若干第一特征项,所述第二隐私数据包括用户的若干第二特征项。
13.如权利要求11所述的装置,其中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求和;所述统计单元包括:
第一安全乘法子单元,用于根据本方具有的所述目标样本对应的第一数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一数据项和所述结果逻辑值的第一乘积的第一分片;所述第二方得到所述第一乘积的第二分片;
第一安全求和子单元,用于根据本方具有的所述第一安全乘法子单元得到的所述样本集合中各样本分别对应的各第一乘积的第一分片,与所述第二方具有的各第一乘积的第二分片,通过秘密共享的方式,得到各第一乘积之和的第一分片;所述第二方得到各第一乘积之和的第二分片;
第一确定子单元,用于从所述第二方接收各第一乘积之和的第二分片,根据所述第一安全求和子单元得到的各第一乘积之和的第一分片以及各第一乘积之和的第二分片,确定各第一乘积之和,作为针对第一隐私数据中的第一数据项求和的最终结果。
14.如权利要求11所述的装置,其中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最大值;所述统计单元包括:
正偏移子单元,用于对各样本的第一数据项均加上第一正数,得到各样本分别对应的第一偏大数据项;所述第一偏大数据项均大于零;
第二安全乘法子单元,用于根据本方具有的所述正偏移子单元得到的所述目标样本对应的第一偏大数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏大数据项和所述结果逻辑值的第二乘积的第一分片;所述第二方得到所述第二乘积的第二分片;
第一安全求最大值子单元,用于根据本方具有的所述第二安全乘法子单元得到的所述样本集合中各样本分别对应的各第二乘积的第一分片,与所述第二方具有的各第二乘积的第二分片,通过秘密共享的方式,得到各第二乘积中的最大值的第一分片;所述第二方得到各第二乘积中的最大值的第二分片;
第二确定子单元,用于从所述第二方接收各第二乘积中的最大值的第二分片,根据所述第一安全求最大值子单元得到的各第二乘积中的最大值的第一分片以及各第二乘积中的最大值的第二分片,确定各第二乘积中的最大值,将各第二乘积中的最大值减去所述第一正数,作为针对第一隐私数据中的第一数据项求最大值的最终结果。
15.如权利要求11所述的装置,其中,所述样本统计运算包括,针对第一隐私数据中的第一数据项求最小值;所述统计单元包括:
负偏移子单元,用于对各样本的第一数据项均减去第二正数,得到各样本分别对应的第一偏小数据项;所述第一偏小数据项均小于零;
第三安全乘法子单元,用于根据本方具有的所述负偏移子单元得到的所述目标样本对应的第一偏小数据项和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第一偏小数据项和所述结果逻辑值的第三乘积的第一分片;所述第二方得到所述第三乘积的第二分片;
第一安全求最小值子单元,用于根据本方具有的所述第三安全乘法子单元得到的所述样本集合中各样本分别对应的各第三乘积的第一分片,与所述第二方具有的各第三乘积的第二分片,通过秘密共享的方式,得到各第三乘积中的最小值的第一分片;所述第二方得到各第三乘积中的最小值的第二分片;
第三确定子单元,用于从所述第二方接收各第三乘积中的最小值的第二分片,根据所述第一安全求最小值子单元得到的各第三乘积中的最小值的第一分片以及各第三乘积中的最小值的第二分片,确定各第三乘积中的最小值,将各第三乘积中的最小值加上所述第二正数,作为针对第一隐私数据中的第一数据项求最小值的最终结果。
16.如权利要求11所述的装置,其中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求和;所述统计单元包括:
第四安全乘法子单元,用于根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二数据项和所述结果逻辑值的第四乘积的第一分片;所述第二方得到所述第四乘积的第二分片;
第二安全求和子单元,用于根据本方具有的所述第四安全乘法子单元得到的所述样本集合中各样本分别对应的各第四乘积的第一分片,与所述第二方具有的各第四乘积的第二分片,通过秘密共享的方式,得到各第四乘积之和的第一分片;所述第二方得到各第四乘积之和的第二分片;
第四确定子单元,用于从所述第二方接收各第四乘积之和的第二分片,根据所述第二安全求和子单元得到的各第四乘积之和的第一分片以及各第四乘积之和的第二分片,确定各第四乘积之和,作为针对第二隐私数据中的第二数据项求和的最终结果。
17.如权利要求11所述的装置,其中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最大值;所述统计单元包括:
第五安全乘法子单元,用于根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏大数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏大数据项和所述结果逻辑值的第五乘积的第一分片;所述第二方得到所述第五乘积的第二分片;所述第二偏大数据项为所述第二方对各样本的第二数据项均加上第三正数得到的;所述第二偏大数据项均大于零;
第二安全求最大值子单元,用于根据本方具有的所述第五安全乘法子单元得到的所述样本集合中各样本分别对应的各第五乘积的第一分片,与所述第二方具有的各第五乘积的第二分片,通过秘密共享的方式,得到各第五乘积中的最大值的第一分片;所述第二方得到各第五乘积中的最大值的第二分片;
第五确定子单元,用于向所述第二方发送所述第二安全求最大值子单元得到的各第五乘积中的最大值的第一分片,以使所述第二方根据各第五乘积中的最大值的第一分片以及各第五乘积中的最大值的第二分片,确定各第五乘积中的最大值,将各第五乘积中的最大值减去所述第三正数,作为针对第二隐私数据中的第二数据项求最大值的最终结果。
18.如权利要求11所述的装置,其中,所述样本统计运算包括,针对第二隐私数据中的第二数据项求最小值;所述统计单元包括:
第六安全乘法子单元,用于根据本方具有的所述目标样本对应的结果逻辑值的第一分片,与所述第二方具有的第二偏小数据项和所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的第二偏小数据项和所述结果逻辑值的第六乘积的第一分片;所述第二方得到所述第六乘积的第二分片;所述第二偏小数据项为所述第二方对各样本的第二数据项均减去第四正数得到的;所述第二偏小数据项均小于零;
第二安全求最小值子单元,用于根据本方具有的所述第六安全乘法子单元得到的所述样本集合中各样本分别对应的各第六乘积的第一分片,与所述第二方具有的各第六乘积的第二分片,通过秘密共享的方式,得到各第六乘积中的最小值的第一分片;所述第二方得到各第六乘积中的最小值的第二分片;
第六确定子单元,用于向所述第二方发送所述第二安全求最小值子单元得到的各第六乘积中的最小值的第一分片,以使所述第二方根据各第六乘积中的最小值的第一分片以及各第六乘积中的最小值的第二分片,确定各第六乘积中的最小值,将各第六乘积中的最小值加上所述第四正数,作为针对第二隐私数据中的第二数据项求最小值的最终结果。
19.如权利要求11所述的装置,其中,所述样本统计运算包括,对满足所述总过滤条件的样本进行计数;所述统计单元包括:
第七安全乘法子单元,用于根据本方具有的所述目标样本对应的常数1和所述结果逻辑值的第一分片,与所述第二方具有的所述结果逻辑值的第二分片,通过秘密共享的方式,得到所述目标样本对应的常数1和所述结果逻辑值的第七乘积的第一分片;所述第二方得到所述第七乘积的第二分片;
第三安全求和子单元,用于根据本方具有的所述第七安全乘法子单元得到的所述样本集合中各样本分别对应的各第七乘积的第一分片,与所述第二方具有的各第七乘积的第二分片,通过秘密共享的方式,得到各第七乘积之和的第一分片;所述第二方得到各第七乘积之和的第二分片;
第七确定子单元,用于从所述第二方接收各第七乘积之和的第二分片,根据所述第三安全求和子单元得到的各第七乘积之和的第一分片以及各第七乘积之和的第二分片,确定各第七乘积之和,作为对满足所述总过滤条件的样本进行计数的最终结果。
20.一种多方联合进行安全统计的装置,所述多方包括第一方和第二方,所述第一方具有样本集合中各样本分别对应的第一隐私数据,所述第二方具有所述样本集合中各样本分别对应的第二隐私数据;所述安全统计包括,对所述各样本中符合总过滤条件的样本进行统计运算,所述总过滤条件包括,针对所述第一隐私数据的第一过滤条件和针对所述第二隐私数据的第二过滤条件;所述装置设置于所述第二方,包括:
单方计算单元,用于根据目标样本对应的第二隐私数据,计算所述目标样本针对所述第二过滤条件的第二过滤结果的第二逻辑值;所述目标样本为所述样本集合中的任一样本;
逻辑推理单元,用于根据所述单方计算单元得到的第二逻辑值与所述第一过滤条件的第一过滤结果的各可能值,确定所述目标样本针对总过滤条件的总过滤结果的结果逻辑值的各可能取值;
不经意传输单元,用于根据本方具有的所述逻辑推理单元得到的所述目标样本对应的所述结果逻辑值的各可能取值,与所述第一方具有的第一逻辑值,通过叠加秘密共享的扩展不经意传输方式,得到所述结果逻辑值的第二分片;所述第一方得到所述结果逻辑值的第一分片;所述第一逻辑值由所述第一方根据所述目标样本对应的第一隐私数据计算得到的;
统计单元,用于根据本方具有的所述不经意传输单元得到的所述样本集合中各样本的结果逻辑值的第二分片,与所述第一方具有的各样本的结果逻辑值的第一分片,通过秘密共享的方式,进行样本统计运算。
21.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-10中任一项的所述的方法。
22.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项的所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010948796.9A CN112084530B (zh) | 2020-09-10 | 2020-09-10 | 多方联合进行安全统计的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010948796.9A CN112084530B (zh) | 2020-09-10 | 2020-09-10 | 多方联合进行安全统计的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112084530A CN112084530A (zh) | 2020-12-15 |
CN112084530B true CN112084530B (zh) | 2023-10-27 |
Family
ID=73736376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010948796.9A Active CN112084530B (zh) | 2020-09-10 | 2020-09-10 | 多方联合进行安全统计的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112084530B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018174873A1 (en) * | 2017-03-22 | 2018-09-27 | Visa International Service Association | Privacy-preserving machine learning |
CN111008406A (zh) * | 2019-12-20 | 2020-04-14 | 支付宝(杭州)信息技术有限公司 | 基于隐私数据的一致性检测进行业务处理的方法及装置 |
CN111523145A (zh) * | 2020-07-03 | 2020-08-11 | 支付宝(杭州)信息技术有限公司 | 针对隐私数据进行安全运算的方法和装置 |
-
2020
- 2020-09-10 CN CN202010948796.9A patent/CN112084530B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018174873A1 (en) * | 2017-03-22 | 2018-09-27 | Visa International Service Association | Privacy-preserving machine learning |
CN111008406A (zh) * | 2019-12-20 | 2020-04-14 | 支付宝(杭州)信息技术有限公司 | 基于隐私数据的一致性检测进行业务处理的方法及装置 |
CN111523145A (zh) * | 2020-07-03 | 2020-08-11 | 支付宝(杭州)信息技术有限公司 | 针对隐私数据进行安全运算的方法和装置 |
Non-Patent Citations (1)
Title |
---|
保护隐私的分布式朴素贝叶斯挖掘;叶云;石聪聪;余勇;怀梦迪;林为民;高鹏;;应用科学学报(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112084530A (zh) | 2020-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xing et al. | Mutual privacy preserving $ k $-means clustering in social participatory sensing | |
CN108519981B (zh) | 一种跨链智能合约合作可能性评估方法 | |
CN112084384B (zh) | 多方联合进行安全统计的方法和装置 | |
US20230017374A1 (en) | Secure multi-party computation of differentially private heavy hitters | |
CN112532383A (zh) | 一种基于秘密分享的隐私保护计算方法 | |
CN112685788B (zh) | 数据处理方法和装置 | |
CN112084530B (zh) | 多方联合进行安全统计的方法和装置 | |
Wong et al. | Privacy-preserving similarity coefficients for binary data | |
CN112199639A (zh) | 多方联合进行安全统计的方法和装置 | |
Rao et al. | Review of certain recent advances in randomized response techniques | |
CN110222092A (zh) | 一种基于差分隐私保护技术的多方统计查询方法 | |
Li | A personalized privacy-preserving scheme for federated learning | |
Zhan et al. | Privacy-preserving collaborative sequential pattern mining | |
Dhivakar et al. | A survey on privacy preservation recent approaches and techniques | |
CN116244650B (zh) | 特征分箱方法、装置、电子设备和计算机可读存储介质 | |
Lefevre et al. | Comparison of individual risk models | |
Chen et al. | Erdős–Birch type question in Nr | |
Wang | Research on privacy preserving association rule mining a survey | |
Su et al. | Importance of data standardization in privacy-preserving k-means clustering | |
CN115114582A (zh) | 实现隐私保护的多方联合进行数据统计的方法及装置 | |
He et al. | Secure construction and publication of contingency tables from distributed data | |
WO2021230771A2 (en) | Method of piece data synchronization describing a single entity and stored in different databases | |
CN117371028A (zh) | 数据匹配方法、装置、计算机设备及存储介质 | |
CN110580260A (zh) | 针对特定群体的数据挖掘方法及装置 | |
Kuksina | Differential privacy by sampling |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |