CN113179158B - 一种控制带宽的多方联合数据处理方法及装置 - Google Patents
一种控制带宽的多方联合数据处理方法及装置 Download PDFInfo
- Publication number
- CN113179158B CN113179158B CN202110378007.7A CN202110378007A CN113179158B CN 113179158 B CN113179158 B CN 113179158B CN 202110378007 A CN202110378007 A CN 202110378007A CN 113179158 B CN113179158 B CN 113179158B
- Authority
- CN
- China
- Prior art keywords
- data
- identifier
- party
- random
- sub
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 9
- 238000012545 processing Methods 0.000 claims abstract description 128
- 238000003491 array Methods 0.000 claims abstract description 74
- 230000003993 interaction Effects 0.000 claims abstract description 35
- 230000004927 fusion Effects 0.000 claims abstract description 28
- 238000004364 calculation method Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 77
- 239000011159 matrix material Substances 0.000 claims description 42
- 230000008569 process Effects 0.000 claims description 29
- 238000012937 correction Methods 0.000 claims description 24
- 238000004422 calculation algorithm Methods 0.000 claims description 20
- 230000006399 behavior Effects 0.000 claims description 9
- 230000002452 interceptive effect Effects 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 10
- 230000004048 modification Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 230000002829 reductive effect Effects 0.000 description 8
- 238000013500 data storage Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- 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
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书实施例提供了一种控制带宽的多方联合数据处理方法及装置。多个参与方在进行第n次联合数据处理时,分别确定本次相同的第n标识,其中包括与多个参与方的业务数据分别对应的子标识;多个参与方通过预设的可信交互方式,基于第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组。当第n标识中的第一子标识存在于子标识与隐秘数据的对应关系中时,多个参与方分别获取第一子标识对应的第一隐秘数据,利用多方安全计算MPC,与其他参与方,基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理。第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到。
Description
技术领域
本说明书一个或多个实施例涉及数据处理技术领域,尤其涉及一种控制带宽的多方联合数据处理方法及装置。
背景技术
随着计算机技术的发展,企业或者机构等服务平台利用业务数据提高服务能力的需求越来越大。业务数据中包含了用户在服务平台中接受服务过程中的各种数据,对业务数据进行处理、分析,有助于提高服务平台的服务水平。不同服务平台联合起来进行业务数据的分析、处理,能够使得分析结果更加全面、深刻。但是,业务数据往往是服务平台的隐私数据,无法直接与其他服务平台的业务数据进行联合处理,存在较高的隐私保护要求。
多方安全计算(Secure Multi-party Computation,MPC)是一种通过纯密码学的手段,保护多方数据参与的计算过程***露任何参与方数据的隐私技术。利用MPC进行多方联合数据处理过程中,参与方的业务数据不会直接发送至其他参与方,而可以通过多方之间的多次无序数据的交互,实现对业务数据的联合处理。当前,多个参与方之间存在利用MPC大批量、高密度地进行联合数据处理的需求,并且存在保证数据隐私性和安全性的前提下,降低带宽消耗,提高联合数据处理效率的需求。
因此,希望能有改进的方案,可以降低带宽消耗,提高联合数据处理过程的处理效率,并且保证数据的隐私性和安全性。
发明内容
本说明书一个或多个实施例描述了一种控制带宽的多方联合数据处理方法及装置,以降低带宽消耗,提高联合数据处理过程的处理效率,并且保证数据的隐私性和安全性。具体的技术方案如下。
第一方面,实施例提供了一种控制带宽的多方联合数据处理方法,用于对多个参与方的业务数据进行隐私化的联合数据处理,所述业务数据包括多个对象的特征数据,所述方法通过多个参与方中任意的参与方执行,包括:
在进行第n次联合数据处理时,确定多个参与方本次相同的第n标识,其中包括与多个参与方的业务数据分别对应的子标识;
通过预设的可信交互方式,基于所述第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组,其中包括与多个子标识分别对应的多个随机数;在假定重构时,多个参与方的随机数组之间满足预设关系;
当所述第n标识中的第一子标识存在于子标识与隐秘数据的对应关系中时,获取所述第一子标识对应的第一隐秘数据;所述第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到;
利用多方安全计算MPC,与其他参与方,基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理;其中,所述其他隐秘数据基于其他业务数据与对应的随机数的融合得到。
第二方面,实施例提供了一种控制带宽的多方联合数据处理装置,用于对多个参与方的业务数据进行隐私化的联合数据处理,所述业务数据包括多个对象的特征数据,所述装置部署在多个参与方中任意的参与方中,包括:
标识确定模块,配置为,在进行第n次联合数据处理时,确定多个参与方本次相同的第n标识,其中包括与多个参与方的业务数据分别对应的子标识;
随机数确定模块,配置为,通过预设的可信交互方式,基于所述第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组,其中包括与多个子标识分别对应的多个随机数;在假定重构时,多个参与方的随机数组之间满足预设关系;
数据获取模块,配置为,当所述第n标识中的第一子标识存在于多个子标识与隐秘数据的对应关系中时,获取所述第一子标识对应的第一隐秘数据;所述第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到;
联合处理模块,配置为,利用多方安全计算MPC,多个参与方基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理;其中,所述其他隐秘数据基于其他业务数据与对应的随机数的融合得到。
第三方面,实施例提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面中任一项所述的方法。
第四方面,实施例提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面中任一项所述的方法。
本说明书实施例提供的方法及装置中,当预先存储的子标识与隐秘数据的对应关系中存在某个第一子标识时,可以从中获取对应的第一隐秘数据,在利用MPC进行联合数据处理时,多个参与方无需再交换第一隐秘数据。在多次进行联合数据处理的场景下,当某参与方的业务数据在下一次联合数据处理中复用时,与该业务数据相关的隐秘数据无需通过多方之间的交互而获得,从而降低了多方之间的带宽消耗,能够提高处理效率,并且整个执行过程保证了数据的隐私性和安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2为两个参与方利用秘密分享进行联合数据处理的一种示意图;
图3为实施例提供的一种多方联合数据处理方法的流程示意图;
图4为与图2对应的另一种联合数据处理的示意图;
图5为实施例提供的多方联合获取随机数组的一种流程示意图;
图6为实施例提供的多方联合获取随机数组的另一种流程示意图;
图7为实施例提供的一种多方联合数据处理装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。多个参与方拥有各自的业务数据,该业务数据属于参与方的隐私数据。每个参与方还拥有各自的初始种子,该初始种子用于生成随机数。多个参与方之间可以互相进行通信连接,以进行联合数据处理。在实际应用中,联合数据处理中的参与方可以是两个或更多的数量。图1仅是一种实施场景的示意,并不是对本说明书实施例的限定。对图1所示场景进行更新,可以得到更多的实施例场景。
参与方可以是不同的服务平台,例如各种企业或机构,其各自保存业务数据,这些业务数据可以与特定对象的特征相关。上述对象,可以但不限于是用户、商品、事件等中的任意一种。例如,对于用户来说,其可能使用银行、保险公司、购物公司提供的服务,这些机构或企业中均会存在与用户相关的业务数据。如果这些机构或企业对各方的业务数据进行联合处理,例如可以联合评定用户的信用等级、风险等级,所获得的数据处理结果,将会更加全面、准确。
具体来说,业务数据可以包括多个对象的特征数据,该特征数据包括以下至少一种:基本属性信息、关联关系信息、交互信息、历史行为信息。例如,当对象是用户时,其基本属性信息可以包括用户的性别、年龄、收入等,用户的关联关系信息可以包括与用户存在关联关系的其他用户、公司、地区等,用户的交互信息可以包括用户在某个网站进行的点击、查看、参与的某个活动等信息,用户的历史行为信息可以包括用户历史的交易行为、支付行为、购买行为等。当对象是商品时,其基本属性信息可以包括商品的类别、产地、价格等,商品的关联关系信息可以包括与该商品存在关联关系的用户、商铺或其他商品等,商品的交互信息可以包括用户、商铺与该商品之间的交互特征,商品的历史行为信息可以包括商品被购买、转存、退货等信息。当对象是事件时,其基本属性信息可以是用于描述事件的文字信息,关联关系信息可以包括与该事件在上下文上存在关系的文本、与该事件存在关联性的其他事件信息等,历史行为信息可以包括该事件在时间维度上发展变化的记录信息等。业务数据往往是服务平台的隐私数据,在处理过程中要求保持较高的隐私性和安全性。
每个参与方的业务数据可以采用矩阵的形式表示,例如可以采用N*M维的矩阵表示,其中M和N均为整数,该矩阵包含N个对象的特征数据,每个对象的特征数据包括M个属性特征的特征值。不同参与方的M或N的取值可以不同,也可以相同。在一种实施方式中,业务数据可以是经过降维处理或者其他处理后的矩阵。
多方安全计算(MPC)是一种已有的可以用于多方参与的数据隐私保护技术,其具体实现方式包括同态加密、混淆电路、不经意传输、秘密分享等技术。MPC通常分为离线阶段和在线阶段。离线阶段主要用于生成离线因子,例如三元组(beaver triple)。离线因子的生成不依赖于在线数据处理,可以提前预先生成。离线阶段和在线阶段之间是相对关系,在线阶段可以理解为使用离线阶段生成的离线因子进行联合数据处理的阶段。
为了更清楚地说明多方安全计算的过程,下面以秘密分享技术为例,说明多个参与方之间进行联合数据处理时的离线阶段和在线阶段。图2为两个参与方利用秘密分享进行联合数据处理的一种示意图。假定Alice方拥有矩阵X,Bob方拥有矩阵Y。矩阵X和矩阵Y分别是两个参与方的业务数据对应的数据矩阵。
第1步,在离线阶段,Alice方和Bob方分别获取离线因子(U1、V1、W1)和(U2、V2、W2),这里的矩阵U1和U2与X维度相同,矩阵V1和V2与Y维度相同,且满足(U1+U2)*(V1+V2)=(W1+W2)。此为离线阶段。
第2步,Alice随机生成矩阵X1,并得到分片X2=X-X1,将X2发送至Bob。同时,Bob也随机生成矩阵Y2,并得到分片Y1=Y-Y2,将Y1发送至Alice。这样,Alice和Bob分别拥有X1、Y1和X2、Y2。
第3步,在有限域下计算D、E。Alice按照以下公式计算:D1=X1-U1,E1=Y1-V1。Bob按照以下公式计算,D2=Y2-U2,E2=Y2-V2。双方交换D1、E1和D2、E2。
第4步,Alice通过计算以下公式,得到分片Z1:
D=D1+D2,E=E1+E2
Z1=W1+E·U1+D·V1+D·E
Bob通过计算以下公式,得到分片Z2:
D=D1+D2,E=E1+E2
Z2=W2+E·U2+D·V2
可以验证,Z1+Z2=X·Y。
于是,两个持有方在不暴露原始矩阵X和Y的情况下,分别得到矩阵乘法的分片Z1和Z2,并可以从另一个持有方中获取分片,而得到X·Y的结果。以上步骤2、3和4均为在线阶段。以上在线阶段所示的联合数据处理仅仅是一种举例,并不构成对本说明书的限定。在实际应用中,在线阶段的联合数据处理过程还可以包括更多其他方式。
离线因子可以是一组包含多个随机数的随机数组。随机数组中的随机数可以与参与方的业务数据进行对应。例如,在图2所示例子中,离线因子(U1、V1、W1)和(U2、V2、W2)分别构成一组随机数组,其中,随机数U1和U2对应于Alice方的业务数据X,用于与该业务数据X及其相关数据进行融合,以保证隐私***露。随机数V1和V2对应于Bob方的业务数据Y,用于与该业务数据Y及其相关数据进行融合,以保证隐私***露。在其他具体实施方式中,随机数U1和U2也不限于仅与业务数据X及其相关数据进行融合,随机数V1和V2也不限于仅与业务数据Y及其相关数据进行融合,随机数与业务数据之间也可以进行重叠融合。例如,随机数V1和V2还可以用于对业务数据X及其相关数据进行融合。
总结来说,在在线阶段,使用随机数与业务数据进行融合,能够得到业务数据的隐秘矩阵,在彼此交换隐秘矩阵的基础上,各个参与方可以实施联合数据处理,进而保证业务数据的隐私性。在每次联合数据处理中,为了提高数据隐私性,随机数组应不同。
在一次联合数据处理中,多个参与方之间需要进行若干次数据交互。而当业务数据属于高维矩阵时,参与方之间交互时的数据量也会非常大,对带宽的消耗量很高。例如,在图2所示例子的第2步和第3步中,X2、D1、D2的矩阵维数与业务数据X相同,Y1、E1、E2的矩阵维数与业务数据Y相同,当业务数据X和Y的矩阵维数很大时,交互带来的带宽占用量也会很高。尤其是,当多个参与方之间进行高频次的联合数据处理时,带宽占用量在影响处理效率上的作用也会更大。
为了降低多个参与方之间的带宽消耗,提高处理效率,本说明书实施例提供了一种控制带宽的多方联合数据处理方法,多个参与方中任意的参与方,在进行第n次联合数据处理时,确定多个参与方本次相同的第n标识,其中包括与多个参与方的业务数据分别对应的子标识;通过预设的可信交互方式,基于第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组,其中包括多个子标识分别对应的多个随机数;在假定重构时,多个随机数组之间满足预设关系;并且,当第n标识中的第一子标识存在于子标识与隐秘数据的对应关系中时,获取第一子标识对应的第一隐秘数据;利用MPC,与其他参与方,基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理。其中,第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到,其他隐秘数据基于其他业务数据与对应的随机数的融合得到。
本说明书实施例在从预存的子标识与隐秘数据中获取到第一子标识对应的第一隐秘数据时,多个参与方之间无需再交互该第一隐秘数据,使得部分隐秘数据能够在多次联合数据处理中实现复用,降低多方之间的带宽消耗,提高处理效率。并且,不同的联合数据处理过程,同一参与方的随机数组也由于第n标识而不同,尽可能保证了数据的隐私性和安全性。
下面对本说明书的具体实施例进行说明。
图3为实施例提供的一种多方联合数据处理方法的流程示意图。该方法用于对多个参与方的业务数据进行隐私化的联合数据处理。其中,业务数据包括多个对象的特征数据。该方法可以通过多个参与方中任意的参与方执行。本说明书中,任意的参与方可以通过任何具有计算、处理能力的装置、设备、平台、设备集群等来实现。为了便于描述,下面举例中多以两个参与方为例进行说明。例如,两个参与方分别为第一参与方A和第二参与方B。本实施例的方法包括步骤S310~S340:
步骤S310,在进行第n次联合数据处理时,确定多个参与方本次相同的第n标识。第n标识中包括与多个参与方的业务数据分别对应的子标识。
其中,n为自然数。该第n标识可以采用uuid表示,其中包括多个子标识,子标识可以与参与方的业务数据对应。例如,有两个参与方,第一参与方A和第二参与方B,其业务数据分别采用X和Y表示;对于任意一个参与方来说,其第n标识中包括与业务数据X对应的子标识x和与业务数据Y对应的子标识y,则第n标识可以表示为(x,y)。
第n标识中还可以包括不与参与方的业务数据对应的子标识,例如可以包括与数据处理结果对应的子标识,该数据处理结果是多个参与方的业务数据之间进行联合数据处理后的结果。该子标识可以采用z标识,第n标识可以采用(x,y,z)表示。
不同次的联合数据处理对应不同的标识,例如第n标识和第n+1标识、第n-1标识不同。第n标识与任意的第m标识不同,可以理解为,将第n标识中的子标识,分别与第m标识中的子标识进行对应比较时,多个子标识不完全相同。例如,第n标识的取值(xn,yn,zn)与第m标识的取值(xm,ym,zm)中,xn与xm,yn与ym,zn与zm,不完全相同。其中,m是自然数。
第n标识或第m标识,是用于生成随机数的标识,不同次的联合数据处理中,针对每个参与方,其随机数组应不同。子标识可以在整数范围内进行取值,例如,第n标识可以为(3,4,5)等。
多个参与方之间可能会进行多次联合数据处理,参与方的业务数据可能会在不同次的联合数据处理中进行复用。例如,在第1次联合数据处理中,第一参与方A的业务数据为矩阵X1,第二参与方B的业务数据为矩阵Y1,联合数据处理中的计算包括X1·Y1;第2次联合数据处理中,第一参与方A的业务数据为矩阵X1,第二参与方B的业务数据为矩阵Y2,联合数据处理中的计算包括X1·Y2。这样,在两次联合数据处理中,可以复用业务数据的矩阵X1。以上分析中,其中任意一个参与方,并不知道其他参与方的业务数据包含的具体取值。参与方与参与方之间可以通过多种方式确认复用哪个或哪些业务数据。例如,在应用层中,多个参与方之间可以通过发送消息通知彼此复用的业务数据,也可以通过从第三方获取消息的方式确认复用的业务数据,多个参与方也可以通过管理员的设置而确定复用的业务数据等。
对于任意一个参与方,在确定多个参与方本次相同的第n标识时,可以视不同情况进行如下处理。例如,当本次联合数据处理中参与方的业务数据X,与已进行的联合数据处理中该参与方的业务数据X相同时,将已进行的联合数据处理中该业务数据X对应的子标识,确定为本次该业务数据X的子标识。
当本次联合数据处理中参与方的业务数据Y,与已进行的联合数据处理中该参与方的业务数据Y不相同时,基于与已进行的联合数据处理中该业务数据Y对应的子标识不同的数值,确定本次该业务数据Y的子标识。
例如,本次联合数据处理中第一参与方A的业务数据与已进行的第m次联合数据处理中第一参与方A的业务数据均是矩阵X1,则可以将第m标识(3,4,5)中与第一参与方A的业务数据对应的子标识3,确定为本次联合数据处理中第n标识中的对应的子标识的取值,例如为(3,x,x)。
而当本次联合数据处理中第二参与方B的业务数据Y1,与已进行的任何一次联合数据处理中该第二参与方B的业务数据Y2不同时,假设第m次联合数据处理为已进行的联合数据处理,则在确定(3,x,x)中中间的x的取值时,其值应不同于第m标识(3,4,5)中的4。
在具体实施上述实施方式时,可以令每个参与方的业务数据对应一个计数器,基于该计数器的取值,确定对应的子标识的取值。多个参与方拥有的该业务数据对应的计数器的初始数值相同,且更新模式相同。更新模式是指,每次更新时,是增加数值还是减少数值,以及每次增加或减少的数值。在基于与已进行的联合数据处理中该业务数据Y对应的子标识不同的数值,确定本次该业务数据Y的子标识时,具体可以包括,基于该业务数据Y对应的计数器的更新后数值,确定本次该业务数据Y的子标识。每次对计数器的数值更新,可以在一次联合数据处理开始时进行,也可以在一次联合数据处理结束时进行,本说明书对此不作具体限定。
在基于该业务数据Y对应的计数器的更新后数值,确定本次该业务数据Y的子标识时,可以采用多种方式进行,例如直接将更新后数值确定为该子标识;也可以,基于更新后数值的哈希值,确定该子标识。
结合上述实施方式,下面通过表1列出本例中多个参量之间的对应关系。
表1
在表1中,第m次联合数据处理是在第n次联合数据处理之前已进行的联合数据处理。在两次联合数据处理中,第一参与方A的业务数据X的具体取值没有变,因此子标识1的取值均是3,表示复用该业务数据X。第二参与方A的业务数据Y的具体取值改变,因此子标识2的取值从4变为6。而联合数据处理的结果也发生改变,与该结果对应的子标识从5变为7。
在一种实施方式中,在确定第n标识时,不同子标识的取值可以相同,也可以不同,例如子标识1与子标识2、子标识3的取值,可以相同也可以不同。上述表1中示出了不同的子标识取值。
步骤S320,通过预设的可信交互方式,基于第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组。任意一个随机数组中包括与多个子标识分别对应的多个随机数。
并且,在假定重构时,多个参与方的随机数组之间满足预设关系。随机数组属于参与方的隐私数据,不会明文地聚合在某个参与方中或者不可信的第三方中。假定能将多个参与方的随机数组重构在一起,则多个随机数组之间满足预设关系。
上述预设的可信交互方式包括,多个参与方之间利用MPC进行的交互方式,例如多个参与方之间利用同态加密或者秘密分享进行交互;或者,多个参与方利用可信第三方进行的交互方式。
在第一种方式中,多个参与方之间利用MPC进行交互时,可以分别利用各自的初始种子和第n标识生成多个随机数,基于随机数,通过相互之间的数据交互,使得多个参与方分别得到各自的随机数组。更具体的实施过程,可以参见已有的生成随机数组的方式,这里不再赘述。
在第二种方式中,多个参与方利用可信第三方来获得满足各自的随机数组,这种方式也包含多种实施方式,可以由不同的执行主体来基于参与方的初始种子和第n标识生成随机数,具体的实施过程,可以参见后续说明,此处不再详述。
在本实施例中,上述第n标识与初始种子用于生成随机数。不管采用上述哪种方式,对于任意一个参与方来说,在执行步骤S320时可以包括以下步骤1和步骤2。
步骤1,基于第n标识和自身的初始种子,生成随机数组。第n标识可以与初始种子进行结合,基于结合后的数据生成随机数组。具体可以将第n标识与初始种子采用进行拼接、异或、相加或相减等方式进行结合。
第n标识中包括多个子标识。在结合时,可以基于第n标识中多个子标识分别与自身的初始种子的结合,生成本次的多个随机数种子,基于多个随机数种子,采用伪随机算法生成随机数组。通过子标识与初始种子的结合,当初始种子相同,子标识不同时,对应的随机数不同。当一个随机数组中的多个随机数不同时,能够防止对方利用获取的数据反推业务数据的特征,提高数据隐私性。
例如,第n标识包括子标识1、子标识2和子标识3。这三个子标识分别与初始种子进行结合,可以得到三个随机数种子seed1、seed2和seed3。基于seed1,采用伪随机算法,可以得到随机数1,基于seed2,采用伪随机算法,可以得到随机数2,基于seed3,采用伪随机算法,可以得到随机数3。这样,即得到了分别与子标识对应的随机数。多个随机数可以作为随机数组中的元素而构成随机数组。上述随机数所构成的随机数组可能还不满足预设关系,后续可以再对其进行修正。
伪随机算法是这样一种算法,在随机数生成方法确定,且随机数种子确定的情况下,每次运行后所生成的随机数相同。伪随机算法包括基于高级加密标准(AdvancedEncryption Standard,AES)的伪随机算法以及其他常用算法等。
上述任意一个随机数,可以是单个的数字,也可以是包括多个随机数字的随机数矩阵。当随机数采用对应的随机数矩阵实现时,且在得到多个随机数种子时,可以基于多个随机数种子以及预设矩阵维数,采用伪随机算法,分别生成多个随机数矩阵中对应的多个元素,这多个随机数矩阵形成随机数组。预设矩阵维数可以基于本参与方具有的业务数据的矩阵维数而预先确定。例如,在图2所示例子中,第1步中的矩阵U1、U2与业务数据矩阵X的维度相同。
随机数组中包含的随机数矩阵个数可以基于参与方的数目预先设定,例如,当共有2个参与方时,任意一个随机数组中可以包括(2+1)3个随机数矩阵。
步骤2,基于本地生成的随机数组,以及其他参与方生成的随机数组,通过预设的可信交互方式,使得多个参与方分别确定满足上述预设关系的随机数组。
在理论上,多个参与方的随机数组在假定重构的情况下,应满足预设关系。而随机数组对于参与方来说,是联合数据处理过程中的隐私数据,不能明文或以其他方式被其他参与方获取,因此多个参与方的随机数组不会明文地集中在某个参与方中。
上述预设关系可以是a*b=c,也可以是aT*b=c或者其他形式的预设关系。下面以预设关系是a*b=c为例来进行说明。假设第一参与方A对应的随机数组包括随机数a0,b0和c0,第二参与方B对应的随机数组包括随机数a1,b1和c1,则两个随机数组之间应满足预设关系a*b=c,且其中a=a0+a1,b=b0+b1,c=c0+c1,即多个随机数组之间应满足(a0+a1)(b0+b1)=(c0+c1)关系。当参与方的数量大于两个时,参与方的随机数组之间满足以下预设关系:
(a0+a1+a2…)(b0+b1+b2…)=(c0+c1+c2…)
其中,数字相同的随机数属于同一个参与方的随机数组,例如a2、b2和c2属于同一个参与方的随机数组。上述的a0,b0和c0、a1,b1和c1以及a2、b2和c2等,可以是随机数,也可以是随机数矩阵。
不同参与方的初始种子可以不同。任意一个参与方可以根据预设规则确定其自身的初始种子,并将初始种子作为隐私数据存储起来。例如,每个参与方均可以随机生成初始种子,也可以采用其他方式确定初始种子。不同参与方确定的初始种子不同。初始种子不同,能够使得利用初始种子和第n标识生成的随机数组不同。
步骤S330,当第n标识中的第一子标识存在于子标识与隐秘数据的对应关系中时,获取第一子标识对应的第一隐秘数据。
其中,第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到。第一业务数据可以是作为执行主体的参与方的业务数据,或者是其他参与方的业务数据。
上述对应关系可以仅包括一个子标识和对应的隐秘数据,也可以包括多个子标识与对应的隐秘数据。上述对应关系,可以基于已进行的第m次联合数据处理过程中多个参与方之间隐秘数据的交换而预先得到,并可以存储在自身的存储空间中;也可以通过其他方式预先存储在各个参与方中。
多个参与方中均存储有该对应关系。由于隐秘数据是基于业务数据与随机数的融合而得到的,并不会泄露隐私数据,因此多个参与方均可以存储该对应关系。
业务数据与随机数的融合可以包括多种形式,例如可以取和值、异或、相减等方式。例如,第一隐秘数据可以是基于第一业务数据与对应的第一随机数的差值而得到的。
本步骤中,获取第一子标识对应的第一隐秘数据时,可以从上述对应关系中获取第一子标识对应的第一隐秘数据。在获取第一隐秘数据之前,还可以先将第n标识中的子标识分别与上述对应关系中的相应子标识进行匹配,将匹配成功的子标识确定为第一子标识。当匹配成功时,认为上述对应关系中存在对应相同的子标识,即存在可以复用的隐秘数据;当匹配不成功时,认为上述对应关系中不存在对应相同的子标识,即不存在可以复用的隐秘数据。
上述对应关系中可以分别存储与不同业务数据对应的子标识所对应的隐秘数据。例如,参见表2中所示的对应关系。
表2
在表2中,左侧两列给出了与业务数据X对应的子标识1相关的对应关系,右侧两列给出了与业务数据Y对应的子标识2相关的对应关系。其中的xxx代表未显露的具体数值。任意一个隐秘数据可以是多个数据的组合。
在将第n标识中的子标识分别与上述对应关系中的相应子标识进行匹配时,子标识与相应子标识应都对应于同一业务数据。例如,第n标识中包括与业务数据X对应的子标识1(取值为3),以及与业务数据Y对应的子标识2(取值为7),在将第n标识中的子标识与表2的对应关系进行匹配时,可以将子标识1分别与表2中左侧两列中的取值进行匹配,将子标识2分别与表2中右侧两列中的取值进行匹配。可知匹配成功的是取值为3的子标识1对应的隐秘数据xxx1,则子标识1即为第一子标识,隐秘数据xxx1为第一隐秘数据。
当第n标识中存在匹配成功的子标识时,说明上述对应关系中存在可以复用的隐秘数据,在获取到第一隐秘数据之后,可以继续执行步骤S340。当第n标识中的子标识不存在于上述对应关系中时,说明上述对应关系中没有可以复用的隐秘数据。在这种情况下,参与方可以基于自身的业务数据与自身的随机数组中对应随机数的融合,确定隐秘数据;利用MPC,基于该隐秘数据与其他参与方的隐秘数据之间的交换,进行本次联合数据处理。也就是,多个参与方按照既定的处理流程,基于自身的隐秘数据进行相互之间的交换,而并不复用隐秘数据。
步骤S340,利用MPC,与其他参与方,基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理。其中,其他隐秘数据基于其他业务数据与对应的随机数的融合得到。
其他业务数据与对应随机数的融合可以包括多种形式,例如可以取和值、异或、相减等方式。在一种实施方式中,可以基于其他业务数据与对应随机数的差值,得到其他隐秘数据。
在步骤S340中,多个参与方均可以从自身存储的对应关系中确定第一隐秘数据,多个参与方之间无需针对第一隐秘数据进行交换,仅针对其他隐秘数据进行交换即可,因此能够减少带宽消耗。尤其在业务数据属于高维特征矩阵时,能够在更大程度上减少带宽消耗。
下面结合图2所示的联合数据处理实例,再对上述实施例进行说明。
从对步骤S310的说明可知,对于任意一个参与方来说,其第n标识中的子标识分别与不同参与方的业务数据对应,从对步骤S320的说明可知子标识与随机数对应,因此,随机数与业务数据对应。从步骤S330的说明可知,基于相互对应的随机数与业务数据的融合,能得到对应的隐秘数据,因此隐秘数据与子标识也对应。
参见图2所示例子,对于Alice方来说,其随机数组中包括U1、V1和W1,随机数U1与Alice方的业务数据X对应,随机数V1与Bob方的业务数据Y对应,随机数W1与联合数据处理的结果对应。随机数U1、U2用于与业务数据X相关的数据进行融合,得到包括D1、D2在内的隐秘数据,Alice和Bob均可以得到这些隐秘数据。业务数据与对应随机数的融合可以在多个参与方中分别进行,例如,D1在Alice方中得到,D2在Bob方中得到等。
当在上述对应关系中,Alice方和Bob方获取到包括D1和D2在内的隐秘数据时,Alice方和Bob方无需再进行关于隐秘数据X2、D1和D2的交换,而仅进行其他隐秘数据,例如包括Y1、E1和E2在内的其他隐秘数据的交换。
参见图4,图4为与图2对应的另一种联合数据处理的示意图,其中省去了部分隐秘数据的交互。相比于图2,可见图4中Alice方和Bob方之间的数据交互中减少了针对X2、D1和D2的交换。当业务数据X是高维特征矩阵,业务数据Y是低维特征矩阵时,这种交互数据的减少量比例会更大,能在很大程度上减少对带宽的消耗。
在该例中也可以看到,与任意一个取值的子标识对应的隐秘数据,可以包括多个数据,例如可以包括D1和D2。
上述图4所示的联合数据处理,仅是多个参与方基于MPC而进行的某一种处理过程。在实际应用中,基于MPC,多个参与方之间的联合数据处理可以包括多种实施方式,此处不再赘述。
在执行步骤S330时,当第n标识中的第二子标识不存在于对应关系中,且第二子标识与第二业务数据对应时,参与方还可以获取第二隐秘数据,将第二子标识与对应的第二隐秘数据加入上述对应关系中。
其中,第二隐秘数据基于第二业务数据与第二子标识对应的第二随机数的融合而得到。第二业务数据可以是作为执行主体的参与方的业务数据,也可以是其他参与方的业务数据。其他参与方是指多个参与方中除作为执行主体的参与方之外的参与方。
上述第二子标识,可以是取值不存在于上述对应关系中的任意一个子标识,也可以是从取值不存在于上述对应关系的多个子标识中选定的子标识。例如,可以选定将与业务数据对应的子标识作为子标识等等。
将第二子标识与第二隐秘数据加入上述对应关系中的步骤,可以是在参与方接收到相关指令之后进行的步骤;也可以是满足第二子标识不存在于对应关系中的条件,即可进行的步骤。
在本说明书的另一实施例中,步骤S320可以包含多种实施方式。在利用可信第三方进行的交互方式中,步骤S320使得多个参与方分别确定各自的随机数组的步骤,可以采用图5所示示意图进行。
图5为实施例提供的多方联合获取随机数组的一种流程示意图。其中,第一参与方A是从多个参与方中选定的参与方,第二参与方B是多个参与方中第一参与方之外的任意参与方。多方联合获取随机数组的过程包括以下步骤S321~S324。
步骤S321,第一参与方A利用第n标识和自身的初始种子,生成随机数组,其中包含待修正随机数和非待修正随机数。第一参与方A向可信第三方发送携带第n标识的获取请求,可信第三方可以接收第一参与方A发送的获取请求。
步骤S322,可信第三方获取多个参与方各自的初始种子,并基于第n标识和多个参与方各自的初始种子,以及多个随机数组满足的预设关系,确定待修正随机数的修正值,并将该修正值发送至第一参与方A。第一参与方A可以接收可信第三方返回的该修正值。
步骤S323,第一参与方A利用该修正值更新本地生成的随机数组。
步骤S324,第二参与方B利用第n标识和自身的初始种子,生成随机数组,第一参与方A更新后的随机数组与其他参与方的随机数组之间在假定重构时满足预设关系。其中,步骤S324可以在步骤S321之前或之后执行,也可以同时执行。
多个参与方的初始种子,包括第一参与方A的初始种子和第二参与方B的初始种子,可以分别预先发送至可信第三方。在发送时,可以对初始种子进行加密后发送至可信第三方,以提高初始种子的安全性。
在步骤S321和S324中,多个参与方分别利用初始种子和第n标识生成的随机数组,属于初始的随机数组,各个随机数组之间在假定重构时并不满足该预设关系。本实施例中,可以通过对第一参与方A的随机数组进行修正、更新,而使得各个随机数组在假定重构时满足预设关系。
在本实施例中,仅对第一参与方A的随机数组进行更新即可,除第一参与方A之外的其他参与方的随机数组,可以不予以更新,直接使用即可。
在步骤S321中,第一参与方A的随机数组中的多个随机数可以划分为待修正随机数和非待修正随机数。其中,待修正随机数可以是第一参与方A的随机数组中默认的随机数,也可以是根据预设选取规则从该随机数组中选择的。待修正随机数可以是一个,也可以是多个。并且,第一参与方A在生成随机数组时,可以生成随机数组中所有的随机数,也可以仅生成其中的非待修正随机数。
例如,第一参与方A的随机数组中包括a、b、c、d、e五个随机数,其中,a、b是待修正随机数,c、d、e是非待修正随机数。第一参与方A可以仅生成c、d、e的具体数值,不生成a、b的具体数值;也可以生成a、b、c、d、e的具体数值。
在步骤S321和S324中,第一参与方A和第二参与方B在生成随机数组时,可以采用多种实施方式。例如,可以基于第n标识中多个子标识分别与自身初始种子的结合,生成本次的多个随机数种子,基于多个随机数种子,采用伪随机算法生成随机数组。
当随机数采用对应的随机数矩阵实现时,在基于多个随机数种子,采用伪随机算法生成随机数组时,可以基于多个随机数种子以及预设矩阵维数,采用伪随机算法,分别生成多个随机数矩阵中对应的多个元素,多个随机数矩阵形成随机数组。
在步骤S321中,第一参与方A可以生成携带第n标识的获取请求。其中,该获取请求,可以用于获取与第n标识对应的待修正随机数的修正值。该获取请求可以采用已有的请求格式,并将第n标识添加在获取请求的第一指定字段中,例如data字段中。该获取请求中的第二指定字段中也可以添加用于标识该请求是获取待修正随机数的修正值的指定标识。
当待修正随机数是第一参与方A的随机数组中默认的随机数时,可信第三方也可以预先得到该默认的随机数。因此,第一参与方A在生成获取请求时,无需在其中携带待修正随机数。
当待修正随机数是在生成获取请求之前,从第一参与方A的随机数组中选择的时,第一参与方A可以生成携带第n标识和待修正随机数的获取请求,并将该获取请求发送至可信第三方。将待修正随机数携带在获取请求中,能够使得可信第三方从获取请求中获取第n标识和待修正随机数。可信第三方在接收到第一参与方A发送的获取请求之后,还可以从获取请求中获取待修正随机数。
在本实施例中,可信第三方可以是单个设备,也可以包含若干个计算单元。为了进一步提高多方联合数据处理时的安全性,可信第三方自身或者其包含的计算单元,可以采用具有可信执行环境(Trusted Execution Environment,TEE)的可信计算单元来实现。
当可信第三方包含多个可信计算单元时,这多个可信计算单元可以属于同一可信计算集群,也可以不属于可信计算集群。
第一参与方A在将获取请求发送至可信第三方时,具体可以与该可信第三方中的可信计算单元进行远程认证(Remote Attestation,RA),并建立RA通道,通过该RA通道,将获取请求发送至该可信第三方中对应的可信计算单元。具体可以在远程认证通过之后,建立RA通道。RA认证是参与方对可信计算单元可信性的确认,在认证通过后,第一参与方A可以与可信计算单元通过更加安全的RA通道传输数据。
使用可信计算单元实现的可信第三方或计算设备,能够更加安全、可靠地向第一参与方提供数据传输,保证了数据传输安全性,进而能够提高联合数据处理过程的安全性。
在步骤S322中,可信第三方可以从数据存储平台中获取多个参与方各自的初始种子。可信第三方,可以在预先获取到多个参与方各自的初始种子之后,将多个初始种子存储至数据存储平台中。多个初始种子可以经过加密后存储在数据存储平台中。
在一种实施方式中,步骤S322中可信第三方在确定待修正随机数的修正值时,可以采用以下步骤11和步骤12确定上述修正值:
步骤11,基于多个参与方各自的初始种子和第n标识,针对多个参与方分别生成各自的随机数组,包括针对第一参与方A生成的随机数组。本步骤在实施时,可以采用步骤S321中提供的实施方式进行,具体的不再赘述。
步骤12,利用生成的其他参与方的随机数组,以及多个随机数组之间的预设关系,确定第一参与方A的随机数组中待修正随机数的修正值。
例如,可信第三方针对第一参与方A生成的随机数组包括随机数矩阵a0,b0和c0*,针对第二参与方B生成的随机数组包括随机数矩阵a1,b1和c1。其中,假设c0*是待修正随机数,a0,b0,a1,b1和c1是非待修正随机数。第一参与方A和第二参与方B的随机数矩阵之间存在以下预设关系:(a0+a1)(b0+b1)=(c0+c1)。则可以基于该预设关系得到以下公式,并基于该公式确定待修正随机数c0*的修正值c0:
c0=(a0+a1)(b0+b1)-c1。
其中,上述内容仅以第一参与方A拥有的c0作为待修正随机数为例来进行说明。在实际应用中,a0和b0中的任意一个均可以作为待修正随机数。
可信第三方在将修正值发送至第一参与方A时,可以从数据存储平台中获取第一参与方A的秘钥,利用第一参与方A的秘钥,对该修正值进行加密,将加密后的修正值发送至第一参与方A。数据存储平台可以存储有第一参与方的秘钥。该秘钥可以是第一参与方预先发送至可信第三方的。该秘钥可以采用对称秘钥,也可以采用非对称秘钥。
在一种实施方式中,第一参与方A的秘钥、各个参与方的初始种子可以直接存储在可信第三方中,而不存储在数据存储平台中。当可信第三方中的计算单元采用可信计算单元时,由于可信计算单元的内存空间有限,可以将初始种子和第一参与方A的秘钥存储在数据存储平台中,以节省可信计算单元的内存空间。
当可信第三方采用可信计算单元实现时,第一参与方A可以通过与可信计算单元建立的RA通道,将秘钥发送至可信第三方,以提高秘钥的安全性。
在步骤S323中,当上述修正值是利用第一参与方A的秘钥加密之后的结果时,第一参与方A可以利用自身的秘钥,对该修正值进行解密,利用解密后的修正值更新第一随机数组。
在利用修正值更新第一参与方A的随机数组时,可以直接将该修正值作为该随机数组中待修正随机数的取值。
在本实施例的另一实施方式中,为了进一步控制第一参与方A与可信第三方进行交互时的延时,提高处理效率,在从多个参与方中选定第一参与方A时,选择与可信第三方设置于同一局域网的参与方作为第一参与方A。当第一参与方与可信第三方进行交互时,通过该局域网进行交互,进行数据传输。
在部署设备时,也可以将可信第三方(例如TEE)部署在第一参与方A所在的局域网中,使得可信第三方与第一参与方A之间的访问成为近端访问。这种近端访问,能够比较明显地缩短可信第三方与第一参与方A之间数据传输的耗时。尤其在高频地进行联合数据处理时,需要生成大批量的随机数组,这种近端访问能够更加明显地缩短延时,提高处理效率。
在本实施例中,当第一参与方A与可信第三方位于同一局域网时,两者之间进行的数据传输、认证等均可以通过该局域网进行。例如,当第一参与方A可以通过局域网向可信第三方发送上述获取请求,可信第三方可以通过局域网接收该获取请求;可信第三方可以通过该局域网,向第一参与方A发送修正值,第一参与方A可以通过该局域网接收该修正值。
综上,在本实施例中,多个参与方分别各自生成随机数组,只需第一参与方从可信第三方中获取修正值,无需多个参与方与可信第三方进行交互,能够减少交互次数,缩短延时,提高效率。
在利用可信第三方进行的交互方式中,步骤S320使得多个参与方分别确定各自的随机数组的步骤,也可以采用图6所示示意图进行。
图6为实施例提供的多方联合获取随机数组的另一种流程示意图。其中,多个参与方均进行相同操作。为了便于说明,以两个参与方为例进行说明,例如第一参与方A和第二参与方B,这两个参与方为任意的参与方。本实施例中多方联合获取随机数组的过程包括以下步骤S325~S326。
步骤S325,多个参与方,包括第一参与方A和第二参与方B,分别生成携带第n标识的获取请求,并将该获取请求发送至可信第三方。可信第三方分别接收第一参与方A和第二参与方B分别发送的获取请求。该获取请求,用于获取参与方的随机数组。
步骤S326,可信第三方,基于第n标识和多个参与方各自的初始种子以及上述预设关系,针对多个参与方分别确定对应的随机数组,包括针对第一参与方A生成的随机数组,以及针对第二参与方B生成的随机数组。然后,可信第三方,将随机数组分别发送至对应的参与方。第一参与方A和第一参与方B分别接收可信第三方返回的随机数组。
第一参与方A和第二参与方B生成获取请求的时间可以有先有后,也可以同时进行;向可信第三方发送获取请求的时间也可以有先有后,也可以同时发送。
可信第三方可以在接收到第一个获取请求时,执行步骤S326。在接收到第一个获取请求之后,可信第三方还可以接收其他参与方发送的获取请求,并在确定该获取请求中携带第n标识时,将基于第n标识确定的多个随机数组中与该其他参与方对应的随机数组,发送至该其他参与方。
在步骤S326中,可信第三方在针对多个参与方分别生成各自对应的随机数组时,可以针对任意一个参与方,基于该参与方的初始种子分别与第n标识中多个子标识的结合,生成本次的多个随机数种子,基于多个随机数种子,采用伪随机算法生成该参与方对应的随机数组。可信第三发可以按照上述方式分别确定多个参与方的随机数组。
为了使得各个参与方的随机数组之间满足预设关系,可信第三方还可以利用预设关系,以及按照上述方式分别确定的多个参与方的随机数组,对参与方的随机数组中的随机数进行修正。可信第三方可以将多个参与方的随机数组中的多个随机数划分为待修正随机数和非待修正随机数,利用非待修正随机数以及预设关系,确定待修正随机数的修正值,并利用该修正值对待修正随机数进行修正,得到更新后的随机数组。在更新操作之后,多个参与方的随机数组之间满足预设关系。其中,待修正随机数,可以是默认的,也可以是随机确定或者按照其他方式确定的。
例如,针对第一参与方A生成随机数矩阵a0,b0和c0*,针对第二参与方B生成随机数矩阵a1,b1和c1;其中,c0*是待修正的随机数矩阵,a0,b0,a1,b1和c1是非待修正的随机数矩阵。各个随机数矩阵的维数与多个参与方的业务数据的维数相关,因此各个随机数矩阵的维数以及元素数量可以预先设定。针对第一参与方A和第二参与方B,其随机数矩阵存在以下预设关系:(a0+a1)(b0+b1)=(c0+c1)。则可以利用以下公式,确定待修正的随机数矩阵c0*的修正值c0:
c0=(a0+a1)(b0+b1)-c1。
其中,上述内容仅以第一参与方A拥有的c0作为待修正随机数为例来进行说明。在实际应用中,a0、b0、a1、b1和c1中的任意一个均可以作为待修正随机数。
在步骤S326中,可信第三方向参与方发送的随机数组,可以是采用参与方的秘钥加密之后的数据,以便能够提高传输过程中的安全性。
为了提高可信第三方的可用性,可信第三方可以包含多个计算单元,每个计算单元均预先配置多个参与方的初始种子,在接收到参与方的获取请求时,均能够执行上述步骤S326。不管哪个计算单元接收到携带第n标识的获取请求,都能针对多个参与方生成相同的多个随机数组。当某个计算单元的计算量超负荷时,其他的计算单元可以很容易地承担生成随机数组的计算任务,实现多个计算单元之间的无缝切换。并且,当某个计算单元向任意的第一参与方发送随机数组之后,如果该计算单元发生故障,任意的第二参与方可以从其他的计算单元中获取对应的随机数组,从而使得第一参与方和第二参与方的随机数组之间满足预设关系。如此,可以提高随机数组生成时的高可用性,进而提高联合数据处理时的高可用性。
为了提高可信第三方的安全性,可信第三方自身可以采用具有可信执行环境TEE的可信计算单元实现,或者可信第三方中的计算单元可以采用可信计算单元实现。初始种子、第n标识的明文,以及确定多个参与方的随机数组等处理过程,均可以在可信计算单元中进行,外界无法获取到明文的隐秘数据,从而提高安全性。
当可信第三方包括多个计算单元时,可信第三方中还可以包括负载均衡单元,用于对多个计算单元的计算任务进行负载均衡。负载均衡单元可以接收多个参与方发送的获取请求,根据各个计算单元的剩余计算能力,确定待转发的计算单元,并将获取请求转发给所确定的计算单元,实现负载均衡。例如,可信第三方中任意的计算单元可以接收负载均衡单元转发的获取请求。
本说明书中,第一子标识、第一隐秘数据、第一随机数、第一业务数据等中的“第一”,以及下文中相应的“第二”,仅仅是为了区分和描述方便,而不具有任何限定意义。
上述针对图5和图6所示实施例的内容,侧重于说明其与图3所示实施例以及其他实施例的不同之处,相同之处,各个实施例可以相互参照。
上述内容对本说明书的特定实施例进行了描述,其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行,并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的,或者可能是有利的。
图7为实施例提供的一种多方联合数据处理装置的示意性框图。该装置700用于对多个参与方的业务数据进行隐私化的联合数据处理。其中,业务数据包括多个对象的特征数据。该装置实施例与图3所示方法实施例相对应。该装置700部署在多个参与方中任意的参与方中,包括:
标识确定模块710,配置为,在进行第n次联合数据处理时,确定多个参与方本次相同的第n标识,其中包括与多个参与方的业务数据分别对应的子标识;
随机数确定模块720,配置为,通过预设的可信交互方式,基于所述第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组,其中包括与多个子标识分别对应的多个随机数;在假定重构时,多个参与方的随机数组之间满足预设关系;
数据获取模块730,配置为,当所述第n标识中的第一子标识存在于子标识与隐秘数据的对应关系中时,获取所述第一子标识对应的第一隐秘数据;所述第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到;
联合处理模块740,配置为,利用MPC,与其他参与方,基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理;其中,所述其他隐秘数据基于其他业务数据与对应的随机数的融合得到。
在一种实施方式中,所述特征数据包括以下至少一种:基本属性信息、关联关系信息、交互信息、历史行为信息;所述对象包括以下种类中的一种:用户、商品、事件。
在一种实施方式中,所述第一业务数据是所述参与方的业务数据,或者是其他参与方的业务数据。
在一种实施方式中,所述对应关系,基于已进行的第m次联合数据处理过程中多个参与方之间隐秘数据的交换而得到。
在一种实施方式中,标识确定模块710,具体配置为:
当本次联合数据处理中参与方的业务数据,与已进行的联合数据处理中该参与方的业务数据相同时,将已进行的联合数据处理中该业务数据对应的子标识,确定为本次该业务数据的子标识;
当本次联合数据处理中参与方的业务数据,与已进行的联合数据处理中该参与方的业务数据不相同时,基于与已进行的联合数据处理中该业务数据对应的子标识不同的数值,确定本次该业务数据的子标识。
在一种实施方式中,标识确定模块710,基于与已进行的联合数据处理中该业务数据对应的子标识不同的数值,确定本次该业务数据的子标识时,包括:
基于该业务数据对应的计数器的更新后数值,确定本次该业务数据的子标识;多个参与方拥有的该业务数据对应的计数器的初始数值相同,且更新模式相同。
在一种实施方式中,所述可信交互方式包括:
多个参与方之间利用MPC进行的交互方式;
或者,多个参与方利用可信第三方进行的交互方式。
在一种实施方式中,在利用可信第三方进行的交互方式中,随机数确定模块720具体配置为:
当所述参与方是选定的参与方时,利用所述第n标识和自身的初始种子,生成随机数组,其中包含待修正随机数;向所述可信第三方发送携带所述第n标识的获取请求,并接收所述可信第三方返回的所述待修正随机数的修正值,利用所述修正值更新本地生成的所述随机数组;所述修正值基于所述第n标识和多个参与方各自的初始种子而确定;
当所述参与方不是选定的参与方时,利用所述第n标识和自身的初始种子,生成随机数组。
上述实施方式的执行可以参照图5所示方法实施例。
在一种实施方式中,当所述参与方是选定的参与方时,所述参与方与所述可信第三方设置于同一局域网;所述向所述可信第三方发送携带所述第n标识的获取请求的步骤,包括:通过所述局域网向所述可信第三方发送携带所述第n标识的获取请求;
所述接收所述可信第三方返回的所述待修正随机数的修正值的步骤,包括:通过所述局域网,接收所述可信第三方返回的所述待修正随机数的修正值。
在一种实施方式中,在利用可信第三方进行的交互方式中,随机数确定模块720具体配置为:
生成携带所述第n标识的获取请求,并将其发送至所述可信第三方;
接收所述可信第三方针对所述参与方返回的随机数组;所述可信第三方基于所述第n标识和多个参与方各自的初始种子以及所述预设关系,针对多个参与方分别确定对应的随机数组。
上述实施方式的执行可以参照图6所示方法实施例。
在一种实施方式中,在利用可信第三方进行的交互方式中,所述可信第三方包括若干个计算单元;所述计算单元包括具有可信执行环境TEE的可信计算单元。
在一种实施方式中,随机数确定模块720,具体配置为:
基于所述第n标识和自身的初始种子,生成随机数组;
基于本地生成的随机数组,以及其他参与方生成的随机数组,通过预设的可信交互方式,使得多个参与方分别确定满足所述预设关系的随机数组。
在一种实施方式中,所述随机数确定模块720,基于第n标识和自身的初始种子,生成随机数组时,包括:
基于第n标识中多个子标识分别与自身的初始种子的结合,生成本次的多个随机数种子;
基于多个随机数种子,采用伪随机算法生成随机数组。
在一种实施方式中,所述随机数采用对应的随机数矩阵实现;随机数确定模块720,基于多个随机数种子,采用伪随机算法生成随机数组时,包括:
基于多个随机数种子以及预设矩阵维数,采用伪随机算法,分别生成多个随机数矩阵中对应的多个元素,所述多个随机数矩阵形成随机数组。
在一种实施方式中,装置700还包括标识匹配模块(图中未示出);
标识匹配模块,配置为,在获取所述第一隐秘数据之前,将所述第n标识中的子标识分别与所述对应关系中的相应子标识进行匹配,将匹配成功的子标识确定为第一子标识。
在一种实施方式中,装置700还包括数据加入模块(图中未示出):
数据加入模块,配置为,当所述第n标识中的第二子标识不存在于所述对应关系中,且所述第二子标识与第二业务数据对应时,获取第二隐秘数据,所述第二隐秘数据基于所述第二业务数据与所述第二子标识对应的第二随机数的融合而得到;将所述第二子标识与对应的所述第二隐秘数据加入所述对应关系中。
在一种实施方式中,装置700还包括数据融合模块和数据交换模块(图中未示出):
数据融合模块,配置为,当第n标识中的子标识不存在于对应关系中时,基于所述参与方的业务数据与所述参与方的随机数组中对应随机数的融合,确定隐秘数据;
数据交换模块,配置为,利用所述MPC,基于所述隐秘数据与其他参与方的隐秘数据之间的交换,进行本次联合数据处理。
在一种实施方式中,第一隐秘数据基于第一业务数据与对应的第一随机数的差值而得到。
上述装置实施例与方法实施例相对应,具体说明可以参见方法实施例部分的描述,此处不再赘述。装置实施例是基于对应的方法实施例得到,与对应的方法实施例具有同样的技术效果,具体说明可参见对应的方法实施例。
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行图1至图6任一项所述的方法。
本说明书实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现图1至图6任一项所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于存储介质和计算设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步的详细说明。所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (21)
1.一种控制带宽的多方联合数据处理方法,用于对多个参与方的业务数据进行隐私化的联合数据处理,所述业务数据包括多个对象的特征数据,所述方法通过多个参与方中任意的参与方执行,包括:
在进行第n次联合数据处理时,确定多个参与方本次相同的第n标识,其中包括与多个参与方的业务数据分别对应的子标识;
通过预设的可信交互方式,基于所述第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组,其中包括与多个子标识分别对应的多个随机数;
当所述第n标识中的第一子标识存在于子标识与隐秘数据的对应关系中时,获取所述第一子标识对应的第一隐秘数据;所述第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到;
利用多方安全计算MPC,与其他参与方,基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理;其中,所述其他隐秘数据基于其他业务数据与对应的随机数的融合得到。
2.根据权利要求1所述的方法,所述特征数据包括以下至少一种:基本属性信息、关联关系信息、交互信息、历史行为信息;所述对象包括以下种类中的一种:用户、商品、事件。
3.根据权利要求1所述的方法,所述第一业务数据是所述参与方的业务数据,或者是其他参与方的业务数据。
4.根据权利要求1所述的方法,所述对应关系,基于已进行的第m次联合数据处理过程中多个参与方之间隐秘数据的交换而得到。
5.根据权利要求1所述的方法,所述确定多个参与方本次相同的第n标识的步骤,包括:
当本次联合数据处理中参与方的业务数据,与已进行的联合数据处理中该参与方的业务数据相同时,将已进行的联合数据处理中该业务数据对应的子标识,确定为本次该业务数据的子标识;
当本次联合数据处理中参与方的业务数据,与已进行的联合数据处理中该参与方的业务数据不相同时,基于与已进行的联合数据处理中该业务数据对应的子标识不同的数值,确定本次该业务数据的子标识。
6.根据权利要求5所述的方法,所述基于与已进行的联合数据处理中该业务数据对应的子标识不同的数值,确定本次该业务数据的子标识的步骤,包括:
基于该业务数据对应的计数器的更新后数值,确定本次该业务数据的子标识;多个参与方拥有的该业务数据对应的计数器的初始数值相同,且更新模式相同。
7.根据权利要求1所述的方法,所述可信交互方式包括:
多个参与方之间利用MPC进行的交互方式;
或者,多个参与方利用可信第三方进行的交互方式。
8.根据权利要求7所述的方法,在利用可信第三方进行的交互方式中,所述使得多个参与方分别确定各自的随机数组的步骤,包括:
当所述参与方是选定的参与方时,利用所述第n标识和自身的初始种子,生成随机数组,其中包含待修正随机数;向所述可信第三方发送携带所述第n标识的获取请求,并接收所述可信第三方返回的所述待修正随机数的修正值,利用所述修正值更新本地生成的所述随机数组;所述修正值基于所述第n标识和多个参与方各自的初始种子而确定;
当所述参与方不是选定的参与方时,利用所述第n标识和自身的初始种子,生成随机数组。
9.根据权利要求8所述的方法,当所述参与方是选定的参与方时,所述参与方与所述可信第三方设置于同一局域网;所述向所述可信第三方发送携带所述第n标识的获取请求的步骤,包括:通过所述局域网向所述可信第三方发送携带所述第n标识的获取请求;
所述接收所述可信第三方返回的所述待修正随机数的修正值的步骤,包括:通过所述局域网,接收所述可信第三方返回的所述待修正随机数的修正值。
10.根据权利要求7所述的方法,在利用可信第三方进行的交互方式中,所述使得多个参与方分别确定各自的随机数组的步骤,包括:
生成携带所述第n标识的获取请求,并将其发送至所述可信第三方;
接收所述可信第三方针对所述参与方返回的随机数组;所述可信第三方基于所述第n标识和多个参与方各自的初始种子以及预设关系,针对多个参与方分别确定对应的随机数组;在假定重构时,多个参与方的随机数组之间满足所述预设关系。
11.根据权利要求7所述的方法,在利用可信第三方进行的交互方式中,所述可信第三方包括若干个计算单元;所述计算单元包括具有可信执行环境TEE的可信计算单元。
12.根据权利要求1所述的方法,所述使得多个参与方分别确定各自的随机数组的步骤,包括:
基于所述第n标识和自身的初始种子,生成随机数组;
基于本地生成的随机数组,以及其他参与方生成的随机数组,通过预设的可信交互方式,使得多个参与方分别确定满足预设关系的随机数组;在假定重构时,多个参与方的随机数组之间满足所述预设关系。
13.根据权利要求12所述的方法,所述基于所述第n标识和自身的初始种子,生成随机数组的步骤,包括:
基于所述第n标识中多个子标识分别与自身的初始种子的结合,生成本次的多个随机数种子;
基于多个随机数种子,采用伪随机算法生成随机数组。
14.根据权利要求13所述的方法,所述随机数采用对应的随机数矩阵实现;所述基于多个随机数种子,采用伪随机算法生成随机数组的步骤,包括:
基于多个随机数种子以及预设矩阵维数,采用伪随机算法,分别生成多个随机数矩阵中对应的多个元素,所述多个随机数矩阵形成随机数组。
15.根据权利要求1所述的方法,在获取所述第一隐秘数据之前,还包括:
将所述第n标识中的子标识分别与所述对应关系中的相应子标识进行匹配,将匹配成功的子标识确定为第一子标识。
16.根据权利要求1所述的方法,当所述第n标识中的第二子标识不存在于所述对应关系中,且所述第二子标识与第二业务数据对应时,还包括:
获取第二隐秘数据,所述第二隐秘数据基于所述第二业务数据与所述第二子标识对应的第二随机数的融合而得到;
将所述第二子标识与对应的所述第二隐秘数据加入所述对应关系中。
17.根据权利要求1所述的方法,当所述第n标识中的子标识不存在于所述对应关系中时,还包括:
基于所述参与方的业务数据与所述参与方的随机数组中对应随机数的融合,确定隐秘数据;
利用所述MPC,基于所述隐秘数据与其他参与方的隐秘数据之间的交换,进行本次联合数据处理。
18.根据权利要求1所述的方法,所述第一隐秘数据基于第一业务数据与对应的第一随机数的差值而得到。
19.一种控制带宽的多方联合数据处理装置,用于对多个参与方的业务数据进行隐私化的联合数据处理,所述业务数据包括多个对象的特征数据,所述装置部署在多个参与方中任意的参与方中,包括:
标识确定模块,配置为,在进行第n次联合数据处理时,确定多个参与方本次相同的第n标识,其中包括与多个参与方的业务数据分别对应的子标识;
随机数确定模块,配置为,通过预设的可信交互方式,基于所述第n标识和多个参与方的初始种子,使得多个参与方分别确定各自的随机数组,其中包括与多个子标识分别对应的多个随机数;
数据获取模块,配置为,当所述第n标识中的第一子标识存在于子标识与隐秘数据的对应关系中时,获取所述第一子标识对应的第一隐秘数据;所述第一隐秘数据预先基于第一业务数据与对应的第一随机数的融合而得到;
联合处理模块,配置为,利用多方安全计算MPC,多个参与方基于其他隐秘数据的交换以及各自的第一隐秘数据,进行本次联合数据处理;其中,所述其他隐秘数据基于其他业务数据与对应的随机数的融合得到。
20.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-18中任一项所述的方法。
21.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-18中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110378007.7A CN113179158B (zh) | 2021-04-08 | 2021-04-08 | 一种控制带宽的多方联合数据处理方法及装置 |
PCT/CN2022/085259 WO2022213965A1 (zh) | 2021-04-08 | 2022-04-06 | 用于控制带宽的多方联合数据处理方法及装置 |
US18/482,706 US20240039896A1 (en) | 2021-04-08 | 2023-10-06 | Bandwidth controlled multi-party joint data processing methods and apparatuses |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110378007.7A CN113179158B (zh) | 2021-04-08 | 2021-04-08 | 一种控制带宽的多方联合数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113179158A CN113179158A (zh) | 2021-07-27 |
CN113179158B true CN113179158B (zh) | 2022-05-17 |
Family
ID=76924643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110378007.7A Active CN113179158B (zh) | 2021-04-08 | 2021-04-08 | 一种控制带宽的多方联合数据处理方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240039896A1 (zh) |
CN (1) | CN113179158B (zh) |
WO (1) | WO2022213965A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113179158B (zh) * | 2021-04-08 | 2022-05-17 | 支付宝(杭州)信息技术有限公司 | 一种控制带宽的多方联合数据处理方法及装置 |
CN114301591B (zh) * | 2021-12-28 | 2024-06-18 | 支付宝(杭州)信息技术有限公司 | 不经意传输协议的执行方法、装置及*** |
CN116226928B (zh) * | 2023-05-09 | 2024-04-16 | 京东科技控股股份有限公司 | 多方业务隐私数据的联合计算方法、装置、设备和介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111401479A (zh) * | 2020-04-17 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 多方联合对隐私数据进行降维处理的方法和装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10972259B2 (en) * | 2016-09-05 | 2021-04-06 | Lg Electronics Inc. | Lightweight and escrow-less authenticated key agreement for the internet of things |
US11818255B2 (en) * | 2018-03-09 | 2023-11-14 | Koninklijke Philips N.V. | Batch-wise verification of multiparty computations |
CN110661764A (zh) * | 2018-06-29 | 2020-01-07 | 阿里巴巴集团控股有限公司 | 安全多方计算协议的输入获取方法和装置 |
US11050762B2 (en) * | 2018-07-06 | 2021-06-29 | Nec Corporation Of America | High throughput secure multi-party computation with identifiable abort |
CN109359470B (zh) * | 2018-08-14 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 多方安全计算方法及装置、电子设备 |
US10673625B1 (en) * | 2019-06-15 | 2020-06-02 | University Of South Florida | Efficient identity-based and certificateless cryptosystems |
CN111563261A (zh) * | 2020-05-15 | 2020-08-21 | 支付宝(杭州)信息技术有限公司 | 一种基于可信执行环境的隐私保护多方计算方法和*** |
CN111523144B (zh) * | 2020-07-03 | 2020-10-16 | 支付宝(杭州)信息技术有限公司 | 针对多方的隐私数据进行安全运算的方法和装置 |
CN111885079B (zh) * | 2020-07-31 | 2022-04-12 | 支付宝(杭州)信息技术有限公司 | 保护数据隐私的多方联合处理数据的方法及装置 |
CN111901111B (zh) * | 2020-08-06 | 2023-07-25 | 成都卫士通信息产业股份有限公司 | Sm9密钥生成方法、装置、***及可读存储介质 |
CN112395633B (zh) * | 2020-12-30 | 2021-08-03 | 支付宝(杭州)信息技术有限公司 | 保护隐私的多方联合进行数据统计的方法和装置 |
CN113179158B (zh) * | 2021-04-08 | 2022-05-17 | 支付宝(杭州)信息技术有限公司 | 一种控制带宽的多方联合数据处理方法及装置 |
-
2021
- 2021-04-08 CN CN202110378007.7A patent/CN113179158B/zh active Active
-
2022
- 2022-04-06 WO PCT/CN2022/085259 patent/WO2022213965A1/zh active Application Filing
-
2023
- 2023-10-06 US US18/482,706 patent/US20240039896A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111401479A (zh) * | 2020-04-17 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 多方联合对隐私数据进行降维处理的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US20240039896A1 (en) | 2024-02-01 |
CN113179158A (zh) | 2021-07-27 |
WO2022213965A1 (zh) | 2022-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021197037A1 (zh) | 双方联合进行数据处理的方法及装置 | |
EP3811560B1 (en) | Systems and methods for permissioned blockchain infrastructure with fine-grained access control and confidentiality-preserving publish/subscribe messaging | |
CN113179158B (zh) | 一种控制带宽的多方联合数据处理方法及装置 | |
US11341269B2 (en) | Providing security against user collusion in data analytics using random group selection | |
Chen et al. | When homomorphic encryption marries secret sharing: Secure large-scale sparse logistic regression and applications in risk control | |
EP3075098B1 (en) | Server-aided private set intersection (psi) with data transfer | |
EP3114602B1 (en) | Method and apparatus for verifying processed data | |
US20240064008A1 (en) | Computer implemented method and system for transferring control of a digital asset | |
Liu et al. | An efficient privacy-preserving outsourced computation over public data | |
US20220255743A1 (en) | Cryptographic Pseudonym Mapping Method, Computer System, Computer Program And Computer-Readable Medium | |
CN113609781A (zh) | 基于联邦学习的汽车生产模具优化方法、***、设备及介质 | |
CN112800479B (zh) | 利用可信第三方的多方联合数据处理方法及装置 | |
CN114492850A (zh) | 基于联邦学习的模型训练方法、设备、介质及程序产品 | |
Fang et al. | Encrypted scalar product protocol for outsourced data mining | |
US20230385446A1 (en) | Privacy-preserving clustering methods and apparatuses | |
WO2024138854A1 (zh) | 联邦学习预测阶段隐私保护方法及*** | |
CN109815715A (zh) | 一种数据加密方法和相关装置 | |
US10356056B2 (en) | Method and system for privacy-preserving order statistics in a star network | |
CN113901500B (zh) | 图拓扑嵌入方法、装置、***、设备及介质 | |
CN113065156B (zh) | 一种控制延时的多方联合数据处理方法及装置 | |
Shi et al. | Privacy preserving growing neural gas over arbitrarily partitioned data | |
Li et al. | A fully dynamic multi-secret sharing scheme with redundant authorization | |
Geng et al. | Practical SS-MPC for collusion whole | |
Feng et al. | LPP-BPSI: A location privacy-preserving scheme using blockchain and Private Set Intersection in spatial crowdsourcing | |
Soare | Secure Cumulative Reward Maximization in Linear Stochastic Bandits |
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 |