掌桥专利:专业的专利平台
掌桥专利
首页

一种数据统计方法、装置、设备以及存储介质

文献发布时间:2024-04-18 20:01:23


一种数据统计方法、装置、设备以及存储介质

技术领域

本申请涉及计算机技术领域,尤其涉及一种基于多方安全计算的数据统计方法、装置、设备以及存储介质。

背景技术

随着计算机技术和互联网技术的发展,大数据分析已经成为了相关领域进行业务处理的重要技术手段。

由于不同的数据方往往拥有的数据也并不相同,为了充分挖掘数据价值,在现有技术中经常需要多数据方合作,进行数据的联合统计分析,尤其在集团性企业或者同业跨机构内,更是普遍存在需要多方联合起来做数据统计的需求。例如保险集团公司内部需要统计多家子公司全量客户、总体保费等统计需求。

然而,传统的明文数据共享和API数据接口共享方案有泄漏隐私风险,且随着《个人信息保护法》的正式实施,出于隐私保护的考虑,各方都不便于将各自的数据进行共享并通过明文的方式进行统计,各数据源方之间形成了“数据孤岛”现象,导致难以充分挖掘数据价值。

由此可见,如何在保证数据安全以及隐私安全的情况下,利用多方数据进行联合统计分析,成为目前本领域相关技术人员亟待解决的问题。

发明内容

本申请实施例提供一种基于多方安全计算的数据统计方法,用以在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,解决了由于现有数据源方出于隐私安全的原因,不愿意进行数据共享,而导致难以充分挖掘数据价值的问题。

本申请实施例还提供一种基于多方安全计算的数据统计装置,用以在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,解决了由于现有数据源方出于隐私安全的原因,不愿意进行数据共享,而导致难以充分挖掘数据价值的问题。

本申请实施例还提供一种基于多方安全计算的数据统计设备,用以在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,解决了由于现有数据源方出于隐私安全的原因,不愿意进行数据共享,而导致难以充分挖掘数据价值的问题。

本申请实施例还提供一种计算机可读存储介质,用以在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,解决了由于现有数据源方出于隐私安全的原因,不愿意进行数据共享,而导致难以充分挖掘数据价值的问题。

本申请实施例采用下述技术方案:

一种基于多方安全计算的数据统计方法,应用于数据需求方,包括:数据需求方响应于接收到的数据统计请求,向数据提供方发送密钥协商请求,其中,所述密钥协商请求中携带有参与数据统计的所有数据提供方标识;接收所述数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据,其中,所述加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的;根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

一种基于多方安全计算的数据统计方法,应用于数据提供方,包括:第一数据提供方接收数据需求方发送的密钥协商请求,其中所述密钥协商请求中携带有待统计数据信息,以及参与数据统计的所有数据提供方的标识列表;响应于所述密钥协商请求,生成包含公钥和私钥的密钥对,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求;根据所述标识列表,确定第二数据提供方,并将所述第二密钥协商请求发送至所述第二数据提供方,以使得所述第二数据提供方根据所述第二密钥协商请求中携带的公钥,生成第二私钥,并将所述第二密钥协商请求发送至根据所述标识列表确定的第三数据提供方,所述标识列表中各数据提供方依次传递所述第二密钥协商请求,直至所述标识列表中各数据提供方均根据所述公钥生成对应的私钥,完成密钥协商;各数据提供方根据所述公钥,对本地待统计数据进行加密,得到加密数据,并将所述加密数据以及所述公钥上传至所述数据需求方,以使得所述数据需求方根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

一种基于多方安全计算的数据统计装置,包括:协商请求发起单元,用于响应于接收到的数据统计请求,向数据提供方发送密钥协商请求,其中,所述密钥协商请求中携带有参与数据统计的所有数据提供方标识;加密数据接收单元,用于接收所述数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据,其中,所述加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的;数据统计单元,用于根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

