CN111967050B - 两方数据分组统计方法、装置及系统 - Google Patents
两方数据分组统计方法、装置及系统 Download PDFInfo
- Publication number
- CN111967050B CN111967050B CN202010854584.4A CN202010854584A CN111967050B CN 111967050 B CN111967050 B CN 111967050B CN 202010854584 A CN202010854584 A CN 202010854584A CN 111967050 B CN111967050 B CN 111967050B
- Authority
- CN
- China
- Prior art keywords
- data
- variable
- ciphertext
- sample
- data owner
- 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 70
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 claims abstract description 19
- 208000035475 disorder Diseases 0.000 claims abstract description 17
- 238000012545 processing Methods 0.000 claims description 63
- 230000008569 process Effects 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 11
- 238000010276 construction Methods 0.000 claims description 11
- 238000000586 desensitisation Methods 0.000 claims description 10
- 238000012935 Averaging Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 5
- 201000010099 disease Diseases 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004321 preservation Methods 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
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Hardware Design (AREA)
- Algebra (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书的实施例提供两方数据分组统计方法、装置和系统。第二数据拥有方将各个第一数据样本的第二分组变量的变量值密文发送给第一数据拥有方。第一数据拥有方使用第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本,并将乱序处理后的第二数据样本发送给第二数据拥有方。第二数据拥有方解密第二数据样本中的第二分组变量的变量值密文,并根据第一分组变量的变量值和解密出的第二分组变量的变量值进行样本分组。针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计,并将密文统计结果发送给第一数据拥有方。第一数据拥有方解密各个密文统计结果得到分组统计结果。
Description
技术领域
本说明书实施例通常涉及数据处理领域,尤其涉及用于经由第一和第二数据拥有方联合分组统计的方法、装置及系统。
背景技术
在很多应用场景下,存在两个数据拥有方(例如,个体或机构)联合进行数据统计的需求,比如,若干商业保险机构联合统计得到行业总体情况,或者若干医疗机构联合统计得到某些疾病的总体情况。
然而,在进行联合统计时,每个数据拥有方的用户数据都是机密数据,需要进行隐私保护,不能泄露给对方。如何在确保两方数据隐私安全的情况下实现分组统计成为亟待解决的问题。
发明内容
鉴于上述,本说明书实施例提供用于经由第一和第二数据拥有方联合分组统计的方法、装置和系统。利用该方法、装置和系统,在第一数据拥有方处,使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及从第二数据拥有方获取的第二分组变量的变量值密文构建第二数据样本,并将所构建的第二数据样本经过乱序处理后发送给第二数据拥有方。在第二数据拥有方处,根据第二数据样本中的第一分组变量的变量值以及解密出的第二分组变量的变量值对第二数据样本进行样本分组,然后,针对各个样本分组,根据该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到密文统计结果,由此得到根据第一分组变量和第二分组变量分组出的各个分组的密文统计结果,并在第一数据拥有方处对各个分组的密文统计结果进行解密,由此得到分组统计结果。按照上述方案,由于第一数据拥有方提供给第二数据拥有方的数据是密文数据,从而第二数据拥有方无法获悉第一数据拥有方的分组变量信息和统计变量信息,由此实现两方数据的隐私保护。
根据本说明书实施例的一个方面,提供一种用于经由第一和第二数据拥有方联合分组统计的方法,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述方法包括:第二数据拥有方将数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文发送给第一数据拥有方;在第一数据拥有方处,对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本,并将经过乱序处理后的各个第二数据样本发送给第二数据拥有方;在第二数据拥有方处,对各个第二数据样本中的第二分组变量的变量值密文进行解密,根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组,针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果,并将各个样本分组的第一密文统计结果发送给第一数据拥有方;以及在第一数据拥有方处,对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
可选地,在一个示例中,所述方法还可以包括:在第一数据拥有方处,对各个第一数据样本的第二分组变量的变量值密文进行重随机处理,所述第二数据样本使用第一分组变量的变量值、统计变量的统计量密文以及重随机处理后的第二分组变量的变量值密文构建。
可选地,在一个示例中,所述第二数据拥有方具有公钥/私钥对,所述第二数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的第二分组变量的变量值进行加密,所述方法还包括:第二数据拥有方将所述公钥发送给第一数据拥有方,在第一数据拥有方处,对各个第一数据样本的第二分组变量的变量值密文进行重随机处理包括:在第一数据拥有方处,针对各个第一数据样本的第二分组变量的变量值密文,使用所述公钥生成0的随机密文,并将所生成的随机密文与该变量值密文同态相加得到经过重随机处理后的第二分组变量的变量值密文。
可选地,在一个示例中,所述方法还可以包括:在第二数据拥有方处,对各个样本分组的第一密文统计结果进行重随机处理,将各个样本分组的第一密文统计结果发送给第一数据拥有方包括:将各个样本分组的经过重随机处理后的第一密文统计结果发送给第一数据拥有方。
可选地,在一个示例中,所述第一数据拥有方具有公钥/私钥对,所述第一数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,所述方法还包括:第一数据拥有方将所述公钥发送给第二数据拥有方,在第二数据拥有方处,对各个样本分组的第一密文统计结果进行重随机处理包括:在第二数据拥有方处,针对各个样本分组,使用所述公钥生成0的随机密文,并将所生成的随机密文与该样本分组的第一密文统计结果同态相加得到该样本分组的第二密文统计结果。
可选地,在一个示例中,将各个样本分组的第一密文统计结果发送给第一数据拥有方包括:将各个样本分组的第一密文统计结果以及对应的第二分组变量的变量值发送给第一数据拥有方。
可选地,在一个示例中,所述加密过程采用同态加密算法实现。
可选地,在一个示例中,各个第二数据样本中的第一分组变量的变量值是经过脱敏处理后的变量值。
可选地,在一个示例中,所述分组统计包括:分组求和;分组计数;分组求均值;或者分组求方差。
根据本说明书的实施例的另一方面,提供一种用于经由第一和第二数据拥有方联合分组统计的方法,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述方法应用于第一数据拥有方,所述方法包括:从第二数据拥有方获取数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文;对各个第一数据样本的统计变量的统计量进行加密得到统计量密文;使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本;将经过乱序处理后的各个第二数据样本发送给第二数据拥有方,各个第二数据样本中的第二分组变量的变量值密文经由第二数据拥有方解密后,各个第二数据样本中的解密出的第二分组变量的变量值和第一分组变量的变量值被第二数据拥有方使用来对第二数据样本进行样本分组;从第二数据拥有方获取各个样本分组的第一密文统计结果,各个样本分组的第一密文统计由第二数据拥有方使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到;以及对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
根据本说明书的实施例的另一方面,提供一种用于经由第一和第二数据拥有方联合分组统计的方法,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述方法应用于第二数据拥有方,所述方法包括:将数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文发送给第一数据拥有方;从第一数据拥有方获取经过乱序处理后的各个第二数据样本,各个第二数据样本由第一数据拥有方使用各个第一数据样本的第一分组变量的变量值、经过加密后的统计变量的统计量密文以及第二分组变量的变量值密文构建;对各个第二数据样本中的第二分组变量的变量值密文进行解密;根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组;针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果;以及将各个样本分组的第一密文统计结果发送给第一数据拥有方。
根据本说明书的实施例的另一方面,提供一种用于经由第一和第二数据拥有方联合分组统计的装置,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述装置应用于第一数据拥有方,所述装置包括:密文获取单元,从第二数据拥有方获取数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文;数据加密单元,对各个第一数据样本的统计变量的统计量进行加密得到统计量密文;样本构建单元,使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本;乱序处理单元,对各个第二数据样本进行乱序处理;数据发送单元,将经过乱序处理后的各个第二数据样本发送给第二数据拥有方,各个第二数据样本中的第二分组变量的变量值密文经由第二数据拥有方解密后,各个第二数据样本中的解密出的第二分组变量的变量值和第一分组变量的变量值被第二数据拥有方使用来对第二数据样本进行样本分组;统计结果获取单元,从第二数据拥有方获取各个样本分组的第一密文统计结果,各个样本分组的第一密文统计由第二数据拥有方使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到;以及数据解密单元,对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
可选地,在一个示例中,所述装置还可以包括:重随机处理单元,对各个第一数据样本的第二分组变量的变量值密文进行重随机处理,所述样本构建单元使用第一分组变量的变量值、统计变量的统计量密文以及重随机处理后的第二分组变量的变量值密文构建所述第二数据样本。
可选地,在一个示例中,所述第二数据拥有方具有公钥/私钥对,所述第二数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的第二分组变量的变量值进行加密,所述装置还可以包括:密钥获取单元,从第二数据拥有方获取所述公钥,针对各个第一数据样本的第二分组变量的变量值密文,所述重随机处理单元使用所述公钥生成0的随机密文,并将所生成的随机密文与该变量值密文同态相加得到经过重随机处理后的第二分组变量的变量值密文。
可选地,在一个示例中,所述第一数据拥有方具有公钥/私钥对,所述数据加密单元使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,所述数据发送单元将所述公钥发送给第二数据拥有方,所述公钥被第二数据拥有方使用来针对各个样本分组生成0的随机密文,所生成的随机密文用于对该样本分组的第一密文统计结果进行重随机处理。
可选地,在一个示例中,所述装置还可以包括:脱敏处理单元,对各个第一数据样本中的第一分组变量的变量值进行脱敏处理,所述样本构建单元使用经过脱敏处理后的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建所述第二数据样本。
根据本说明书的实施例的另一方面,提供一种用于经由第一和第二数据拥有方联合分组统计的装置,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述装置应用于第二数据拥有方,所述装置包括:数据加密单元,对数据样本集中的各个第一数据样本的第二分组变量的变量值进行加密得到变量值密文;密文发送单元,将数据样本集中的各个第一数据样本的第二分组变量的变量值密文发送给第一数据拥有方;数据获取单元,从第一数据拥有方获取经过乱序处理后的各个第二数据样本,各个第二数据样本由第一数据拥有方使用各个第一数据样本的第一分组变量的变量值、经过加密后的统计变量的统计量密文以及第二分组变量的变量值密文构建;数据解密单元,对各个第二数据样本中的第二分组变量的变量值密文进行解密;样本分组单元,根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组;密文统计单元,针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果;以及统计结果发送单元,将各个样本分组的第一密文统计结果发送给第一数据拥有方。
可选地,在一个示例中,所述装置还可以包括:重随机处理单元,对各个样本分组的第一密文统计结果进行重随机处理,所述统计结果发送单元将各个样本分组的经过重随机处理后的第一密文统计结果发送给第一数据拥有方。
可选地,在一个示例中,所述第一数据拥有方具有公钥/私钥对,所述第一数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,所述数据获取单元从第一数据拥有方获取所述公钥,以及针对各个样本分组,所述重随机处理单元使用所述公钥生成0的随机密文,并将所生成的随机密文与该样本分组的第一密文统计结果同态相加得到该样本分组的第二密文统计结果。
可选地,在一个示例中,所述统计结果发送单元将各个样本分组的第一密文统计结果以及对应的第二分组变量的变量值发送给第一数据拥有方。
根据本说明书的实施例的另一方面,提供一种用于经由第一和第二数据拥有方联合分组统计的系统,包括:第一数据拥有方,第一数据拥有方具有数据样本的第一分组变量和统计变量,并且包括如上所述的装置;以及第二数据拥有方,第二数据拥有方具有所述数据样本的第二分组变量,并且包括如上所述的装置。
根据本说明书的实施例的另一方面,提供一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的在第一或第二数据拥有方侧执行的方法。
根据本说明书的实施例的另一方面,提供一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的在第一或第二数据拥有方侧执行的方法。
附图说明
通过参照下面的附图,可以实现对于本说明书内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。
图1示出了根据本说明书的实施例的两个数据拥有方所具有的数据样本的示例示意图。
图2示出了根据本说明书的实施例的用于经由第一和第二数据拥有方联合分组统计的系统的架构示意图。
图3示出了根据本说明书的实施例的用于经由第一和第二数据拥有方联合分组统计的方法的示例流程图。
图4示出了根据本说明书的实施例的在第一数据拥有方侧的分组统计装置的方框图。
图5示出了根据本说明书的实施例的在第二数据拥有方侧的分组统计装置的方框图。
图6示出了根据本说明书的实施例的用于实现第一数据拥有方侧的分组统计过程的电子设备的示意图。
图7示出了根据本说明书的实施例的用于实现第二数据拥有方侧的分组统计过程的电子设备的示意图。
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明书内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
在本说明书中,术语“业务服务提供方”和“数据拥有方”可以互换使用。术语“第一数据拥有方”和“第一数据拥有方设备”可以互换使用。术语“第二数据拥有方”和“第二数据拥有方设备”可以互换使用。
在一些经由两个数据拥有方联合提供业务服务的应用场景下,需要两个数据拥有方联合进行数据统计,比如,若干商业保险机构联合统计得到行业总体情况,或者若干医疗机构联合统计得到某些疾病的总体情况。
在本说明书中,两个数据拥有方具有的数据是垂直切分数据。术语“垂直切分数据”是指对数据样本的特征变量进行垂直切分而得到的数据。例如,两个数据拥有方各自拥有用户的身份ID(比如身份证号、手机号等),并且各个数据拥有方各自拥有用户的部分特征变量(在下文中称为“变量”)。比如,一个数据拥有方拥有用户的年龄和工资信息,另一数据拥有方拥有用户的学历信息。两个数据拥有方希望联合起来对共同用户统计每种学历和每一年龄下用户的收入信息,即,按照学历和年龄分组,相同学历和年龄的用户组成一组,然后统计出每组用户的收入总和、用户数量、收入均值、收入中位数等。在进行联合统计后,两个数据拥有方中的一方或双方可以得到统计的结果,但是除了统计结果之外,不能泄露用户的变量信息。
鉴于上述,本说明书的实施例提出用于经由第一和第二数据拥有方联合分组统计的方法、装置和系统。利用该方法、装置和系统,在第一数据拥有方处,使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及从第二数据拥有方获取的第二分组变量的变量值密文构建第二数据样本,并将所构建的第二数据样本经过乱序处理后发送给第二数据拥有方。在第二数据拥有方处,根据第二数据样本中的第一分组变量的变量值以及解密出的第二分组变量的变量值对第二数据样本进行样本分组,然后,针对各个样本分组,根据该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到密文统计结果,由此得到根据第一分组变量和第二分组变量分组出的各个分组的密文统计结果,并在第一数据拥有方处对各个分组的密文统计结果进行解密,由此得到分组统计结果。按照上述方案,由于第一数据拥有方提供给第二数据拥有方的数据是密文数据,从而第二数据拥有方无法获悉第一数据拥有方的分组变量信息和统计变量信息,由此实现两方数据的隐私保护。
在本说明书中,术语“分组”也可以称为“数据分组”、“GROUP BY”或“SQL GROUPBY”,是指按照某个列col_name对数据库的一个数据表中的数据进行分组。例如,GROUP BYYear是指对数据按年份分组,相同年份的数据样本被分到同一分组中。如果把比如求和、计数、求平均值、中位数等统计函数和GROUP BY结合,则统计结果就是对分组内的数据统计。GROUP BY分组结果的数据条数,就是分组数量,比如:GROUP BY Year,全部数据里有几年,就返回几条数据。
术语“安全多方计算”又称为多方安全计算,即,多方共同计算出一个函数的结果,而不泄露这个函数各方的输入数据,计算的结果公开给其中的一方或多方。安全多方计算的一个典型应用是基于隐私保护的多方数据联合统计分析和机器学习。安全多方计算能让参与的各方在不暴露各自原始数据的情况下,能够计算出基于各方联合数据的统计结果和机器学习结果。
术语“同态加密”是一种密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与使用同一方法处理未加密的原始数据得到的输出结果一样。
下面参照附图描述根据本说明书的实施例的用于经由第一和第二数据拥有方联合分组统计的方法、装置和系统。
图1示出了根据本说明书的实施例的两个数据拥有方所具有的数据样本的示例示意图。
如图1所示,第一数据拥有方具有由数据样本ID为1到N的N个数据样本组成的第一数据集,并且针对每个数据拥有样本,具有第一分组变量A的变量值和统计变量Y的变量值。例如,对于数据样本1,具有第一分组变量A的变量值a_1和统计变量Y的变量值y_1,以及对于数据样本N,具有第一分组变量A的变量值a_N和统计变量Y的变量值y_N。这里,第一分组变量A具有m个不同值a’_1到a’_m,第k个数据样本的第一分组变量A的变量值a_k=a’_u,其中,1≤u≤m。
第二数据拥有方具有由数据样本ID为1到N的N个数据样本组成的第二数据集,并且针对每个数据拥有样本,具有第二分组变量B的变量值。例如,对于数据样本1,具有第二分组变量B的变量值b_1,以及对于数据样本N,具有第二分组变量B的变量值b_N。这里,第二分组变量B具有n个不同值b’_1到b’_n,第k个数据样本的第二分组变量B的变量值b_k=b’_v,其中,1≤v≤n。
要说明的是,图1中示出的仅仅是第一和第二数据拥有方所具有的数据的示例。在本说明书的其它实施例中,第一和/或第二数据拥有方可以具有更多的分组变量。
图2示出了根据本说明书的实施例的用于经由第一和第二数据拥有方联合分组统计的系统(下文中称为“分组统计系统”)200的架构示意图。
如图2所示,分组统计系统200包括第一数据拥有方210和第二数据拥有方220。第一数据拥有方210具有第一数据集,以及第二数据拥有方220具有第二数据集。第一数据集可以是由第一数据拥有方210在本地收集的本地数据,以及第二数据集可以是由第二数据拥有方220在本地收集的本地数据。第一数据集和第二数据集的组成示例例如可以如图1中所示。在本说明书中,分组统计的示例可以包括但不限于:分组求和、分组计数、分组求均值或者分组求方差等。
在本说明书中,第一数据拥有方210和第二数据拥有方220可以是参与业务处理的业务参与方,或者是为业务参与方提供数据的数据拥有方。例如,第一数据拥有方210和第二数据拥有方220例如可以是不同金融机构或医疗机构的私有数据存储服务器或智能终端设备。
在本说明书中,第一数据拥有方210以及第二数据拥有方220可以是任何合适的具有计算能力的计算设备。所述计算设备包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
第一数据拥有方210具有分组统计装置211,第二数据拥有方220具有分组统计装置221。第一数据拥有方210中的分组统计装置211与第二数据拥有方220中的分组统计装置221可以通过例如包括但不局限于互联网或局域网等的网络230相互通信,由此分组统计装置211与分组统计装置221协同来基于第一数据集和第二数据集进行分组求和。在本说明书的其它实施例中,第一数据拥有方210中的分组统计装置211与第二数据拥有方220中的分组统计装置221也可以直接可通信地连接来相互通信。
图3示出了根据本说明书的实施例的用于经由第一和第二数据拥有方联合分组统计的方法300的示例流程图。
如图3所示,在301,在第二数据拥有方处,对数据样本集中的各个第一数据样本的第二分组变量的变量值进行加密得到第二分组变量的变量值密文。在一个示例中,可以采用同态加密算法来实现针对各个第一数据样本的第二分组变量的变量值加密。例如,第二数据拥有方可以生成自己的同态加密公钥/私钥对(PK2,SK2),然后使用同态加密公钥PK2来对各个第一数据样本的第二分组变量的变量值b_i进行同态加密,得到第二分组变量的变量值密文E_{2,i}=E(PK2,b_i)。
在302,第二数据拥有方将各个第一数据样本的第二分组变量的变量值密文发送给第一数据拥有方。可选地,第二数据拥有方还可以将同态加密公钥PK2发送给第一数据拥有方。这里,第二数据拥有方所发送的各个第二分组变量的变量值密文带有所对应的数据样本的样本ID。
在303,在第一数据拥有方处,对各个第一数据样本的统计变量的统计量进行加密得到统计量密文。在一个示例中,针对统计量的加密过程可以采用同态加密算法来实现。例如,第一数据拥有方可以生成自己的同态加密公钥/私钥对(PK1,SK1),然后使用同态加密公钥PK1来对各个第一数据样本的统计变量的统计量进行同态加密,得到统计变量的统计量密文。在分组统计为分组求和、分组求均值的情形下,维度i处的统计变量的统计量为该统计变量的变量值y_i。在分组统计为分组计数的情形下,统计量为1。在分组统计为分组求方差的情形下,维度i处的统计量为该统计变量的变量值y_i以及变量值y_i的平方值。
在304,在第一数据拥有方处,使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本。具体地,所构建出的第二数据样本的数目与第一数据样本的数目相同,并且每个第二数据样本由对应的第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文组成,如下述表1所示。
第二数据样本ID | 甲方分组变量 | 乙方分组变量密文 | 甲方统计变量密文 |
1 | a_1 | E_{2,1}) | E_{1,1} |
… | … | … | … |
N | a_N | E_{2,N}) | E_{1,N} |
表1
在305,第一数据拥有方对所构建的各个第二数据样本进行乱序处理,并且在306,第一数据拥有方将经过乱序处理后的各个第二数据样本发送给第二数据拥有方。这里,发送给第二数据拥有方的各个第二数据样本不具有数据样本ID并且经过乱序处理,从而第二数据拥有方无法推断出各个第二数据样本所对应的数据样本ID。
在307,在第二数据拥有方处,对各个第二数据样本中的第二分组变量的变量值密文进行解密。例如,在同态加密的情形下,第二数据拥有方可以使用同态加密私钥SK2来对各个第二数据样本中的第二分组变量的变量值密文进行解密,由此得到各个第二分组变量的变量值明文。
在308,在第二数据拥有方处,根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组,由此得到基于第一分组变量和第二分组变量分组出的样本分组。
在309,在第二数据拥有方处,针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果,并且在310,将各个样本分组的第一密文统计结果发送给第一数据拥有方。
在311,在第一数据拥有方处,对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
利用上述两方数据分组统计方法,由于第一数据拥有方和第二数据拥有方之间交互是经过加密处理后的密文信息,从而第一数据拥有方无法获悉第二数据拥有方的第二分组变量信息,以及第二数据拥有方无法获悉第一数据拥有方的第一分组变量信息和统计变量信息,由此实现两方数据的隐私保护。
可选地,在另一示例中,在第一数据拥有方处,还可以对各个第一数据样本的第二分组变量的变量值密文进行重随机处理。然后,在第一数据拥有方处使用第一分组变量的变量值、统计变量的统计量密文以及重随机处理后的第二分组变量的变量值密文构建第二数据样本。
可选地,在一个示例中,第二数据拥有方具有公钥/私钥对,并且第二数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的第二分组变量的变量值进行加密。在这种情况下,第一数据拥有方还可以从第二数据拥有方获取第二数据拥有方所具有的公钥PK2。随后,在第一数据拥有方处,针对各个第一数据样本的第二分组变量的变量值密文,使用从第二数据拥有方所接收的公钥PK2生成0的随机密文,并将所生成的随机密文与该变量值密文同态相加得到经过重随机处理后的第二分组变量的变量值密文。
利用上述针对第二分组变量的变量值密文的重随机处理过程,由于第二数据拥有方所接收的第二分组变量的变量值密文与本地具有的第二分组变量的变量值密文不同,从而使得第二数据拥有方更加难以推断出各个第二数据样本所对应的数据样本ID。
可选地,在一个示例中,在第二数据拥有方处,还可以对各个样本分组的第一密文统计结果进行重随机处理。然后,第二数据拥有方将各个样本分组的经过重随机处理后的第一密文统计结果发送给第一数据拥有方。
可选地,在一个示例中,第一数据拥有方可以具有公钥/私钥对,并且使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文。在这种情况下,第二数据拥有方还可以从第一数据拥有方获取第一数据拥有方所具有的公钥PK1。然后,在第二数据拥有方处,针对各个样本分组,使用公钥PK1生成0的随机密文,并将所生成的随机密文与该样本分组的第一密文统计结果同态相加得到该样本分组的第二密文统计结果。
利用上述针对第一密文统计结果的重随机处理过程,由于第二数据拥有方向第一数据拥有方发送的密文统计结果是经过重随机处理后的密文统计结果,可以使得第一数据拥有方无法通过反推方法(例如,组合)来推断出该密文统计结果基于哪些密文得到,由此不能推断出第二数据拥有方的分组信息,从而实现针对第二数据拥有方的数据的隐私保护。
此外,可选地,在另一示例中,将各个样本分组的第一密文统计结果发送给第一数据拥有方可以包括:将各个样本分组的第一密文统计结果以及对应的第二分组变量的变量值发送给第一数据拥有方。在这种情况下,第一数据拥有方可以知道第二数据拥有方的第二分组变量具有哪些变量值,由此可以知道每个样本分组所对应的第一分组变量和第二分组变量的变量值。但是由于第二数据拥有方发送的是该样本分组的所有数据样本的统计值,从而第一数据拥有方无法知晓每个样本对应的第二分组变量的变量值,由此可以保护第二数据拥有方的隐私数据安全。
此外,可选地,在一个示例中,在第一数据拥有方处,在构建第二数据样本之前,还可以对各个第一数据样本中的第一分组变量的变量值进行脱敏处理。然后,在第一数据拥有方处,使用经过脱敏处理后的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本。术语“数据脱敏”是指对某些敏感数据通过脱敏规则进行数据变形,从而实现敏感隐私数据的可靠保护。在一个示例中,例如,可以利用a_k=a’_u的序号u(1到m之间的整数)代替第一分组变量的变量值a_k。在其它示例中,也可以采用本领域的其它合适方式来对第一分组变量的变量值进行脱敏处理。
利用上述针对第一分组变量的变量值的脱敏处理,可以进一步防止第二数据拥有方识别出第一数据拥有方处具有的第一分组变量的变量信息,从而进一步提升针对第一数据拥有方的隐私数据保护。
图4示出了根据本说明书的实施例的在第一数据拥有方侧的分组统计装置400的方框图。如图4所示,分组统计装置400包括密文获取单元410、数据加密单元420、样本构建单元430、乱序处理单元440、数据发送单元450、统计结果获取单元460和数据解密单元470。
密文获取单元410被配置为从第二数据拥有方获取数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文。密文获取单元410的操作可以参考上面参照图3描述的302的操作。
数据加密单元420被配置为对各个第一数据样本的统计变量的统计量进行加密得到统计量密文。数据加密单元420的操作可以参考上面参照图3描述的303的操作。
样本构建单元430被配置为使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本。样本构建单元430的操作可以参考上面参照图3描述的304的操作。
乱序处理单元440被配置为对各个第二数据样本进行乱序处理。乱序处理单元440的操作可以参考上面参照图3描述的305的操作。
数据发送单元450被配置为将经过乱序处理后的各个第二数据样本发送给第二数据拥有方。各个第二数据样本中的第二分组变量的变量值密文经由第二数据拥有方解密后,各个第二数据样本中的解密出的第二分组变量的变量值和第一分组变量的变量值被第二数据拥有方使用来对第二数据样本进行样本分组。数据发送单元450的操作可以参考上面参照图3描述的306的操作。
统计结果获取单元460被配置为从第二数据拥有方获取各个样本分组的第一密文统计结果,各个样本分组的第一密文统计由第二数据拥有方使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到。统计结果获取单元460的操作可以参考上面参照图3描述的310的操作。
数据解密单元470被配置为对各个样本分组的第一密文统计结果进行解密得到分组统计结果。数据解密单元470的操作可以参考上面参照图3描述的311的操作。
此外,可选地,在一个示例中,分组统计装置400还可以包括重随机处理单元(未示出)。所述重随机处理单元被配置为对各个第一数据样本的第二分组变量的变量值密文进行重随机处理。相应地,样本构建单元430使用第一分组变量的变量值、统计变量的统计量密文以及重随机处理后的第二分组变量的变量值密文构建第二数据样本。
此外,可选地,在一个示例中,第二数据拥有方具有公钥/私钥对,并且使用公钥/私钥对中的公钥对各个第一数据样本的第二分组变量的变量值进行加密。在这种情况下,分组统计装置400还可以包括密钥获取单元(未示出)。密钥获取单元被配置为从第二数据拥有方获取第二数据拥有方所具有的公钥。相应地,针对各个第一数据样本的第二分组变量的变量值密文,所述重随机处理单元使用所获取的公钥生成0的随机密文,并将所生成的随机密文与该变量值密文同态相加得到经过重随机处理后的第二分组变量的变量值密文。
此外,可选地,在一个示例中,第一数据拥有方具有公钥/私钥对,并且数据加密单元420使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文。相应地,数据发送单元450还将第一数据拥有方所具有的公钥发送给第二数据拥有方,所述公钥被第二数据拥有方使用来针对各个样本分组生成0的随机密文,所生成的随机密文用于对该样本分组的第一密文统计结果进行重随机处理。
此外,可选地,在一个示例中,分组统计装置400还可以包括脱敏处理单元(未示出)。所述脱敏处理单元被配置为对各个第一数据样本中的第一分组变量的变量值进行脱敏处理。相应地,样本构建单元430使用经过脱敏处理后的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本。
此外,要说明的是,在图4中,密文获取单元410和统计结果获取单元460被例示为由两个不同的单元实现。在本说明书的其它实施例中,密文获取单元、统计结果获取单元和密钥获取单元中的任意两个或全部都可以采用同一单元实现。
图5示出了根据本说明书的实施例的在第二数据拥有方侧的分组统计装置500的方框图。如图5所示,分组统计装置500包括数据加密单元510、密文发送单元520、数据获取单元530、数据解密单元540、样本分组单元550、密文统计单元560和统计结果发送单元570。
数据加密单元510被配置为对数据样本集中的各个第一数据样本的第二分组变量的变量值进行加密得到变量值密文。数据加密单元510的操作可以参考上面参照图3描述的301的操作。
密文发送单元520被配置为将数据样本集中的各个第一数据样本的第二分组变量的变量值密文发送给第一数据拥有方。密文发送单元520的操作可以参考上面参照图3描述的302的操作。
数据获取单元530被配置为从第一数据拥有方获取经过乱序处理后的各个第二数据样本,各个第二数据样本由第一数据拥有方使用各个第一数据样本的第一分组变量的变量值、经过加密后的统计变量的统计量密文以及第二分组变量的变量值密文构建。数据获取单元530的操作可以参考上面参照图3描述的306的操作。
数据解密单元540被配置为对各个第二数据样本中的第二分组变量的变量值密文进行解密。数据解密单元540的操作可以参考上面参照图3描述的307的操作。
样本分组单元550被配置为根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组。样本分组单元550的操作可以参考上面参照图3描述的308的操作。
密文统计单元560被配置为针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果。密文统计单元560的操作可以参考上面参照图3描述的309的操作。
统计结果发送单元570被配置为将各个样本分组的第一密文统计结果发送给第一数据拥有方。统计结果发送单元570的操作可以参考上面参照图3描述的310的操作。
此外,可选地,在一个示例中,分组统计装置500还可以包括重随机处理单元(未示出)。所述重随机处理单元被配置为对各个样本分组的第一密文统计结果进行重随机处理。相应地,统计结果发送单元570将各个样本分组的经过重随机处理后的第一密文统计结果发送给第一数据拥有方。
此外,可选地,在一个示例中,第一数据拥有方具有公钥/私钥对,并且使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文。在这种情况下,数据获取单元530还可以从第一数据拥有方获取第一数据拥有方所具有的公钥。相应地,针对各个样本分组,所述重随机处理单元使用所述公钥生成0的随机密文,并将所生成的随机密文与该样本分组的第一密文统计结果同态相加得到该样本分组的第二密文统计结果。
此外,可选地,在另一示例中,统计结果发送单元570还可以将各个样本分组的第一密文统计结果以及对应的第二分组变量的变量值发送给第一数据拥有方。
要说明的是,在图5中,密文发送单元520和统计结果发送单元570被例示为由两个不同的单元实现。在本说明书的其它实施例中,密文发送单元和统计结果发送单元可以采用同一单元实现。
如上参照图1到图5,对根据本说明书实施例的分组统计方法和分组统计装置进行了描述。上面的分组统计装置可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
图6示出了根据本说明书的实施例的用于实现第一数据拥有方侧的分组统计过程的电子设备600的示意图。如图6所示,电子设备600可以包括至少一个处理器610、存储器(例如,非易失性存储器)620、内存630和通信接口640,并且至少一个处理器610、存储器620、内存630和通信接口640经由总线660连接在一起。至少一个处理器610执行在存储器中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储计算机可执行指令,其当执行时使得至少一个处理器610:从第二数据拥有方获取数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文;对各个第一数据样本的统计变量的统计量进行加密得到统计量密文;使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本;将经过乱序处理后的各个第二数据样本发送给第二数据拥有方,各个第二数据样本中的第二分组变量的变量值密文经由第二数据拥有方解密后,各个第二数据样本中的解密出的第二分组变量的变量值和第一分组变量的变量值被第二数据拥有方使用来对第二数据样本进行样本分组;从第二数据拥有方获取各个样本分组的第一密文统计结果,各个样本分组的第一密文统计由第二数据拥有方使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到;以及对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
应该理解,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器610进行本说明书的各个实施例中以上结合图1-5描述的各种操作和功能。
图7示出了根据本说明书的实施例的用于实现第二数据拥有方侧的分组统计过程的电子设备700的示意图。如图7所示,电子设备700可以包括至少一个处理器710、存储器(例如,非易失性存储器)720、内存730和通信接口740,并且至少一个处理器710、存储器720、内存730和通信接口740经由总线760连接在一起。至少一个处理器710执行在存储器中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储计算机可执行指令,其当执行时使得至少一个处理器710:将数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文发送给第一数据拥有方;从第一数据拥有方获取经过乱序处理后的各个第二数据样本,各个第二数据样本由第一数据拥有方使用各个第一数据样本的第一分组变量的变量值、经过加密后的统计变量的统计量密文以及第二分组变量的变量值密文构建;对各个第二数据样本中的第二分组变量的变量值密文进行解密;根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组;针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果;以及将各个样本分组的第一密文统计结果发送给第一数据拥有方。
应该理解,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器710进行本说明书的各个实施例中以上结合图1-5描述的各种操作和功能。
根据一个实施例,提供了一种比如机器可读介质(例如,非暂时性机器可读介质)的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-6描述的各种操作和功能。具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本发明的一部分。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本发明的保护范围应当由所附的权利要求书来限定。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元或模块可以通过机械方式或电气方式实现。例如,一个硬件单元、模块或处理器可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。
Claims (23)
1.一种用于经由第一和第二数据拥有方联合分组统计的方法,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述方法包括:
第二数据拥有方将数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文发送给第一数据拥有方;
在第一数据拥有方处,对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本,并将经过乱序处理后的各个第二数据样本发送给第二数据拥有方;
在第二数据拥有方处,对各个第二数据样本中的第二分组变量的变量值密文进行解密,根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组,针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果,并将各个样本分组的第一密文统计结果发送给第一数据拥有方;以及
在第一数据拥有方处,对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
2.如权利要求1所述的方法,还包括:
在第一数据拥有方处,对各个第一数据样本的第二分组变量的变量值密文进行重随机处理,所述第二数据样本使用第一分组变量的变量值、统计变量的统计量密文以及重随机处理后的第二分组变量的变量值密文构建。
3.如权利要求2所述的方法,其中,所述第二数据拥有方具有公钥/私钥对,所述第二数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的第二分组变量的变量值进行加密,所述方法还包括:
第二数据拥有方将所述公钥发送给第一数据拥有方,
在第一数据拥有方处,对各个第一数据样本的第二分组变量的变量值密文进行重随机处理包括:
在第一数据拥有方处,针对各个第一数据样本的第二分组变量的变量值密文,使用所述公钥生成0的随机密文,并将所生成的随机密文与该变量值密文同态相加得到经过重随机处理后的第二分组变量的变量值密文。
4.如权利要求1所述的方法,还包括:
在第二数据拥有方处,对各个样本分组的第一密文统计结果进行重随机处理,
将各个样本分组的第一密文统计结果发送给第一数据拥有方包括:
将各个样本分组的经过重随机处理后的第一密文统计结果发送给第一数据拥有方。
5.如权利要求4所述的方法,其中,所述第一数据拥有方具有公钥/私钥对,所述第一数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,所述方法还包括:
第一数据拥有方将所述公钥发送给第二数据拥有方,
在第二数据拥有方处,对各个样本分组的第一密文统计结果进行重随机处理包括:
在第二数据拥有方处,针对各个样本分组,使用所述公钥生成0的随机密文,并将所生成的随机密文与该样本分组的第一密文统计结果同态相加得到该样本分组的第二密文统计结果。
6.如权利要求1所述的方法,其中,将各个样本分组的第一密文统计结果发送给第一数据拥有方包括:
将各个样本分组的第一密文统计结果以及对应的第二分组变量的变量值发送给第一数据拥有方。
7.如权利要求1所述的方法,其中,所述加密过程采用同态加密算法实现。
8.如权利要求1所述的方法,其中,各个第二数据样本中的第一分组变量的变量值是经过脱敏处理后的变量值。
9.如权利要求1到8中任一所述的方法,其中,所述分组统计包括:
分组求和;
分组计数;
分组求均值;或者
分组求方差。
10.一种用于经由第一和第二数据拥有方联合分组统计的方法,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述方法应用于第一数据拥有方,所述方法包括:
从第二数据拥有方获取数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文;
对各个第一数据样本的统计变量的统计量进行加密得到统计量密文;
使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本;
将经过乱序处理后的各个第二数据样本发送给第二数据拥有方,各个第二数据样本中的第二分组变量的变量值密文经由第二数据拥有方解密后,各个第二数据样本中的解密出的第二分组变量的变量值和第一分组变量的变量值被第二数据拥有方使用来对第二数据样本进行样本分组;
从第二数据拥有方获取各个样本分组的第一密文统计结果,各个样本分组的第一密文统计由第二数据拥有方使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到;以及
对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
11.一种用于经由第一和第二数据拥有方联合分组统计的方法,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述方法应用于第二数据拥有方,所述方法包括:
将数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文发送给第一数据拥有方;
从第一数据拥有方获取经过乱序处理后的各个第二数据样本,各个第二数据样本由第一数据拥有方使用各个第一数据样本的第一分组变量的变量值、经过加密后的统计变量的统计量密文以及第二分组变量的变量值密文构建;
对各个第二数据样本中的第二分组变量的变量值密文进行解密;
根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组;
针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果;以及
将各个样本分组的第一密文统计结果发送给第一数据拥有方。
12.一种用于经由第一和第二数据拥有方联合分组统计的装置,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述装置应用于第一数据拥有方,所述装置包括:
密文获取单元,从第二数据拥有方获取数据样本集中的各个第一数据样本的经过加密后的第二分组变量的变量值密文;
数据加密单元,对各个第一数据样本的统计变量的统计量进行加密得到统计量密文;
样本构建单元,使用各个第一数据样本的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建第二数据样本;
乱序处理单元,对各个第二数据样本进行乱序处理;
数据发送单元,将经过乱序处理后的各个第二数据样本发送给第二数据拥有方,各个第二数据样本中的第二分组变量的变量值密文经由第二数据拥有方解密后,各个第二数据样本中的解密出的第二分组变量的变量值和第一分组变量的变量值被第二数据拥有方使用来对第二数据样本进行样本分组;
统计结果获取单元,从第二数据拥有方获取各个样本分组的第一密文统计结果,各个样本分组的第一密文统计由第二数据拥有方使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到;以及
数据解密单元,对各个样本分组的第一密文统计结果进行解密得到分组统计结果。
13.如权利要求12所述的装置,还包括:
重随机处理单元,对各个第一数据样本的第二分组变量的变量值密文进行重随机处理,
所述样本构建单元使用第一分组变量的变量值、统计变量的统计量密文以及重随机处理后的第二分组变量的变量值密文构建所述第二数据样本。
14.如权利要求13所述的装置,其中,所述第二数据拥有方具有公钥/私钥对,所述第二数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的第二分组变量的变量值进行加密,所述装置还包括:
密钥获取单元,从第二数据拥有方获取所述公钥,
针对各个第一数据样本的第二分组变量的变量值密文,所述重随机处理单元使用所述公钥生成0的随机密文,并将所生成的随机密文与该变量值密文同态相加得到经过重随机处理后的第二分组变量的变量值密文。
15.如权利要求12所述的装置,其中,所述第一数据拥有方具有公钥/私钥对,所述数据加密单元使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,所述数据发送单元将所述公钥发送给第二数据拥有方,所述公钥被第二数据拥有方使用来针对各个样本分组生成0的随机密文,所生成的随机密文用于对该样本分组的第一密文统计结果进行重随机处理。
16.如权利要求12所述的装置,还包括:
脱敏处理单元,对各个第一数据样本中的第一分组变量的变量值进行脱敏处理,
所述样本构建单元使用经过脱敏处理后的第一分组变量的变量值、统计变量的统计量密文以及第二分组变量的变量值密文构建所述第二数据样本。
17.一种用于经由第一和第二数据拥有方联合分组统计的装置,第一数据拥有方具有数据样本的第一分组变量和统计变量,第二数据拥有方具有所述数据样本的第二分组变量,所述装置应用于第二数据拥有方,所述装置包括:
数据加密单元,对数据样本集中的各个第一数据样本的第二分组变量的变量值进行加密得到变量值密文;
密文发送单元,将数据样本集中的各个第一数据样本的第二分组变量的变量值密文发送给第一数据拥有方;
数据获取单元,从第一数据拥有方获取经过乱序处理后的各个第二数据样本,各个第二数据样本由第一数据拥有方使用各个第一数据样本的第一分组变量的变量值、经过加密后的统计变量的统计量密文以及第二分组变量的变量值密文构建;
数据解密单元,对各个第二数据样本中的第二分组变量的变量值密文进行解密;
样本分组单元,根据第一分组变量的变量值和解密出的第二分组变量的变量值来对第二数据样本进行样本分组;
密文统计单元,针对每个样本分组,使用该样本分组中的所有数据样本的统计变量的统计量密文进行密文统计得到第一密文统计结果;以及
统计结果发送单元,将各个样本分组的第一密文统计结果发送给第一数据拥有方。
18.如权利要求17所述的装置,还包括:
重随机处理单元,对各个样本分组的第一密文统计结果进行重随机处理,
所述统计结果发送单元将各个样本分组的经过重随机处理后的第一密文统计结果发送给第一数据拥有方。
19.如权利要求18所述的装置,其中,所述第一数据拥有方具有公钥/私钥对,所述第一数据拥有方使用公钥/私钥对中的公钥对各个第一数据样本的统计变量的统计量进行加密得到统计量密文,
所述数据获取单元从第一数据拥有方获取所述公钥,以及
针对各个样本分组,所述重随机处理单元使用所述公钥生成0的随机密文,并将所生成的随机密文与该样本分组的第一密文统计结果同态相加得到该样本分组的第二密文统计结果。
20.如权利要求17所述的装置,其中,所述统计结果发送单元将各个样本分组的第一密文统计结果以及对应的第二分组变量的变量值发送给第一数据拥有方。
21.一种用于经由第一和第二数据拥有方联合分组求和的系统,包括:
第一数据拥有方,第一数据拥有方具有数据样本的第一分组变量和统计变量,并且包括如权利要求12到16中任一所述的装置;以及
第二数据拥有方,第二数据拥有方具有所述数据样本的第二分组变量,并且包括如权利要求17到20中任一所述的装置。
22.一种电子设备,包括:
至少一个处理器,以及
与所述至少一个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如权利要求10或11所述的方法。
23.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求10或11所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010854584.4A CN111967050B (zh) | 2020-08-24 | 2020-08-24 | 两方数据分组统计方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010854584.4A CN111967050B (zh) | 2020-08-24 | 2020-08-24 | 两方数据分组统计方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111967050A CN111967050A (zh) | 2020-11-20 |
CN111967050B true CN111967050B (zh) | 2023-11-21 |
Family
ID=73391495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010854584.4A Active CN111967050B (zh) | 2020-08-24 | 2020-08-24 | 两方数据分组统计方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111967050B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018082008A1 (en) * | 2016-11-04 | 2018-05-11 | Nokia Technologies Oy | Secure distributed data processing |
CN111523134A (zh) * | 2020-07-03 | 2020-08-11 | 支付宝(杭州)信息技术有限公司 | 基于同态加密的模型训练方法、装置及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097417A1 (en) * | 2011-10-13 | 2013-04-18 | Microsoft Corporation | Secure private computation services |
-
2020
- 2020-08-24 CN CN202010854584.4A patent/CN111967050B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018082008A1 (en) * | 2016-11-04 | 2018-05-11 | Nokia Technologies Oy | Secure distributed data processing |
CN111523134A (zh) * | 2020-07-03 | 2020-08-11 | 支付宝(杭州)信息技术有限公司 | 基于同态加密的模型训练方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
面向云存储的基于全同态密码技术的文档相似度计算方法;江小平;张巍;李成华;周航;孙婧;;计算机工程与科学(10);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111967050A (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021197037A1 (zh) | 双方联合进行数据处理的方法及装置 | |
US20160234010A1 (en) | Method and system for homomorphicly randomizing an input | |
CN111159773B (zh) | 保护数据隐私的图片分类方法及装置 | |
CN110661764A (zh) | 安全多方计算协议的输入获取方法和装置 | |
Wang et al. | Data integrity checking with reliable data transfer for secure cloud storage | |
CN111741020B (zh) | 基于数据隐私保护的公共数据集确定方法、装置及系统 | |
CN107483505A (zh) | 一种对视频聊天中的用户隐私进行保护的方法及系统 | |
Peng | Danger of using fully homomorphic encryption: A look at Microsoft SEAL | |
US11888832B2 (en) | System and method to improve user authentication for enhanced security of cryptographically protected communication sessions | |
US10887332B2 (en) | Control of unwanted network traffic | |
EP3966988B1 (en) | Generating sequences of network data while preventing acquisition or manipulation of time data | |
JP7401624B2 (ja) | 暗号化されたネットワーク値の集約 | |
CN112380404B (zh) | 数据过滤方法、装置及系统 | |
CN114564730A (zh) | 基于对称加密的联邦分组统计量计算方法、设备及介质 | |
CN113158250B (zh) | 一种排除曾匹配司机的隐私保护网约车方法与系统 | |
CN112948883B (zh) | 保护隐私数据的多方联合建模的方法、装置和系统 | |
CN111984932B (zh) | 两方数据分组统计方法、装置及系统 | |
US11917078B2 (en) | Preventing data manipulation using multiple aggregation servers | |
Lo et al. | New mutual agreement protocol to secure mobile RFID-enabled devices | |
CN111967050B (zh) | 两方数据分组统计方法、装置及系统 | |
Roth et al. | A secure submission system for online whistleblowing platforms | |
Yang et al. | A privacy model for RFID tag ownership transfer | |
CN113965310B (zh) | 基于可控去标识化的标签实现混合隐私计算处理的方法 | |
WO2023059501A1 (en) | Statistically private oblivious transfer from cdh | |
JADDOA et al. | Cyber Security Role in Image Encryption |
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 |