CN114444106A - 相关系数获取方法、装置、电子设备和存储介质 - Google Patents
相关系数获取方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN114444106A CN114444106A CN202210116753.3A CN202210116753A CN114444106A CN 114444106 A CN114444106 A CN 114444106A CN 202210116753 A CN202210116753 A CN 202210116753A CN 114444106 A CN114444106 A CN 114444106A
- Authority
- CN
- China
- Prior art keywords
- data
- homomorphic
- original data
- encrypted
- correlation coefficient
- 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.)
- Granted
Links
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/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- 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/602—Providing cryptographic facilities or services
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了相关系数获取方法、装置、电子设备和存储介质,涉及数据处理领域,具体为大数据、深度学习和人工智能技术领域。具体实现方案为:获取第一原始数据,并采用关联密钥对第一原始数据进行同态加密,确定第一传输数据,关联密钥为第一参与节点与第二参与节点共同约定;将第一传输数据发送至辅助节点,以使辅助节点接收第一传输数据,并对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,第二传输数据通过第二参与节点采用关联密钥对第二原始数据进行同态加密确定;接收辅助节点反馈的相关系数。本公开实施例可以提高相关系数计算数据的安全性。
Description
技术领域
本公开涉及数据处理领域,具体为大数据、深度学习和人工智能技术领域,尤其涉及相关系数获取方法、装置、电子设备和存储介质。
背景技术
目前,数据之间的相关性分析,深刻地影响着人们的决策。尤其是面对互联网中海量的数据,可以根据数据之间的相关性分析对数据进行筛选,从而辅助用户进行数据处理。
例如,在训练联邦学习模型过程中,需要汇聚多个参与方提供的样本数据。可以采用样本数据之间的相关性分析,对输入到联邦学习模型中的样本数据进行筛选。
发明内容
本公开提供了一种相关系数获取方法、装置、电子设备和存储介质。
根据本公开的一方面,提供了一种相关系数获取方法,应用于第一参与节点,包括:
获取第一原始数据,并采用关联密钥对第一原始数据进行同态加密,确定第一传输数据,关联密钥为第一参与节点与第二参与节点共同约定;
将第一传输数据发送至辅助节点,以使辅助节点接收第一传输数据,并对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,其中,第二传输数据通过第二参与节点采用关联密钥对第二原始数据进行同态加密确定;
接收辅助节点反馈的相关系数。
根据本公开的另一方面,提供了一种相关系数获取方法,应用于辅助节点,包括:
接收第一参与节点发送的第一传输数据,以及第二参与节点发送的第二传输数据;
对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,第一传输数据通过第一参与节点采用关联密钥对第一原始数据同态加密确定,第二传输数据通过第二参与节点采用关联密钥对第二原始数据同态加密确定,关联密钥为第一参与节点与第二参与节点共同约定;
将相关系数,发送至第一参与节点和第二参与节点。
根据本公开的一方面,提供了一种相关系数获取装置,配置于第一参与节点,包括:
第一原始数据同态加密模块,用于获取第一原始数据,并采用关联密钥对第一原始数据进行同态加密,确定第一传输数据,关联密钥为第一参与节点与第二参与节点共同约定;
第一传输数据发送模块,用于将第一传输数据发送至辅助节点,以使辅助节点接收第一传输数据,并对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,其中,第二传输数据通过第二参与节点采用关联密钥对第二原始数据进行同态加密确定;
相关系数获取模块,用于接收辅助节点反馈的相关系数。
根据本公开的另一方面,提供了一种相关系数获取装置,配置于辅助节点,包括:
传输数据获取模块,用于接收第一参与节点发送的第一传输数据,以及第二参与节点发送的第二传输数据;
传输数据同态运算模块,用于对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,第一传输数据通过第一参与节点采用关联密钥对第一原始数据同态加密确定,第二传输数据通过第二参与节点采用关联密钥对第二原始数据同态加密确定,关联密钥为第一参与节点与第二参与节点共同约定;
相关系数发送模块,用于将相关系数,发送至第一参与节点和第二参与节点。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开任一实施例的相关系数获取方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开任一实施例的相关系数获取方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开任一实施例的相关系数获取方法。
本公开实施例可以提高相关系数计算数据的安全性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例提供的一种相关系数获取方法的示意图;
图2是根据本公开实施例提供的一种相关系数获取方法的示意图;
图3是根据本公开实施例提供的一种相关系数获取方法的示意图;
图4是根据本公开实施例提供的一种相关系数获取方法的示意图;
图5是根据本公开实施例提供的一种相关系数获取方法的场景图;
图6是根据本公开实施例提供的一种相关系数获取装置的示意图;
图7是根据本公开实施例提供的一种相关系数获取装置的示意图;
图8是用来实现本公开实施例的相关系数获取方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本公开实施例公开的一种相关系数获取方法的流程图,本实施例可以适用于计算两个参与节点的原始数据之间的相关性的情况。本实施例方法可以由相关系数获取装置来执行,该装置可采用软件和/或硬件的方式实现,并具体配置于具有一定数据运算能力的电子设备中,该电子设备是第一参与节点,该电子设备可以是客户端设备或服务器设备,客户端设备例如手机、平板电脑、车载终端和台式电脑等。
S101,获取第一原始数据,并采用关联密钥对第一原始数据进行同态加密,确定第一传输数据,关联密钥为第一参与节点与第二参与节点共同约定。
第一原始数据用于计算相关系数。第一原始数据的内容可以任意配置,例如,可以是联邦学习模型的训练样本数据,又如可以是用户行为数据、车辆行驶轨迹数据或人脸图像数据等,再如,可以是广告投放、金融信用或知识图谱等海量数据。关联密钥用于对第一原始数据进行同态加密。关联密钥为第一参与节点和第二参与节点共同约定,是指,只有第一参与节点与第二参与节点可以获取该关联密钥,其他设备无法获取也无法解密。示例性的,第一参与节点和第二参与节点可以通过密钥交换协议(Diffie Hellman,DH)约定并确定关联密钥。第一参与节点和第二参与节点为不同的节点。第一参与节点的数据和第二参与节点的数据需要进行相关性计算。第一传输数据用于与第二参与节点发送的第二传输数据进行同态运算。第一传输数据可以是指第一参与节点提供的待进行相关系数计算的数据,第一传输数据至少包括同态加密的第一原数数据。
其中,同态加密是指对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的,具体是在数据不解密的情况下,对密文进行加法和/或乘法运算,与对应的明文进行相同运算,得到计算结果相同。
S102,将第一传输数据发送至辅助节点,以使辅助节点接收第一传输数据,并对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,其中,第二传输数据通过第二参与节点采用关联密钥对第二原始数据进行同态加密确定。
辅助节点用于接收第一参与节点发送的第一传输数据,以及接收第二参与节点发送的第二传输数据,并对第一传输数据和第二传输数据进行同态运算。第二传输数据用于与第一传输数据进行同态运算,计算得到相关系数。第二传输数据可以是指第二参与节点提供的待进行相关系数计算的数据,第二传输数据至少包括同态加密的第二原数数据。第一传输数据是根据第一原始数据经过同态加密得到,第二传输数据是根据第二原始数据经过同态加密得到,从而,将第一传输数据和第二传输数据进行同态运算,等同于对第一原始数据和第二原始数据进行同态运算,也即二者同态运算得到的相关系数的输出结果相同。其中,第一原始数据和第二原始数据采用相同的关联密钥进行同态加密,可以使得同态加密的第一原始数据和同态加密的第二原始数据的加密方式一致,避免第一原始数据和第二原始数据采用不一致加密方式,导致加密结果不能实现同态运算,从而准确实现第一传输数据和第二传输数据之间的同态运算。
S103,接收辅助节点反馈的相关系数。
辅助节点计算得到第一传输数据和第二传输数据之间的相关系数,也即第一原始数据和第二原始数据之间的相关系数,并将相关系数反馈给第一参与节点和第二参与节点。由于辅助节点计算的是加密的第一原始数据和加密的第二原始数据,从而,辅助节点无法获取真实的原始数据,从而避免辅助节点获取和泄露参与节点的原始数据,保护原数数据的安全。
现有技术中需要两方数据才能计算相关系数,而数据共享会导致数据中保护的隐私信息泄露。
根据本公开的技术方案,通过参与计算相关系数的第一参与节点对第一原始数据进行同态加密,确定第一传输数据,并将第一传输数据发送至第三方的辅助节点,由辅助节点对第一传输数据和第二传输数据进行同态运算,相当于是对同态加密的第一原始数据,和同态加密的第二原始数据进行同态运算,计算得到同态加密的第一原始数据,和同态加密的第二原始数据之间的相关系数,从而确定第一原始数据,和第二原始数据之间的相关系数,实现在辅助节点无法对传输数据进行解密的情况下,准确计算原始数据之间的相关系数,提高了原始数据的安全,保护隐私信息,提高数据传输安全性和计算安全性,同时提高相关系数的计算准确性。
图2是根据本公开实施例公开的另一种相关系数获取方法的流程图,基于上述技术方案进一步优化与扩展,并可以与上述各个可选实施方式进行结合。采用关联密钥对第一原始数据进行同态加密,具体化为:根据关联密钥,计算第一随机数;根据第一随机数对第一原始数据进行同态加密。
S201,获取第一原始数据,并根据关联密钥,计算第一随机数,关联密钥为第一参与节点与第二参与节点共同约定。
第一随机数用于对原始数据进行同态加密。第一随机数是根据关联密钥生成的随机数。其中,第一参与节点根据关联密钥生成第一随机数,同样,第二参与节点根据关联密钥,采用同样的方式,生成第一随机数。原始数据可以包括至少一条数据。相应的,第一随机数的数量与原始数据包括的数据的数量相同。
S202,根据第一随机数对第一原始数据进行同态加密,确定第一传输数据。
第一原始数据为数据序列,第一随机数为数据序列,可以按照序列中数据的次序,将某个次序的第一随机数,对相同次序的第一原始数据进行同态加密。示例性的,第一原始数据包括N个样本Xi,其中,i=1,2,3……N,相应的,可以根据关联密钥生成N个随机数R={ri|ri∈Z}。其中,ri用于对Xi进行加密。示例性的,同态加密后的第一原始数据为:ri*Xi。
此外,第二参与节点中,同样基于关联密钥,基于相同的随机数生成方式,生成第一随机数。从而,采用相同的第一随机数,实现对第一原始数据和第二原始数据进行同态加密,避免随机数不同导致无法实现同态运算的情况。
需要说明的是,两个参与节点生成相同第一随机数,采用第一随机数对原始数据进行同态加密,并非是采用相同的加密方式分别进行加密。示例性的,相关系数的计算过程中,需要第一原始数据与第二原始数据相乘,第一原始数据的加密方式可以是,将第一随机数与第一原始数据相乘;第二原始数据的加密方式可以是,将第二原始数据与第一随机数的倒数相乘,从而,相关系数的计算过程中,由于第一随机数和第一随机数的倒数的乘积为1,第一原始数据和第二原始数据的乘积,与加密后的第一原始数据和加密后的第二原始数据的乘积相同,从而实现了同态运算。
S203,将第一传输数据发送至辅助节点,以使辅助节点接收第一传输数据,并对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,其中,第二传输数据通过第二参与节点采用关联密钥对第二原始数据进行同态加密确定。
S204,接收辅助节点反馈的相关系数。
可选的,相关系数获取方法,还包括:在样本数据集中,根据第一原始数据和第二原始数据之间的相关系数,对第一原始数据进行筛选,样本数据集中包括第一原始数据,样本数据集用于训练联邦模型。
样本数据集中包括第一原始数据。样本数据集为联邦模型的训练样本的数据集。联邦模型是指将至少两个参与方的样本数据聚合在一起,建立的最优模型,并且,在训练模型时,参与方的数据不用给出己方数据,从而不会泄露本地数据。联邦模型可以包括横向联邦模型、纵向联邦模型和联邦迁移模型等。示例性的,第一原始数据筛选可以是,在样本数据集中选择相关性低的原始数据进行剔除,还可以选择相关性高的原始数据进行剔除。筛选方式具体可以根据训练的联邦模型的性能需求信息确定。
通过在训练联邦模型的应用场景中,可以对两个参与方的样本之间的相关性,对样本进行筛选,可以提高样本的代表性,从而提高联邦模型的检测准确率,同时,对样本筛选可以精简样本的数据量,提高联邦模型的训练效率,并且,在相关性计算时,对原始数据进行加密,可以提高参与方数据的安全,进一步加强联邦模型的数据安全。
根据本公开的技术方案,通过关联密钥进一步生成第一随机数,并基于第一随机数对第一原始数据进行同态加密,增加加密的数据的随机性,提高数据加密破解的难度,进一步提高加密的复杂性,提高原始数据安全。
图3是根据本公开实施例公开的另一种相关系数获取方法的流程图,基于上述技术方案进一步优化与扩展,并可以与上述各个可选实施方式进行结合。采用关联密钥对第一原始数据进行同态加密,确定第一传输数据,具体化为:采用关联密钥对第一原始数据进行同态加密,得到同态加密的第一原始数据;根据第一原始数据和相关系数的计算公式,计算第一中间数据;采用关联密钥对第一中间数据进行同态加密,得到同态加密的第一中间数据;将同态加密的第一原始数据和同态加密的第一中间数据,确定为第一传输数据。
S301,获取第一原始数据,采用关联密钥对第一原始数据进行同态加密,得到同态加密的第一原始数据,关联密钥为第一参与节点与第二参与节点共同约定。
S302,根据第一原始数据和相关系数的计算公式,计算第一中间数据。
其中,相关系数的计算公式中,可以对第一原始数据进行多层运算,可以将部分运算的结果确定为中间数据。第一中间数据用于直接计算相关系数。第一中间数据是指根据相关系数的计算公式中涉及原始数据的计算公式,对原始数据进行计算,得到的计算结果。例如,第一原始数据包括多个样本,可以对样本进行多层运算得到第一原始数据的方差或期望等,确定为第一中间数据。由于第一原始数据中多个数据之间的加密所用的数值各不相同,导致基于原始数据计算的期望和方差等的结果,与基于加密后的第一原始数据计算的期望和方差等的结果不相同,从而无法实现同态运算。从而,需要基于原始数据计算中间数据,确保用于计算相关系数的中间数据的准确性,避免影响相关系数的同态运算,以及避免影响相关系数的准确性。
可选的,第一中间数据,包括:第一原始数据的期望和/或方差。
通常的期望和/或方差用于计算相关系数,作为相关系数的计算公式中直接计算的数据,以及作为第一原始数据计算相关系数的中间结果。
示例性的,皮尔逊相关系数Pearson或斯皮尔曼相关系数Spearman的计算公式如下所示:
其中,X为第一原始数据,Y为第二原始数据,E(X)为第一原始数据的期望,E(Y)为第二原始数据的期望,σX是第一原始数据的方差,σY是第二原始数据的方差。E(XY)是第一原始数据和第二原始数据的乘积的期望。
如前例,第一参与节点的第一原始数据为Xi,第二参与节点的第二原始数据为Yi,根据关联密钥生成第一随机数为ri。采用第一随机数,对第一原始数据和第二原始数据进行同态加密。第一原始数据中每个数据乘以第一随机数,得到同态加密的第一原始数据Xi*ri,第二原始数据中每个数据乘以第一随机数的倒数,得到同态加密的第二原始数据Yi/ri。
相应的,E((X*R)*(Y/R))=E(XY),也即,同态加密的第一原始数据和同态加密的第二原始数据的乘积的期望,与第一原始数据和第二原始数据的乘积的期望相等。
第一参与节点的第一中间数据采用第二随机数进行同态加密,第二参与节点的第二中间数据采用第二随机数进行同态加密。其中,中间数据包括期望和方差,第二随机数包括期望对应的re和方差对应的rσ。第一中间数据包括的第一期望与期望对应的第二随机数相乘,得到同态加密的第一期望E(X)*re。第二中间数据包括的第二期望与期望对应的第二随机数的倒数相乘,得到同态加密的第二期望E(Y)/re。第一中间数据包括的第一方差与期望对应的第二随机数相乘,得到同态加密的第一方差σ(X)*rσ。第二中间数据包括的第二期望与期望对应的第二随机数的倒数相乘,得到同态加密的第二方差σ(Y)/rσ。
相应的,E2(X)*E2(Y)=(E(X)*re)*(E(Y)/re)=E(X)*E(Y)。也即,同态加密的第一期望E2(X)和同态加密的第二期望E2(Y)的乘积,与第一期望和第二期望的乘积相等。
σ2(X)*σ2(Y)=(σ(X)*rσ)*(σ(Y)/rσ)=σ(X)*σ(Y)。也即,同态加密的第一方差σ2(X)和同态加密的第二方差σ2(Y)的乘积,与第一方差和第二方差的乘积相等。
由此,同态加密前后,相关系数的结果不变。
通过将第一中间数据配置为第一原始数据的期望和方差,可以适配Pearson和Spearman等相关系数的应用场景,计算相同计算方式的相关系数,增加相关系数的应用场景,提高相关系数计算所需数据的安全。
S303,采用关联密钥对第一中间数据进行同态加密,得到同态加密的第一中间数据。
同样采用关联密钥对第一中间数据进行同态加密。基于第一原始数据计算得到的第一中间数据,仍需要进行加密,避免原始数据的隐私信息泄露。
可选的,采用关联密钥对第一中间数据进行同态加密,得到同态加密的第一中间数据,包括:根据关联密钥,计算第二随机数;根据第二随机数,对第一中间数据进行同态加密,得到同态加密的第一中间数据。
根据关联密钥计算第二随机数。其中,第一随机数和第二随机数不同。第二随机数用于对第一中间数据进行同态加密。第一中间数据为数据序列,第二随机数为数据序列,可以按照序列中数据的次序,将某个次序的第二随机数,对相同次序的第一中间数据进行同态加密。实际上,第一中间数据可以包括多个类型的数据,不同类型的数据对应的第二随机数不同。
通过关联密钥进一步生成第二随机数,并基于第二随机数对第一中间数据进行同态加密,增加加密的数据的随机性,提高数据加密破解的难度,进一步提高加密的复杂性,提高中间数据安全。
S304,将同态加密的第一原始数据和同态加密的第一中间数据,确定为第一传输数据。
可以将同态加密的第一原始数据和同态加密的第一中间数据,进一步进行加密,得到第一传输数据,以提高第一传输数据的安全性。示例性的,可以通过RSA非对称加密算法公钥(n,e)和私钥(n,d)形成的密钥对。
可选的,将同态加密的第一原始数据和同态加密的第一中间数据,确定为第一传输数据,包括:获取辅助节点发送的公钥;根据公钥对同态加密的第一中间数据进行加密,并将同态加密的第一原始数据和公钥加密的第一中间数据,确定为第一传输数据,以使辅助节点采用私钥对公钥加密的第一中间数据进行解密,得到同态加密的第一中间数据。
公钥和私钥组成密钥对,密钥对是通过非对称加密生成的密钥。公钥是公开的,私钥是保密的。辅助节点生成密钥对,将公钥发给各参与节点,并将私钥保留本地。参与节点采用公钥对数据进行加密,辅助节点可以采用私钥进行解密,得到该数据。
第一参与节点采用公钥对同态加密的第一中间数据进行加密,可以进一步提高中间数据的安全性。通常第一中间数据为第一原始数据的计算结果,第一中间数据包括的数据的数量,小于第一原始数据包括的数据数量,第一中间数据的同态加密结果,相对于第一原始数据的同态加密结果,更容易破解,由此,可以优先对第一中间数据进行加密,提高第一中间数据的安全性,同时针对第一中间数据进行加密,而不对第一原始数据进行加密,可以减少加密的数据量,降低加密成本,提高加密效率。
示例性的,第一中间数据为第一原始数据的期望,第一原始数据的同态加密方式,采用第一随机数与第一原始数据包括的数据进行加密。其中,第一原始数据包括的每个数据的加密偏移量不同,由此,同态加密的第一原始数据破解的难度更高,更安全。而第一中间数据仅仅是一个数据,采用第二随机数进行加密,只会得到一个加密的数据,很容易破解。由此,针对第一中间数据进行再次加密,可以进一步提高第一中间数据的安全性。
在一个具体的例子中,采用公钥(n,e)加密期望E(X),加密得到的期望为(E(X))e%n。
通过对第一中间数据进行公钥加密,针对辅助节点以外的设备,增加解密难度,从而提高第一中间数据的安全性,同时可以减少加密的数据量,降低加密成本,提高加密效率。
S305,将第一传输数据发送至辅助节点,以使辅助节点接收第一传输数据,并对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,其中,第二传输数据通过第二参与节点采用关联密钥对第二原始数据进行同态加密确定。
S306,接收辅助节点反馈的相关系数。
根据本公开的技术方案,通过根据相关系数的计算公式,基于第一原始数据,计算与相关系数的计算关联的第一中间数据,并对第一中间数据进行同态加密,确保相关系数的运算是同态运算,实现相关系数的同态运算,提高相关系数的计算准确性,并且,同态加密提高第一中间数据的安全性,提高第一传输数据的安全性。
图4是是根据本公开实施例公开的一种相关系数获取方法的流程图,本实施例可以适用于计算两个参与节点的原始数据之间的相关性的情况。本实施例方法可以由相关系数获取装置来执行,该装置可采用软件和/或硬件的方式实现,并具体配置于具有一定数据运算能力的电子设备中,该电子设备是辅助节点,该电子设备可以是客户端设备或服务器设备,客户端设备例如手机、平板电脑、车载终端和台式电脑等。
S401,接收第一参与节点发送的第一传输数据,以及第二参与节点发送的第二传输数据。
辅助节点用于对多个参与节点中每两个节点之间的传输数据进行同态运算,计算传输数据对应的原始数据的相关系数,并反馈给相应的参与节点。在相关系数的计算系统中,包括至少两个参与节点和辅助节点。辅助节点用于计算相关系数,参与节点用于提供计算相关系数的同态加密的数据。由于第一传输数据和第二传输数据是同态加密的数据,辅助节点无法获取原始数据,确保了原始数据的安全。
S402,对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,第一传输数据通过第一参与节点采用关联密钥对第一原始数据同态加密确定,第二传输数据通过第二参与节点采用关联密钥对第二原始数据同态加密确定,关联密钥为第一参与节点与第二参与节点共同约定。
S403,将相关系数,发送至第一参与节点和第二参与节点。
其中,为了相关系数的传输安全,还可以对相关系数进行加密传输。
可选的,对第一传输数据和第二传输数据进行同态运算,包括:获取密钥对,密钥对中公钥用于发送至第一参与节点和第二参与节点进行数据加密;根据密钥对中私钥对第一传输数据中公钥加密的第一中间数据进行解密,得到同态加密的第一中间数据;根据密钥对中私钥对第二传输数据中公钥加密的第二中间数据进行解密,得到同态加密的第二中间数据;对同态加密的第一中间数据、第一传输数据包括的同态加密的第一原始数据、同态加密的第二中间数据和第二传输数据包括的同态加密的第二原始数据进行同态运算。
中间数据经过两次加密,首先是关联密钥的同态加密,再次是公钥加密。公钥加密的中间数据,经过私钥解密,可以得到关联密钥的同态加密的中间数据。同态加密的第一中间数据、同态加密的第一原始数据、同态加密的第二中间数据和同态加密的第二原始数据,用于同态计算得到,第一原始数据和第二原始数据之间的相关系数。
示例性的,可以通过RSA算法生成密钥对,包括公钥(n,e)和私钥(n,d)。采用私钥(n,d)对加密的期望(E(X))e%n进行解密,可以是((E(X))e%n)d%n=E(X)。
通过对第一中间数据进行公钥加密,针对辅助节点以外的设备,增加解密难度,从而提高第一中间数据的安全性,同时可以减少加密的数据量,降低加密成本,提高加密效率。
根据本公开的技术方案,通过辅助节点对同态加密的第一传输数据和第二传输数据进行同态运算,得到同态加密前的第一原始数据和第二原始数据之间的相关系数,实现在辅助节点无法对传输数据进行解密的情况下,准确计算原始数据之间的相关系数,提高了原始数据的安全,保护隐私信息,提高数据传输安全性和计算安全性,同时提高相关系数的计算准确性。
图5是是根据本公开实施例公开的一种相关系数获取方法的场景图。
其中,参与方包括k个worker工作进程,用于处理原始数据。辅助节点为Arbiter节点。在联邦学习框架中,存在三类节点,参与节点(Host)、辅助节点(Arbiter)和应用节点(Guest)。参与节点用于提供数据,辅助节点用来辅助东方完成联合建模,应用节点用于发起建模操作。
相关系数获取方法涉及参与节点和辅助节点,具体的,相关系数的获取方法流程如下:
S501,参与节点与其他参与节点通过DH协议协商关联密钥s,并作为随机数种子。
具体的,参与方Pa与参与Pb,通过DH协议生成协商密钥s。其中,a,b=1,2,3……d,a≠b,d为参与节点的总数。
S502,辅助节点生成公钥(n,e)和私钥(n,d)。
可以基于RSA算法生成密钥对。
S503,辅助节点将公钥(n,e)发送给各参与节点。
S504,参与节点按照工作进程的数量k对源数据按列切分得到第一原始数据Xjf。
其中,源数据包括至少一个原始数据,一个原始数据包括至少一个数据序列。其中,参与方按照包括的工作进程的数量k对源数据进行平均切分,得到Xjfg,其中,j=1,2,3…k,f=1,2,3…m,m为计算相关系数的列数据,也即与原始数据的数量相同,实际上,一列数据为一个原始数据,g=1,2,3…N,N为一个原始数据包括的样本的总数。将N个Xjfg组成一个原始数据Xjf。其中,一个工作进程可以处理至少一个原始数据。
S505,参与节点第j个工作进程读取第一原始数据Xjf,并根据关联密钥s,生成第一随机数集合R,计算同态加密的第一原始数据Xjf*R。
参与节点的第j个工作进程将关联密钥s作为随机数种子生成N个随机数R={ri|ri∈Z},计算Xjfg*ri。其中,随机数的个数,与原始数据包括的样本的总数相同,都为N。
S506,参与节点第j个工作进程根据关联密钥s,生成第二随机数re和rσ,同态加密期望和方差,再采用公钥(n,e)继续加密。
参与节点的第j个工作进程根据一个原始数据中包括的Xjfg,计算期望E(Xjf)和方差σ(Xjf)。基于关联密钥s生成第二随机数re和rσ,采用第二随机数re对期望E(Xjf)进行同态加密,得到E(Xjf)*re。采用第二随机数rσ对方差σ(Xjf)进行同态加密,得到σ(Xjf)*rσ。其中,两个第二随机数re和rσ不同。采用公钥对同态加密的E(Xjf)进行加密,得到(E(Xjf)*re)e%n。采用公钥(n,e)对同态加密的σ(Xjf)进行加密,得到(σ(Xjf)*rσ)e%n。
S507,参与节点向辅助节点发送同态加密的第一原始数据、公钥加密的期望和公钥加密的方差。
S508,辅助节点解密期望和方差,同态计算相关系数。
辅助节点采用私钥对公钥加密的期望和公钥加密的方差进行解密,得到同态加密的期望和同态加密的方差。根据同态加密的原始数据、同态加密的期望和同态加密的方差,以及和其他参与节点发送的同态加密的原始数据、同态加密的期望和同态加密的方差,计算两个参与节点的原数数据之间的相关系数。
辅助节点接收第一参与节点a的第一传输数据,包括Xjfg*ri、(E(Xjf)*re)e%n和(σ(Xjf)*rσ)e%n。以及接收第二参与节点b的第二传输数据,包括Yhpq/ri、(E(Yhp)/re)e%n和(σ(Yhp)/rσ)e%n。其中,h=1,2,3…t,p=1,2,3…u,t为第二参与节点包括的工作进程的数量,u为计算相关系数的列数据,也即与原始数据的数量相同,实际上,一列数据为一个原始数据,q=1,2,3…N,N为一个原始数据包括的样本的总数。将N个Yhpq组成一个原始数据Yhp。其中,一个工作进程可以处理至少一个原始数据。
其中,相关系数主要有三部分计算得到,其中,三部分分别为:E(XY)、E(X)*E(Y)和σ(X)*σ(Y)。
其中,先采用私钥(n,d)对期望方差进行解密。
((E(Xjf)*re)e%n)d%n=E(Xjf)*re
((σ(Xjf)*rσ)e%n)d%n=σ(Xjf)*rσ
((E(Yhp)/re)e%n)d%n=E(Yhp)/re
((σ(Yhp)/rσ)e%n)d%n=σ(Yhp)/rσ
同态运算中,E((Xjfg*ri)*(Yhpq/ri))=E(Xjfg*Yhpq);
(E(Xjf)*re)*(E(Yhp)/re)=E(Xjf)*E(Yhp)
(σ(Xjf)*rσ)*(σ(Yhp)/rσ)=σ(Xjf)*σ(Yhp)
上述密文的计算结果,与明文的计算结果相同。并带入如下公式计算:
从而准确计算得到第一原始数据Xjf和第二原始数据Yhp之间的相关系数。
S509,辅助节点合并相关系数,得到全局相关系数。
此时的相关系数为一个原始数据和另一个原始数据之间的相关系数。但实际上源数据中包括多个原始数据。可以将多个原始数据分别与对应的原始数据之间的相关系数,进行组合,形成数据集,确定为全局相关系数。
S510,辅助节点向参与节点发送全局相关系数。
参与节点根据全局相关系数,对源数据进行筛选,将筛选后的源数据应用于联邦学习模型的训练。
联邦学习算法一般通过密码学技术来保证数据安全,额外的密码学运算极大的降低了算法的效率。此外,联邦学习过程需要在参与方之间进行频繁的通信,进一步降低了学习的效率。当业务数据量较大时,如何提高联邦算法的效率尤其重要。
本公开实施例在同一参与方的服务器上启动多个计算任务(工作进程),通过参与方的参与训练的数据进行数据划分、参数分发和本方结果聚合,通过Worker工作进程进行数据读取、期望和方差计算等。这样的任务并行机制极大的提改了联邦学习的效率。多个Worker任务并行可以充分利用服务器的CPU(中央处理器)和带宽等资源。此外,由于JVM和存储系统的内存分配机制,多个Worker任务可以还可以充分利用服务器的内存资源。
本公开实施例的算法可以称为并行联邦相关系数算法(Parallel FederalCorrelation Coefficient algorithm,PFCC),通过DH和RSA协议混入噪音以及加密原始数据来保证参与方数据的安全聚合。其中,加解密过程简单,时空复杂度较小。
根据本公开的实施例,图6是本公开实施例中的相关系数获取装置的结构图,本公开实施例适用于计算两个参与节点的原始数据之间的相关性的情况。该装置采用软件和/或硬件实现,并具体配置于具备一定数据运算能力的电子设备中,电子设备具体是参与节点。
如图6所示的一种相关系数获取装置600,包括:第一原始数据同态加密模块601、第一传输数据发送模块602和相关系数获取模块603;其中,
第一原始数据同态加密模块601,用于获取第一原始数据,并采用关联密钥对第一原始数据进行同态加密,确定第一传输数据,关联密钥为第一参与节点与第二参与节点共同约定;
第一传输数据发送模块602,用于将第一传输数据发送至辅助节点,以使辅助节点接收第一传输数据,并对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,其中,第二传输数据通过第二参与节点采用关联密钥对第二原始数据进行同态加密确定;
相关系数获取模块603,用于接收辅助节点反馈的相关系数。
根据本公开的技术方案,通过参与计算相关系数的第一参与节点对第一原始数据进行同态加密,确定第一传输数据,并将第一传输数据发送至第三方的辅助节点,由辅助节点对第一传输数据和第二传输数据进行同态运算,相当于是对同态加密的第一原始数据,和同态加密的第二原始数据进行同态运算,计算得到同态加密的第一原始数据,和同态加密的第二原始数据之间的相关系数,从而确定第一原始数据,和第二原始数据之间的相关系数,实现在辅助节点无法对传输数据进行解密的情况下,准确计算原始数据之间的相关系数,提高了原始数据的安全,保护隐私信息,提高数据传输安全性和计算安全性,同时提高相关系数的计算准确性。
进一步的,第一原始数据同态加密模块601,包括:第一随机数计算单元,用于根据关联密钥,计算第一随机数;第一随机数加密单元,用于根据第一随机数对第一原始数据进行同态加密。
进一步的,第一原始数据同态加密模块601,包括:数据同态加密单元,用于采用关联密钥对第一原始数据进行同态加密,得到同态加密的第一原始数据;第一中间数据计算单元,用于根据第一原始数据和相关系数的计算公式,计算第一中间数据;第一中间数据同态加密单元,用于采用关联密钥对第一中间数据进行同态加密,得到同态加密的第一中间数据;第一传输数据确定单元,用于将同态加密的第一原始数据和第一中间数据,确定为第一传输数据。
进一步的,第一中间数据同态加密单元,包括:第二随机数计算子单元,用于根据关联密钥,计算第二随机数;第二随机数同态加密子单元,用于根据第二随机数,对第一中间数据进行同态加密。
进一步的,第一中间数据,包括:第一原始数据的期望和/或方差。
进一步的,第一中间数据添加子单元,具体用于:获取辅助节点发送的公钥;根据公钥对同态加密的第一中间数据进行加密,并将同态加密的第一原始数据和公钥加密的第一中间数据,确定为第一传输数据,以使辅助节点采用私钥对公钥加密的第一中间数据进行解密,得到同态加密的第一中间数据。
进一步的,相关系数获取装置,还包括:样本数据筛选模块,用于在样本数据集中,根据第一原始数据和第二原始数据之间的相关系数,对第一原始数据进行筛选,样本数据集中包括第一原始数据,样本数据集用于训练联邦模型。
上述相关系数获取装置可执行本公开任意实施例所提供的相关系数获取方法,具备执行相关系数获取方法相应的功能模块和有益效果。
根据本公开的实施例,图7是本公开实施例中的相关系数获取装置的结构图,本公开实施例适用于计算两个参与节点的原始数据之间的相关性的情况。该装置采用软件和/或硬件实现,并具体配置于具备一定数据运算能力的电子设备中,电子设备具体是参与节点。
如图7所示的一种相关系数获取装置700,包括:传输数据获取模块701、传输数据同态运算模块702和相关系数发送模块703;其中,
传输数据获取模块701,用于接收第一参与节点发送的第一传输数据,以及第二参与节点发送的第二传输数据;
传输数据同态运算模块702,用于对第一传输数据和第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,第一传输数据通过第一参与节点采用关联密钥对第一原始数据同态加密确定,第二传输数据通过第二参与节点采用关联密钥对第二原始数据同态加密确定,关联密钥为第一参与节点与第二参与节点共同约定;
相关系数发送模块703,用于将相关系数,发送至第一参与节点和第二参与节点。
根据本公开的技术方案,通过辅助节点对同态加密的第一传输数据和第二传输数据进行同态运算,得到同态加密前的第一原始数据和第二原始数据之间的相关系数,实现在辅助节点无法对传输数据进行解密的情况下,准确计算原始数据之间的相关系数,提高了原始数据的安全,保护隐私信息,提高数据传输安全性和计算安全性,同时提高相关系数的计算准确性。
进一步的,传输数据同态运算模块702,包括:密钥对获取单元,用于获取密钥对,密钥对中公钥用于发送至第一参与节点和第二参与节点进行数据加密;第一中间数据解密单元,用于根据密钥对中私钥对第一传输数据中公钥加密的第一中间数据进行解密,得到同态加密的第一中间数据;第二中间数据解密单元,用于根据密钥对中私钥对第二传输数据中公钥加密的第二中间数据进行解密,得到同态加密的第二中间数据;同态运算单元,用于对同态加密的第一中间数据、第一传输数据包括的同态加密的第一原始数据、同态加密的第二中间数据和第二传输数据包括的同态加密的第二原始数据进行同态运算。
上述相关系数获取装置可执行本公开任意实施例所提供的相关系数获取方法,具备执行相关系数获取方法相应的功能模块和有益效果。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图8示出了可以用来实施本公开的实施例的示例电子设备800的示意性区域图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如相关系数获取方法。例如,在一些实施例中,相关系数获取方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的相关系数获取方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行相关系数获取方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或区域图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种相关系数获取方法,应用于第一参与节点,包括:
获取第一原始数据,并采用关联密钥对所述第一原始数据进行同态加密,确定第一传输数据,所述关联密钥为所述第一参与节点与第二参与节点共同约定;
将所述第一传输数据发送至辅助节点,以使所述辅助节点接收所述第一传输数据,并对所述第一传输数据和第二传输数据进行同态运算,得到所述第一原始数据和第二原始数据之间的相关系数,其中,所述第二传输数据通过所述第二参与节点采用所述关联密钥对所述第二原始数据进行同态加密确定;
接收所述辅助节点反馈的所述相关系数。
2.根据权利要求1所述的方法,其中,所述采用关联密钥对所述第一原始数据进行同态加密,包括:
根据关联密钥,计算第一随机数;
根据所述第一随机数对所述第一原始数据进行同态加密。
3.根据权利要求1所述的方法,其中,所述采用关联密钥对所述第一原始数据进行同态加密,确定第一传输数据,包括:
采用关联密钥对所述第一原始数据进行同态加密,得到同态加密的第一原始数据;
根据所述第一原始数据和所述相关系数的计算公式,计算第一中间数据;
采用所述关联密钥对所述第一中间数据进行同态加密,得到同态加密的第一中间数据;
将所述同态加密的第一原始数据和所述同态加密的第一中间数据,确定为第一传输数据。
4.根据权利要求3所述的方法,其中,所述采用所述关联密钥对所述第一中间数据进行同态加密,得到同态加密的第一中间数据,包括:
根据所述关联密钥,计算第二随机数;
根据所述第二随机数,对所述第一中间数据进行同态加密,得到同态加密的第一中间数据。
5.根据权利要求3所述的方法,其中,所述第一中间数据,包括:所述第一原始数据的期望和/或方差。
6.根据权利要求4所述的方法,其中,所述将所述同态加密的第一原始数据和所述同态加密的第一中间数据,确定为第一传输数据,包括:
获取所述辅助节点发送的公钥;
根据所述公钥对所述同态加密的第一中间数据进行加密,并将所述同态加密的第一原始数据和公钥加密的第一中间数据,确定为第一传输数据,以使所述辅助节点采用私钥对所述公钥加密的第一中间数据进行解密,得到所述同态加密的第一中间数据。
7.根据权利要求1所述的方法,还包括:
在样本数据集中,根据所述第一原始数据和所述第二原始数据之间的相关系数,对所述第一原始数据进行筛选,所述样本数据集中包括所述第一原始数据,所述样本数据集用于训练联邦模型。
8.一种相关系数获取方法,应用于辅助节点,包括:
接收第一参与节点发送的第一传输数据,以及第二参与节点发送的第二传输数据;
对所述第一传输数据和所述第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,所述第一传输数据通过所述第一参与节点采用关联密钥对所述第一原始数据同态加密确定,所述第二传输数据通过所述第二参与节点采用所述关联密钥对所述第二原始数据同态加密确定,所述关联密钥为所述第一参与节点与第二参与节点共同约定;
将所述相关系数,发送至所述第一参与节点和所述第二参与节点。
9.根据权利要求8所述的方法,其中,所述对所述第一传输数据和所述第二传输数据进行同态运算,包括:
获取密钥对,所述密钥对中公钥用于发送至所述第一参与节点和所述第二参与节点进行数据加密;
根据所述密钥对中私钥对所述第一传输数据中公钥加密的第一中间数据进行解密,得到同态加密的第一中间数据;
根据所述密钥对中私钥对所述第二传输数据中公钥加密的第二中间数据进行解密,得到同态加密的第二中间数据;
对所述同态加密的第一中间数据、所述第一传输数据包括的同态加密的第一原始数据、所述同态加密的第二中间数据和所述第二传输数据包括的同态加密的第二原始数据进行同态运算。
10.一种相关系数获取装置,配置于第一参与节点,包括:
第一原始数据同态加密模块,用于获取第一原始数据,并采用关联密钥对所述第一原始数据进行同态加密,确定第一传输数据,所述关联密钥为所述第一参与节点与第二参与节点共同约定;
第一传输数据发送模块,用于将所述第一传输数据发送至辅助节点,以使所述辅助节点接收所述第一传输数据,并对所述第一传输数据和第二传输数据进行同态运算,得到所述第一原始数据和第二原始数据之间的相关系数,其中,所述第二传输数据通过所述第二参与节点采用所述关联密钥对所述第二原始数据进行同态加密确定;
相关系数获取模块,用于接收所述辅助节点反馈的所述相关系数。
11.根据权利要求10所述的装置,其中,所述第一原始数据同态加密模块,包括:
第一随机数计算单元,用于根据关联密钥,计算第一随机数;
第一随机数加密单元,用于根据所述第一随机数对所述第一原始数据进行同态加密。
12.根据权利要求10所述的装置,其中,所述第一原始数据同态加密模块,包括:
数据同态加密单元,用于采用关联密钥对所述第一原始数据进行同态加密,得到同态加密的第一原始数据;
第一中间数据计算单元,用于根据所述第一原始数据和所述相关系数的计算公式,计算第一中间数据;
第一中间数据同态加密单元,用于采用所述关联密钥对所述第一中间数据进行同态加密,得到同态加密的第一中间数据;
第一传输数据确定单元,用于将所述同态加密的第一原始数据和所述第一中间数据,确定为第一传输数据。
13.根据权利要求12所述的装置,其中,所述第一中间数据同态加密单元,包括:
第二随机数计算子单元,用于根据所述关联密钥,计算第二随机数;
第二随机数同态加密子单元,用于根据所述第二随机数,对所述第一中间数据进行同态加密。
14.根据权利要求12所述的装置,其中,所述第一中间数据,包括:所述第一原始数据的期望和/或方差。
15.根据权利要求13所述的装置,其中,第一中间数据添加子单元,具体用于:
获取所述辅助节点发送的公钥;
根据所述公钥对所述同态加密的第一中间数据进行加密,并将所述同态加密的第一原始数据和公钥加密的第一中间数据,确定为第一传输数据,以使所述辅助节点采用私钥对所述公钥加密的第一中间数据进行解密,得到所述同态加密的第一中间数据。
16.根据权利要求10所述的装置,还包括:
样本数据筛选模块,用于在样本数据集中,根据所述第一原始数据和所述第二原始数据之间的相关系数,对所述第一原始数据进行筛选,所述样本数据集中包括所述第一原始数据,所述样本数据集用于训练联邦模型。
17.一种相关系数获取装置,配置于辅助节点,包括:
传输数据获取模块,用于接收第一参与节点发送的第一传输数据,以及第二参与节点发送的第二传输数据;
传输数据同态运算模块,用于对所述第一传输数据和所述第二传输数据进行同态运算,得到第一原始数据和第二原始数据之间的相关系数,所述第一传输数据通过所述第一参与节点采用关联密钥对所述第一原始数据同态加密确定,所述第二传输数据通过所述第二参与节点采用所述关联密钥对所述第二原始数据同态加密确定,所述关联密钥为所述第一参与节点与第二参与节点共同约定;
相关系数发送模块,用于将所述相关系数,发送至所述第一参与节点和所述第二参与节点。
18.根据权利要求17所述的装置,其中,所述传输数据同态运算模块,包括:
密钥对获取单元,用于获取密钥对,所述密钥对中公钥用于发送至所述第一参与节点和所述第二参与节点进行数据加密;
第一中间数据解密单元,用于根据所述密钥对中私钥对所述第一传输数据中公钥加密的第一中间数据进行解密,得到同态加密的第一中间数据;
第二中间数据解密单元,用于根据所述密钥对中私钥对所述第二传输数据中公钥加密的第二中间数据进行解密,得到同态加密的第二中间数据;
同态运算单元,用于对所述同态加密的第一中间数据、所述第一传输数据包括的同态加密的第一原始数据、所述同态加密的第二中间数据和所述第二传输数据包括的同态加密的第二原始数据进行同态运算。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的相关系数获取方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-10中任一项所述的相关系数获取方法。
21.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-10中任一项所述的相关系数获取方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210116753.3A CN114444106B (zh) | 2022-02-07 | 2022-02-07 | 相关系数获取方法、装置、电子设备和存储介质 |
US18/105,576 US20230254113A1 (en) | 2022-02-07 | 2023-02-03 | Correlation coefficient acquisition method, electronic device and non-transitory computer readable storage medium |
JP2023015662A JP2023114996A (ja) | 2022-02-07 | 2023-02-03 | 相関係数取得方法、装置、電子機器および記憶媒体 |
EP23155151.6A EP4224779A1 (en) | 2022-02-07 | 2023-02-06 | Correlation coefficient acquisition method and apparatus, electronic device, non-transitory computer readable storage medium, and computer program product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210116753.3A CN114444106B (zh) | 2022-02-07 | 2022-02-07 | 相关系数获取方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114444106A true CN114444106A (zh) | 2022-05-06 |
CN114444106B CN114444106B (zh) | 2023-03-17 |
Family
ID=81370783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210116753.3A Active CN114444106B (zh) | 2022-02-07 | 2022-02-07 | 相关系数获取方法、装置、电子设备和存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230254113A1 (zh) |
EP (1) | EP4224779A1 (zh) |
JP (1) | JP2023114996A (zh) |
CN (1) | CN114444106B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116738196A (zh) * | 2023-06-19 | 2023-09-12 | 上海零数众合信息科技有限公司 | 一种信誉评估方法、装置、设备和存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117034328B (zh) * | 2023-10-09 | 2024-03-19 | 国网信息通信产业集团有限公司 | 一种改进的基于联邦学习的异常用电检测系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112818290A (zh) * | 2021-01-21 | 2021-05-18 | 支付宝(杭州)信息技术有限公司 | 多方联合确定隐私数据中对象特征相关性的方法及装置 |
WO2021114819A1 (zh) * | 2019-12-11 | 2021-06-17 | 支付宝(杭州)信息技术有限公司 | 生成和执行智能合约交易的方法及装置 |
CN113515760A (zh) * | 2021-05-28 | 2021-10-19 | 平安国际智慧城市科技股份有限公司 | 横向联邦学习方法、装置、计算机设备和存储介质 |
CN113806760A (zh) * | 2021-04-09 | 2021-12-17 | 京东科技控股股份有限公司 | 获取特征间相关系数方法、装置、电子设备及存储介质 |
US20220021529A1 (en) * | 2020-11-30 | 2022-01-20 | Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. | Key protection processing method, apparatus, device and storage medium |
-
2022
- 2022-02-07 CN CN202210116753.3A patent/CN114444106B/zh active Active
-
2023
- 2023-02-03 JP JP2023015662A patent/JP2023114996A/ja active Pending
- 2023-02-03 US US18/105,576 patent/US20230254113A1/en active Pending
- 2023-02-06 EP EP23155151.6A patent/EP4224779A1/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021114819A1 (zh) * | 2019-12-11 | 2021-06-17 | 支付宝(杭州)信息技术有限公司 | 生成和执行智能合约交易的方法及装置 |
US20220021529A1 (en) * | 2020-11-30 | 2022-01-20 | Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. | Key protection processing method, apparatus, device and storage medium |
CN112818290A (zh) * | 2021-01-21 | 2021-05-18 | 支付宝(杭州)信息技术有限公司 | 多方联合确定隐私数据中对象特征相关性的方法及装置 |
CN113806760A (zh) * | 2021-04-09 | 2021-12-17 | 京东科技控股股份有限公司 | 获取特征间相关系数方法、装置、电子设备及存储介质 |
CN113515760A (zh) * | 2021-05-28 | 2021-10-19 | 平安国际智慧城市科技股份有限公司 | 横向联邦学习方法、装置、计算机设备和存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116738196A (zh) * | 2023-06-19 | 2023-09-12 | 上海零数众合信息科技有限公司 | 一种信誉评估方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4224779A1 (en) | 2023-08-09 |
JP2023114996A (ja) | 2023-08-18 |
US20230254113A1 (en) | 2023-08-10 |
CN114444106B (zh) | 2023-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3075098B1 (en) | Server-aided private set intersection (psi) with data transfer | |
CN114444106B (zh) | 相关系数获取方法、装置、电子设备和存储介质 | |
US9819656B2 (en) | Method for secure communication using asymmetric and symmetric encryption over insecure communications | |
CN107145791B (zh) | 一种具有隐私保护的K-means聚类方法及系统 | |
JP7280303B2 (ja) | モデル連合訓練方法、装置、電子機器、記憶媒体並びにコンピュータプログラム | |
CN109214201A (zh) | 一种数据共享方法、终端设备及计算机可读存储介质 | |
CN111555880B (zh) | 数据碰撞方法、装置、存储介质及电子设备 | |
WO2024082514A1 (zh) | 一种业务指标预测方法、装置、设备和存储介质 | |
CN107454975B (zh) | 加密系统和密钥生成装置 | |
CN107204997A (zh) | 管理云存储数据的方法和装置 | |
CN113591097A (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN115618380A (zh) | 数据处理方法、装置、设备和介质 | |
CN113449872A (zh) | 基于联邦学习的参数处理方法、装置和系统 | |
CN114884675A (zh) | 基于比特传输的多方隐私求交方法、装置、设备及介质 | |
CN112949866A (zh) | 泊松回归模型的训练方法、装置、电子设备及存储介质 | |
CN115587382B (zh) | 全密态数据处理方法、装置、设备、介质 | |
CN116743376A (zh) | 基于高效密文混淆技术的多方秘密分享数据隐私比较方法 | |
CN116208332A (zh) | 基于量子密钥分发与量子密钥隐私增强的区块链方法 | |
CN116405199A (zh) | 基于ntru算法和sm2算法的加密方法、装置、设备和介质 | |
CN115442164A (zh) | 多用户日志加解密方法、装置、设备及存储介质 | |
CN115599959A (zh) | 数据共享方法、装置、设备及存储介质 | |
CN112615712B (zh) | 数据的处理方法、相关装置及计算机程序产品 | |
CN112637174B (zh) | 数据相关度计算方法、装置、电子设备和存储介质 | |
JP2013026996A (ja) | 情報処理方法及び装置、並びにコンピュータシステム | |
WO2022094829A1 (zh) | 数据安全比较协议实现方法、系统、电子装置及存储介质 |
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 |