一种基于多方安全计算的数据统计装置,应用于数据提供方,包括:协商请求接收单元,用于接收数据需求方发送的密钥协商请求,其中所述密钥协商请求中携带有待统计数据信息,以及参与数据统计的所有数据提供方的标识列表;协商密钥生成单元,用于响应于所述密钥协商请求,生成包含公钥和私钥的密钥对,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求;密钥协商单元,用于根据所述标识列表,确定第二数据提供方,并将所述第二密钥协商请求发送至所述第二数据提供方,以使得所述第二数据提供方根据所述第二密钥协商请求中携带的公钥,生成第二私钥,并将所述第二密钥协商请求发送至根据所述标识列表确定的第三数据提供方,所述标识列表中各数据提供方依次传递所述第二密钥协商请求,直至所述标识列表中各数据提供方均根据所述公钥生成对应的私钥,完成密钥协商;加密单元,用于各数据提供方根据所述公钥,对本地待统计数据进行加密,得到加密数据,并将所述加密数据以及所述公钥上传至所述数据需求方,以使得所述数据需求方根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

一种基于多方安全计算的数据统计设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:数据需求方响应于接收到的数据统计请求,向数据提供方发送密钥协商请求,其中,所述密钥协商请求中携带有参与数据统计的所有数据提供方标识;接收所述数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据,其中,所述加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的;根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

一种基于多方安全计算的数据统计设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:第一数据提供方接收数据需求方发送的密钥协商请求,其中所述密钥协商请求中携带有待统计数据信息,以及参与数据统计的所有数据提供方的标识列表;响应于所述密钥协商请求,生成包含公钥和私钥的密钥对,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求;根据所述标识列表,确定第二数据提供方,并将所述第二密钥协商请求发送至所述第二数据提供方,以使得所述第二数据提供方根据所述第二密钥协商请求中携带的公钥,生成第二私钥,并将所述第二密钥协商请求发送至根据所述标识列表确定的第三数据提供方,所述标识列表中各数据提供方依次传递所述第二密钥协商请求,直至所述标识列表中各数据提供方均根据所述公钥生成对应的私钥,完成密钥协商;各数据提供方根据所述公钥,对本地待统计数据进行加密,得到加密数据,并将所述加密数据以及所述公钥上传至所述数据需求方,以使得所述数据需求方根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:数据需求方响应于接收到的数据统计请求,向数据提供方发送密钥协商请求,其中,所述密钥协商请求中携带有参与数据统计的所有数据提供方标识;接收所述数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据,其中,所述加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的;根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:第一数据提供方接收数据需求方发送的密钥协商请求,其中所述密钥协商请求中携带有待统计数据信息,以及参与数据统计的所有数据提供方的标识列表;响应于所述密钥协商请求,生成包含公钥和私钥的密钥对,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求;根据所述标识列表,确定第二数据提供方,并将所述第二密钥协商请求发送至所述第二数据提供方,以使得所述第二数据提供方根据所述第二密钥协商请求中携带的公钥,生成第二私钥,并将所述第二密钥协商请求发送至根据所述标识列表确定的第三数据提供方,所述标识列表中各数据提供方依次传递所述第二密钥协商请求,直至所述标识列表中各数据提供方均根据所述公钥生成对应的私钥,完成密钥协商;各数据提供方根据所述公钥,对本地待统计数据进行加密,得到加密数据,并将所述加密数据以及所述公钥上传至所述数据需求方,以使得所述数据需求方根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计

本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:

采用本申请实施例提供的基于多方安全计算的数据统计方法,当数据需求方需要对多个数据提供方的数据进行统计时,数据需求方可以在所有数据提供方中随机选择一个作为第一数据提供方,并向该第一数据提供方发送携带有参与数据统计的所有数据提供方标识的密钥协商请求,第一数据提供方响应于接收到的密钥协商请求,生成包含公钥和私钥的密钥对,根据密钥协商请求中携带的标识列表,确定第二数据提供方,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求,进而将第二密钥协商请求发送至第二数据提供方,第二数据提供方根据第二密钥协商请求中携带的公钥,生成第二私钥,并将第二密钥协商请求发送至根据标识列表确定的第三数据提供方,数据提供方依次执行上述操作,直至该标识列表中所有数据提供方均根据公钥生成对应的私钥,并通知数据需求方密钥协商已完成;各数据提供方可以根据协商得到的统一公钥,对各自本地待统计数据进行加密,得到加密数据,并将加密数据以及协商得到的公钥上传至数据需求方,数据需求方根据公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。由于采用本申请实施例所提供的方法,数据需求方在进行多方数据统计的过程中,传递的是经过协商得到的密钥进行加密处理后的密文数据,明文数据并未离开各数据提供方,数据需求方基于隐私求交算法对密文数据进行求交,在得到数据统计结果的同时,并未获取数据提供方的隐私数据,保证了各数据提供方的隐私数据在数据需求方上的可用不可见,从而在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,消除了数据孤岛效应,充分挖掘了数据的价值。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的一种基于多方安全计算的数据统计系统的具体结构示意图;

图2为本申请实施例提供的一种基于多方安全计算的数据统计方法的具体流程示意图;

图3为本申请实施例提供的一种基于多方安全计算的数据统计装置的具体结构示意图;

图4为本申请实施例提供的一种基于多方安全计算的数据统计装置的具体结构示意图;

图5为本申请实施例提供的一种基于多方安全计算的数据统计设备的具体结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下结合附图,详细说明本申请各实施例提供的技术方案。

本申请实施例提供的一种基于多方安全计算的数据统计方法,用以在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,解决了由于现有数据源方出于隐私安全的原因,不愿意进行数据共享,而导致难以充分挖掘数据价值的问题。

本申请实施例提供的基于多方安全计算的数据统计方法的执行主体,可以但不限于为保险服务器、购物服务器、视频服务器、广告推荐服务器以及社交服务器等中的至少一种。

为便于描述,下文以该方法的执行主体为保险服务器为例,对该方法的实施方式进行介绍。可以理解,该方法的执行主体为保险服务器只是一种示例性的说明,并不应理解为对该方法的限定。

在一种实施方式中,下文可以以本申请实施例提供的基于多方安全计算的数据统计方法应用于包含有四个针对不同险种的保险服务器为例,对该方法的具体实施方式进行介绍,四个保险服务器可以分别对应了四个保险公司,四个保险服务器之间可以通过有线或无线的方式相连,以进行具体的数据交互。在本申请实施例中,当其中某个保险服务器有数据统计需求时,则可以将该保险服务器作为数据需求方,并由该保险服务器向其他三个保险服务器发起多方数据统计请求以及对接收到的数据进行隐私计算得到数据统计结果,而其他三个服务器可以作为数据提供方,响应于数据需求方发送的请求,进行密钥协商以及隐私数据加密,并将加密后的密文数据提供给数据需求方,具体系统架构如图1所示。

这里需要说明的是,本发明实施例对各保险服务器具体采用何种安全计算协议进行隐私计算不做限制。例如,各保险服务器可以基于多方安全计算(Multi-partycomputation,MPC)协议,使用多方安全计算技术对多个参与方的隐私数据进行计算得到计算结果。当然,各保险服务器还可以采用基于秘密分享、半同态、不经意传输等技术实现的多方安全计算协议。

以图1所示的系统架构为例,本申请所提供的基于多方安全计算的数据统计方法的具体实现流程示意图如图2所示,主要包括下述步骤:

步骤11,数据需求方响应于接收到的数据统计请求,向数据提供方发送密钥协商请求;

其中,该数据统计请求可以是保险服务器的后台管理人员根据业务需求,通过保险服务器对应的前端操作系统,向保险服务器发送的;或者,也可以是保险服务器根据预先设置的数据统计规则(比如,可以按照每月、每季度或者每年的频次进行数据统计),在满足条件后自行触发的,本申请实施例对数据统计请求的发送方式不做限定。

在本申请实施例中,该数据统计请求中携带有待统计的数据信息(比如,待统计的保险类型、待统计的险种名称或者待统计的用户姓名、用户年龄或者性别等信息)以及所要求统计的数据来源,即具体的数据提供方信息(比如,待统计的数据具体来自哪几个公司),则数据需求方可以根据接收到的数据统计请求,确定参与本次数据统计的数据提供方以及待统计的数据信息,进而根据该些信息生成密钥协商请求。

在本申请实施例中,在数据需求方生成了密钥协商请求后,可以从参与数据统计的所有数据提供方的标识列表随机选择一个数据提供方,作为第一数据提供方,并首先将密钥协商请求发送给该第一数据提供方,进而通过该第一数据提供方开始进行密钥协商。另外这里需要说明的是,数据需求方除了可以采用随机的方式选择第一数据提供方外,还可以根据预先设计的选取规则进行第一数据提供方的选取,本申请实施例对数据需求方选择第一数据提供方作为密钥协商请求的接收方的具体方式不做限定。

步骤12,第一数据提供方接收数据需求方通过执行步骤11发送的密钥协商请求;

其中,密钥协商请求中携带有待统计数据信息,以及参与数据统计的所有数据提供方的标识列表。

步骤13,响应于接收到的密钥协商请求,生成包含公钥和私钥的密钥对,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求;

第一数据提供方在接收到密钥协商请求后,首先可以生成一对相互对应的密钥对,该密钥对中包含第一私钥(可以记为sk

这里需要说明的是,在接收到密钥协商请求后,第一数据提供方除了会生成用于传递的第二密钥协商请求外,还可以根据密钥协商请求中所携带的待统计数据信息,对本地待统计数据进行采集。在本申请实施例中,数据提供方可以根据待统计数据信息,生成数据采集规则(比如,可以根据待统计数据信息中包含的“年龄信息”,设置针对“20岁以上用户对应的保险数据进行采集”的数据采集规则),并设置数据采集频率,以及数据更新周期,进而在接收到密钥协商请求后,数据提供方可以自动对本地待统计数据进行采集,并按照预设的更新周期,定时对待统计数据进行动态更新。

另外,这里需要说明的是,在接收到密钥协商请求后,数据提供方可以同步执行第二密钥协商请求的生成步骤以及待统计数据的采集步骤;或者数据提供方也可以按照特定顺序依次执行上述两个步骤,比如可以先执行第二密钥协商请求的生成步骤再执行待统计数据的采集步骤,或者也可以先执行待统计数据的采集步骤再以及执行第二密钥协商请求的生成步骤,本申请实施例对上述两个步骤的执行顺序不做限定。

步骤14,第一数据提供方根据标识列表,确定第二数据提供方,并将通过执行步骤13生成的第二密钥协商请求发送至所述第二数据提供方;

这里需要说明的是,第一数据提供方可以在标识列表中随机选择一个数据提供方作为第二数据提供方,或者第一数据提供方也可以按照数据需求方预先设置的密钥协商顺序选择第二数据提供方。

为了方便数据提供方可以确定密钥协商过程何时完成,数据提供方在传递第二密钥协商请求之前,可以将已完成密钥协商的数据提供方标识添加在第二密钥协商请求中,以使得后续接收到的该第二密钥协商请求的服务器可以根据已完成密钥协商的标识以及标识列表,确定密钥协商是否完成,并在确定密钥协商过程未完成时,根据已完成密钥协商的标识对标识列表进行筛选,得到还未进行密钥协商的其他数据提供方,并从该些数据提供方中选取出可以进行第二密钥协商请求传递的数据提供方。

具体地,在一种实施方式中,数据提供方可以按照如下方式进行密钥协商请求的传递:在所述第二密钥协商请求中添加已完成密钥协商的数据提供方标识,将添加已完成密钥协商的数据提供方标识的第二密钥协商请求发送至根据所述标识列表确定的第二数据提供方。

步骤15,第二数据提供方根据接收到的第二密钥协商请求中携带的公钥,生成第二私钥;

在本申请实施例中,第二数据提供方可以根据预设的同态加密算法,根据接收到的第一公钥生成对应的第二私钥。在一种实施方式中,该同态加密算法具体可以是多秘钥的EIGamal同态加密算法(Multi-Key ElGamal encryption algorithm),或者也可以是根据具体情况和处理需求,选择的其他类型合适的同态加密算法作为预设的同态加密算法,本申请实施例对数据提供方具体采用何种方法计算私钥不做限定。

但是这里需要说明的是,在进行密钥协商中,各数据提供方所使用的、计算私钥的加密算法需要保持一致。在一种实施方式中,密钥协商过程中各数据提供方所使用的加密算法可以是由数据需求方预先设置的,或者也可以是各数据提供方预先约定的。

另外,这里还需要说明的是,在接收到密钥协商请求后,第二数据提供方也会根据第二密钥协商请求中所携带的待统计数据信息,对本地待统计数据进行采集。具体的数据采集以及数据动态更新的方法详见上文描述,此处不再赘述。

步骤16,第二数据提供方根据标识列表确定的第三数据提供方,并将第二密钥协商请求发送至第三数据提供方,循环执行上述步骤15~步骤16,直至标识列表中各数据提供方均根据通过执行步骤13,由第一数据提供方生成的第一公钥生成对应的私钥后,完成密钥协商过程。

以本申请实施例中图1所示的三个数据提供方为例,则在第三数据提供方根据第一密钥生成对应的第三私钥,并完成本地数据采集后,即完成了密钥协商过程,在完成密钥协商后,第三数据提供方将会通知数据需求方密钥协商已完成。

步骤17,数据需求方在确定密钥协商过程完成后,可以通知各数据提供方进行数据加密上传,进而各数据提供方可以利用公钥对采集到的本地待统计数据进行加密,并将加密后得到的密文数据上传至数据需求方;

这里需要说明的是,由于各数据提供方所拥有数据的质量以及关注维度往往各不相同,因而由各数据提供方处提供的数据其在具体数据关键字段对应的属性数据往往也存在差别。比如,由于业务领域的不同,针对“既往病史”这一特征,数据提供方1以及数据提供方2并不重视该特征,因而数据提供方1以及数据提供方2在进行客户数据录入时,可能会漏填该项数据,进而导致在数据提供方1以及数据提供方2上传的数据中,存在大量“既往病史”特征的属性值为“空”的数据。为了避免针对该类关键字段为空的数据,在后续的数据统计过程中无法进行统计去重的问题,在本申请实施例中,各数据提供方在对根据协商确定的公钥对本地待统计数据进行加密之前,可以先对待统计数据进行分组筛选。

具体地,各数据提供方根据待统计数据的各特征对应的属性数据是否为空,来对待统计数据进行分组筛选。例如,以待统计数据中“身份证号”这个特征为例,第一数据提供方可以根据身份证号是否为空,对第一数据提供方采集得到的待统计数据P1进行分组,得到数据分组P11:该分组中数据的身份证号为空,以及数据分组P12:该分组中数据的身份证号不为空。同理,第二数据提供方可以对采集得到的待统计数据P2进行分组,得到数据分组P21:该分组中数据的身份证号为空,以及数据分组P22:该分组中数据的身份证号不为空;第三数据提供方可以对采集得到的待统计数据P3进行分组,得到数据分组P31以及数据分组P32。进而后续在进行数据统计去重时,数据需求方可以根据该些数据分组,灵活配置用于隐私求交的字段,进而实现对于一些字段的空值的数据也进行了筛序去重,从而保证了数据统计结果的完整性。

在完成数据分组后,各数据提供方可以利用经过密钥协商得到的第一公钥对采集到的待统计数据进行加密,得到加密后的密文数据。例如,数据提供方采集到的待统计数据可以表示为:{X

在一种实施方式中,数据提供方可以按照如下公式[1]来对待统计数据进行加密,得到密文数据:

W(1,i)=W(P

其中,P

这里需要说明的是,数据提供方使用公钥加密得到的密文数据,需要使用该数据提供方对应的私钥进行解密处理后,才能得到相应的明文数据,进而数据需求方无法根据获取到的密文数据解密得到明文数据,保证了各数据提供方的数据安全。

步骤18,接收各数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据;

其中,加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的。

步骤19,数据需求方基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

在一种实施方式中,数据需求方可以通过理赔风险识别服务器可以通过秘密分享、同态加密、混淆电路、不经意传输中的至少一种实现对加密数据的隐私求交,本申请实施例对数据需求方采用何种方式对加密数据进行数据求交不做限定。

在本申请实施例中,数据需求方可以分组对加密数据进行隐私求交,确定各分组数据对应的隐私求交结果,进而通过各分组数据对应的隐私求交结果进行合并去重处理,进而得到针对各数据提供方的最终数据统计结果。具体地,数据需求方可以通过下述方法完成对加密数据的隐私求交:对所述加密数据进行分组,得到与各所述数据提供方对应的分组加密数据;针对各所述数据提供方对应的分组加密数据,基于隐私集合求交PSI算法分别对所述分组加密数据与所述数据需求方持有的隐私数据进行隐私集合求交,确定隐私求交结果;对所述隐私求交结果进行合并去重,得到对所述数据提供方的数据统计结果,针对所有数据提供方的数据统计。

采用本申请实施例提供的基于多方安全计算的数据统计方法,当数据需求方需要对多个数据提供方的数据进行统计时,数据需求方可以在所有数据提供方中随机选择一个作为第一数据提供方,并向该第一数据提供方发送携带有参与数据统计的所有数据提供方标识的密钥协商请求,第一数据提供方响应于接收到的密钥协商请求,生成包含公钥和私钥的密钥对,根据密钥协商请求中携带的标识列表,确定第二数据提供方,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求,进而将第二密钥协商请求发送至第二数据提供方,第二数据提供方根据第二密钥协商请求中携带的公钥,生成第二私钥,并将第二密钥协商请求发送至根据标识列表确定的第三数据提供方,数据提供方依次执行上述操作,直至该标识列表中所有数据提供方均根据公钥生成对应的私钥,并通知数据需求方密钥协商已完成;各数据提供方可以根据协商得到的统一公钥,对各自本地待统计数据进行加密,得到加密数据,并将加密数据以及协商得到的公钥上传至数据需求方,数据需求方根据公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。由于采用本申请实施例所提供的方法,数据需求方在进行多方数据统计的过程中,传递的是经过协商得到的密钥进行加密处理后的密文数据,明文数据并未离开各数据提供方,数据需求方基于隐私求交算法对密文数据进行求交,在得到数据统计结果的同时,并未获取数据提供方的隐私数据,保证了各数据提供方的隐私数据在数据需求方上的可用不可见,从而在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,消除了数据孤岛效应,充分挖掘了数据的价值。

在一种实施方式中,本申请实施例还提供了一种基于多方安全计算的数据统计装置,应用于数据需求方,用以在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,解决了由于现有数据源方出于隐私安全的原因,不愿意进行数据共享,而导致难以充分挖掘数据价值的问题。该基于多方安全计算的数据统计装置的具体结构示意图如图3所示,包括:协商请求发起单元31、加密数据接收单元32以及数据统计单元33。

其中,协商请求发起单元31,用于响应于接收到的数据统计请求,向数据提供方发送密钥协商请求,其中,所述密钥协商请求中携带有参与数据统计的所有数据提供方标识;

加密数据接收单元32,用于接收所述数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据,其中,所述加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的;

数据统计单元33,用于根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

在一种实施方式中,数据统计单元33,具体用于:对所述加密数据进行分组,得到与各所述数据提供方对应的分组加密数据;针对各所述数据提供方对应的分组加密数据,基于隐私集合求交PSI算法分别对所述分组加密数据与所述数据需求方持有的隐私数据进行隐私集合求交,确定隐私求交结果;对所述隐私求交结果进行合并去重,得到对所述数据提供方的数据统计结果,针对所有数据提供方的数据统计。

在一种实施方式中,隐私集合求交通过秘密分享、同态加密、混淆电路、不经意传输中的至少一种实现。

采用本申请实施例提供的基于多方安全计算的数据统计装置,当数据需求方需要对多个数据提供方的数据进行统计时,数据需求方可以在所有数据提供方中随机选择一个作为第一数据提供方,并向该第一数据提供方发送携带有参与数据统计的所有数据提供方标识的密钥协商请求,第一数据提供方响应于接收到的密钥协商请求,生成包含公钥和私钥的密钥对,根据密钥协商请求中携带的标识列表,确定第二数据提供方,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求,进而将第二密钥协商请求发送至第二数据提供方,第二数据提供方根据第二密钥协商请求中携带的公钥,生成第二私钥,并将第二密钥协商请求发送至根据标识列表确定的第三数据提供方,数据提供方依次执行上述操作,直至该标识列表中所有数据提供方均根据公钥生成对应的私钥,并通知数据需求方密钥协商已完成;各数据提供方可以根据协商得到的统一公钥,对各自本地待统计数据进行加密,得到加密数据,并将加密数据以及协商得到的公钥上传至数据需求方,数据需求方根据公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。由于采用本申请实施例所提供的方法,数据需求方在进行多方数据统计的过程中,传递的是经过协商得到的密钥进行加密处理后的密文数据,明文数据并未离开各数据提供方,数据需求方基于隐私求交算法对密文数据进行求交,在得到数据统计结果的同时,并未获取数据提供方的隐私数据,保证了各数据提供方的隐私数据在数据需求方上的可用不可见,从而在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,消除了数据孤岛效应,充分挖掘了数据的价值。

在一种实施方式中,本申请实施例还提供了一种基于多方安全计算的数据统计装置,应用于数据提供方,用以在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,解决了由于现有数据源方出于隐私安全的原因,不愿意进行数据共享,而导致难以充分挖掘数据价值的问题。该基于多方安全计算的数据统计装置的具体结构示意图如图4所示,包括:协商请求接收单元41、协商密钥生成单元42、密钥协商单元43以及加密单元44。

其中,协商请求接收单元41,用于接收数据需求方发送的密钥协商请求,其中所述密钥协商请求中携带有待统计数据信息,以及参与数据统计的所有数据提供方的标识列表;

协商密钥生成单元42,用于响应于所述密钥协商请求,生成包含公钥和私钥的密钥对,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求;

密钥协商单元43,用于根据所述标识列表,确定第二数据提供方,并将所述第二密钥协商请求发送至所述第二数据提供方,以使得所述第二数据提供方5根据所述第二密钥协商请求中携带的公钥,生成第二私钥,并将所述第二密钥协商请求发送至根据所述标识列表确定的第三数据提供方,所述标识列表中各数据提供方依次传递所述第二密钥协商请求,直至所述标识列表中各数据提供方均根据所述公钥生成对应的私钥,完成密钥协商;

加密单元44,用于各数据提供方根据所述公钥,对本地待统计数据进行加0密,得到加密数据,并将所述加密数据以及所述公钥上传至所述数据需求方,

以使得所述数据需求方根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

在一种实施方式中,密钥协商单元43,具体用于在所述第二密钥协商请求

中添加已完成密钥协商的数据提供方标识,将添加已完成密钥协商的数据提供5方标识的第二密钥协商请求发送至根据所述标识列表确定的第三数据提供方。

采用本申请实施例提供的基于多方安全计算的数据统计装置,当数据需求方需要对多个数据提供方的数据进行统计时,数据需求方可以在所有数据提供方中随机选择一个作为第一数据提供方,并向该第一数据提供方发送携带有参

与数据统计的所有数据提供方标识的密钥协商请求,第一数据提供方响应于接0收到的密钥协商请求,生成包含公钥和私钥的密钥对,根据密钥协商请求中携带的标识列表,确定第二数据提供方,并根据所述公钥以及所述密钥协商请求生成第二密钥协商请求,进而将第二密钥协商请求发送至第二数据提供方,第二数据提供方根据第二密钥协商请求中携带的公钥,生成第二私钥,并将第二

密钥协商请求发送至根据标识列表确定的第三数据提供方,数据提供方依次执5行上述操作,直至该标识列表中所有数据提供方均根据公钥生成对应的私钥,

并通知数据需求方密钥协商已完成;各数据提供方可以根据协商得到的统一公钥,对各自本地待统计数据进行加密,得到加密数据,并将加密数据以及协商得到的公钥上传至数据需求方,数据需求方根据公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。由于采用本申请实施例所提供的方法,数据需求方在进行多方数据统计的过程中,传递的是经过协商得到的密钥进行加密处理后的密文数据,明文数据并未离开各数据提供方,数据需求方基于隐私求交算法对密文数据进行求交,在得到数据统计结果的同时,并未获取数据提供方的隐私数据,保证了各数据提供方的隐私数据在数据需求方上的可用不可见,从而在保证数据方隐私数据安全的情况下,实现多方数据联合统计与共享,消除了数据孤岛效应,充分挖掘了数据的价值。

图5是本申请的一个实施例电子设备的结构示意图。请参考图5,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。

处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。

处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成基于多方安全计算的数据统计装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:

响应于接收到的数据统计请求,向数据提供方发送密钥协商请求,其中,所述密钥协商请求中携带有待统计数据信息以及参与数据统计的所有数据提供方的标识列表;接收所述数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据,其中,所述加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的;根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

上述如本申请图5所示实施例揭示的基于多方安全计算的数据统计电子设备执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图2所示实施例的方法,并具体用于执行以下操作:

响应于接收到的数据统计请求,向数据提供方发送密钥协商请求,其中,所述密钥协商请求中携带有待统计数据信息以及参与数据统计的所有数据提供方的标识列表;接收所述数据提供方通过密钥协商确定的公钥,以及所述数据提供方上传的加密数据,其中,所述加密数据为各数据提供方基于所述公钥对本地待统计数据进行加密后得到的;根据所述公钥,基于隐私集合求交PSI算法对接收到的所述加密数据进行数据求交合并,完成针对所有数据提供方的数据统计。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 一种带有导流板的V型火焰稳定器
  • 一种交错导流中缝式V型火焰稳定器
技术分类

06120116553039