CN116346464A - 数据处理方法、装置、设备及存储介质 - Google Patents

数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116346464A
CN116346464A CN202310312022.0A CN202310312022A CN116346464A CN 116346464 A CN116346464 A CN 116346464A CN 202310312022 A CN202310312022 A CN 202310312022A CN 116346464 A CN116346464 A CN 116346464A
Authority
CN
China
Prior art keywords
node
auxiliary
data set
auxiliary node
encrypted
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.)
Pending
Application number
CN202310312022.0A
Other languages
English (en)
Inventor
贺双洪
李昊轩
廖飞强
王朝阳
鄢新义
李辉忠
张开翔
范瑞彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN202310312022.0A priority Critical patent/CN116346464A/zh
Publication of CN116346464A publication Critical patent/CN116346464A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本申请提供一种数据处理方法、装置、设备及存储介质,该方法包括:应用于网络系统,网络系统中包括N个参与节点,N为正整数,其中,所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点。由于先通过第一辅助节点计算除第一辅助节点外的N‑1个参与节点对应的N‑1个第一加密数据集合的交集,得到第一加密交集结果;然后通过第二辅助节点确定第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,这样就不用确定任两节点之间的数据交集,因此只需进行有限次数的交互,即可确定多个参与节点的数据交集,从而降低了多个参与节点之间的交互次数,提高了数据处理效率。

Description

数据处理方法、装置、设备及存储介质
技术领域
本申请涉及属于金融科技(Fintech)领域,尤其涉及一种数据处理方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,多方隐私数据的处理也不例外,但由于金融行业的安全性、实时性要求,也对隐私数据的处理提出的更高的要求。
相关技术中,每个数据方各有一个数据集合,在各自不暴露己方数据集合的情况下,让一方得到多个数据集合的交集。目前通过多方约定的密码协议确定多个数据集合的交集,而该方法多方的交互次数较多,导致该数据处理方法的效率较低。
发明内容
本申请提供一种数据处理方法、装置、设备及存储介质,旨在降低多方的交互次数,从而提高数据处理效率。
第一方面,本申请一实施例提供一种数据处理方法,应用于网络系统,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;
所述方法包括:
除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;
所述N-1个参与节点通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,并将所述N-1个第一加密数据集合发送至所述第一辅助节点;
所述第一辅助节点计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点;
所述接收节点根据所述第一加密交集结果确定新的数据集合;
所述接收节点与所述第一辅助节点协商得到第二加密秘钥;
所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;
所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点;
所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;
所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
在一种可能的设计中,所述除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥,包括:接收节点生成第一加密秘钥,并将所述第一加密秘钥发送至所述N-1个参与节点中除所述接收节点外的N-2个参与节点。
在一种可能的设计中,所述N-1个参与节点包括接收节点和除所述接收节点外的N-2个参与节点;其中所述N-1个参与节点通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,包括:接收节点通过所述第一加密秘钥对己方的数据集合进行加密,得到1个第一加密数据集合;所述N-1个参与节点中除所述接收节点外的N-2个参与节点,通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-2个第一加密数据集合。
在一种可能的设计中,所述接收节点根据所述第一加密交集结果确定新的数据集合,包括:所述接收节点通过第一加密秘钥对所述第一加密交集结果进行解密,得到新的数据集合。
在一种可能的设计中,所述接收节点与所述第一辅助节点协商得到第二加密秘钥,包括:接收节点生成第二加密秘钥,并将所述第二加密秘钥发送至所述第一辅助节点。
在一种可能的设计中,还包括:从所述N个参与节点中选取第一辅助节点和第二辅助节点。
在一种可能的设计中,其中从所述N个参与节点中选取第一辅助节点和第二辅助节点,包括:所述接收节点生成第一随机值;除所述接收节点外的N-1个参与节点生成N-1个第二随机值,并将所述N-1个第二随机值发送至所述接收节点;所述接收节点确定所述第一随机值和每个第二随机值之间的距离,得到N-1个距离;按照N-1个距离从小到大的顺序,从所述N-1个参与节点中选择选取第一辅助节点和第二辅助节点。
在一种可能的设计中,还包括:所述接收节点确定所述第一随机值对应的哈希值,并将所述哈希值发送至所述除所述接收节点外的N-1个参与节点;所述除所述接收节点外的N-1个参与节点确定各自第二随机值对应的签名信息,得到N-1签名信息,并将所述N-1签名信息发送至所述接收节点;所述接收节点从所述N-1签名信息中选取所述第一辅助节点对应的签名信息和所述第二辅助节点对应的签名信息,并将所述第一随机值对应的哈希值、所述第一辅助节点对应的第二随机值、所述第一辅助节点对应的签名信息、所述第二辅助节点对应的第二随机值和所述第二辅助节点对应的签名信息发送至所述除所述接收节点外的N-1个参与节点;除所述接收节点外的N-1个参与节点对所述第一随机值对应的哈希值、所述第一辅助节点对应的第二随机值、所述第一辅助节点对应的签名信息、所述第二辅助节点对应的第二随机值和所述第二辅助节点对应的签名信息进行验证。
第二方面,本申请另一实施例提供一种数据处理方法,应用于网络系统的接收节点,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过所述第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至所述第一辅助节点;
所述方法包括:
接收第一辅助节点发送的第一加密交集结果;
根据第一加密交集结果得到新的数据集合;
与所述第一辅助节点协商得到第二加密秘钥;
通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点,以使所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点,所述第三加密数据集合用于指示所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;
确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
第三方面,本申请另一实施例提供一种数据处理方法,应用于网络系统的第一辅助节点,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过所述第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至所述第一辅助节点;
所述方法包括:
计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点,以使所述接收节点根据所述第一加密交集结果确定新的数据集合;
与所述接收节点协商得到第二加密秘钥,以使所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;
通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点,以使所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;所述第二加密交集结果用于指示所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
第四方面,本申请另一实施例提供一种数据处理方法,应用于网络系统的第二辅助节点,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过所述第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至所述第一辅助节点,所述第一辅助节点计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点;所述接收节点根据所述第一加密交集结果确定新的数据集合;所述接收节点与所述第一辅助节点协商得到第二加密秘钥;所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点;所述方法包括:
计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点,以使所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
第五方面,本申请另一实施例提供一种数据处理装置,应用于网络系统,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;所述装置包括:
第一协商模块,用于除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;
第一加密模块,用于所述N-1个参与节点通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,并将所述N-1个第一加密数据集合发送至所述第一辅助节点;
第一计算模块,用于所述第一辅助节点计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点;
第一确定模块,用于所述接收节点根据所述第一加密交集结果确定新的数据集合;
第二协商模块,用于所述接收节点与所述第一辅助节点协商得到第二加密秘钥;
第二加密模块,用于所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;
第三加密模块,用于所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点;
第二计算模块,用于所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;
第二确定模块,用于所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
第六方面,本申请另一实施例提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面、第二方面、第三方面或第四方面所述的数据处理方法。
第七方面,本申请另一实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面、第二方面、第三方面或第四方面所述的数据处理方法。
第八方面,本申请另一实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面、第二方面、第三方面或第四方面所述的数据处理方法。
本申请实施例提供一种数据处理方法、装置、设备及存储介质,应用于网络系统,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;该方法包括:除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;N-1个参与节点通过第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点;第一辅助节点计算N-1个第一加密数据集合的交集,得到第一加密交集结果,并将第一加密交集结果发送至接收节点;接收节点根据第一加密交集结果确定新的数据集合;接收节点与第一辅助节点协商得到第二加密秘钥;接收节点通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点;第一辅助节点通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点;第二辅助节点计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点;接收节点确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。由于先通过第一辅助节点计算除第一辅助节点外的N-1个参与节点对应的N-1个第一加密数据集合的交集,得到第一加密交集结果;然后通过第二辅助节点确定第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,也即是,通过第一辅助节点和第二辅助节点确定N个参与节点的数据交集,这样,N个参与节点只需与第一辅助节点和第二辅助节点之间进行数据交互即可,而不用确定任两个参与节点之间的数据交集,因此降低了N个参与节点之间的交互次数,提高了数据处理效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本公开实施例提供的数据处理方法的应用场景示意图;
图2为本公开实施例提供的数据处理方法的流程示意图一;
图3为本公开实施例提供的数据处理方法的交互流程示意图;
图4为本公开实施例提供的数据处理方法的流程示意图二;
图5为本公开实施例提供的数据处理装置的结构图;
图6为本公开实施例提供的电子设备的结构图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
下面对本公开实施例的应用场景进行解释:
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,多方隐私数据的处理也不例外,但由于金融行业的安全性、实时性要求,也对隐私数据的处理提出的更高的要求。
示例性的,每个数据方各有一个数据集合,在各自不暴露己方数据集合的情况下,让一方得到多个数据集合的交集。目前通过多方约定的密码协议确定多个数据集合的交集。例如,不经意传输协议、公钥加密协议、哈希加密协议等。但是,在通过上述方法确定多个数据集合交集的过程中,需要先确定任意两方的数据集合的交集,然后才能确定多个数据集合的交集。这样,当数据方较多时,需要各个数据方之间的多次交互,才能确定任意两方的数据集合的交集,从而导致该方法的交互次数较多,因此,通过目前的数据处理方法的效率较低。
为了解决上述问题,本申请实施例提供一种数据处理方法,先通过第一辅助节点计算除第一辅助节点外的N-1个参与节点对应的N-1个第一加密数据集合的交集,得到第一加密交集结果;然后通过第二辅助节点确定第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,这样就不用确定任两节点之间的数据交集,因此只需进行有限次数的交互,即可确定多个参与节点之间的数据交集,从而降低了多个参与节点之间的交互次数,提高了数据处理效率。下面通过具体的实施例进行详细说明。
图1为本公开实施例提供的数据处理方法的应用场景示意图。如图1所示,网络系统中的多个参与节点包括:接收节点101、第一辅助节点102、第二辅助节点103和其他参与节点104。其他参与节点104可以是一个或多个(多个时图中未示出)。其中,接收节点101、第一辅助节点102、第二辅助节点103和其他参与节点104之间可以通过有线或无线网络进行数据交互。
示例性的,网络系统中的接收节点101发起获取多个节点的数据交集的获取请求。网络系统通过第一辅助节点102确定接收节点101、第二辅助节点103和其他参与节点104之间的数据交集A,通过第二辅助节点103确定数据交集A与第一辅助节点102的数据之间的交集B。之后,通过第二辅助节点103将交集B反馈至接收节点101。在此过程中,由于通过第一辅助节点102和第二辅助节点103确定交集,这样,只需与第一辅助节点102和第二辅助节点103之间进行数据交互即可,从而降低了该网络系统中参与节点之间的交互次数,提高了数据处理效率。其中,数据处理方法的具体过程可以参考如下方法实施例,此处不再赘述。
实施例1
参考图2,本公开实施例提供的数据处理方法的流程示意图一。本实施例的方法可以应用于网络系统,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点。该方法包括:
S201、除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥。
其中,N-1个参与节点协商得到第一加密秘钥为同一个加密密钥。第一加密秘钥可以用于各参与节点对各自的数据进行加密,以提高数据的安全性。
在本实施例中,可以通过N-1个参与节点中的任一节点生成一个加密密钥,并将该加密密钥发送至参与协商的其他参与节点。如此,N-1个参与节点可以得到一个相同的加密秘钥。
可选地,N-1个参与节点包括接收节点和除接收节点外的N-2个参与节点,通过接收节点生成一个加密密钥。相应的,本步骤为:接收节点生成第一加密秘钥,并将第一加密秘钥发送至N-1个参与节点中除接收节点外的N-2个参与节点。示例性的,第一加密密钥可以为key1表示。
为了进一步提高数据的安全性,可以通过加密信道传输第一加密秘钥。相应的,接收节点在生成第一加密秘钥之后,可以通过加密信道将第一加密秘钥发送至N-1个参与节点中除接收节点外的N-2个参与节点。可选地,加密信道可以是采用TLS(Transport LayerSecurity,安全传输层)协议的加密信道。
示例性的,如图3所示,N个参与节点包括接收节点、第一辅助节点、第二辅助节点和其他参与节点。其他参与节点可以为一个或多个,在本实施例中以其他参与节点是一个为例进行说明。其中,除第一辅助节点外的N-1个参与节点包括:接收节点、第二辅助节点和其他参与节点。N-1个参与节点中除接收节点外的N-2个参与节点包括:第二辅助节点和其他参与节点。相应的,本步骤为:接收节点生成第一加密秘钥key1,并将第一加密秘钥key1发送至第二辅助节点和其他参与节点。
S202、N-1个参与节点通过第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点。
在本实施例中,每个参与节点均存储有一个数据集合。可选的,该数据集合可以是业务数据集合。示例性的,各自的数据集合可以表示为Si,1≤i≤N-1;其中,N表示参与节点的数量。
可选的,N-1个参与节点包括接收节点和除接收节点外的N-2个参与节点。相应的,N-1个参与节点通过第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合的步骤包括:接收节点通过第一加密秘钥对己方的数据集合进行加密,得到1个第一加密数据集合;N-1个参与节点中除接收节点外的N-2个参与节点,通过第一加密秘钥分别对各自的数据集合进行加密,得到N-2个第一加密数据集合。
在本实施例中,可以通过哈希算法和第一加密秘钥分别对各自的数据集合进行加密。示例性的,通过哈希算法和第一加密秘钥分别对各自的数据集合进行加密得到N-1个第一加密数据集合可以表示Shmac,i,1≤i≤N-1;其中,N表示参与节点的数量。
示例性的,除第一辅助节点外的N-1个参与节点包括:接收节点、第二辅助节点和其他参与节点。除接收节点外的N-2个参与节点包括:第二辅助节点和其他参与节点。
具体步骤如图3所示:接收节点通过第一加密秘钥key1对己方的数据集合进行加密,得到1个第一加密数据集合,并将该第一加密数据集合发送至第一辅助节点。第二辅助节点通过第一加密秘钥key1对己方的数据集合进行加密,得到1个第一加密数据集合,并将该第一加密数据集合发送至第一辅助节点。其他参与节点通过第一加密秘钥key1对己方的数据集合进行加密,得到1个第一加密数据集合,并将该第一加密数据集合发送至第一辅助节点。
在本实施例中,数据集合是参与节点内存储的原始数据,通过第一加密秘钥分别对各自的数据集合进行加密,可以防止第一辅助节点获取其他参与节点的原始数据,提高数据的安全性。
S203、第一辅助节点计算N-1个第一加密数据集合的交集,得到第一加密交集结果,并将第一加密交集结果发送至接收节点。
在本实施例中,接收节点可以是多个参与节点中的任一节点。可选的,接收节点可以是发出数据处理请求的节点。示例性的,第一加密交集表示为ResultA。其中,ResultA=(Hash1、Hash2、……、Hashk);k表示N-1个第一加密数据集合中相同加密数据的数量。
S204、接收节点根据第一加密交集结果确定新的数据集合。
在本实施例中,新的数据集合为未加密的初始数据。可选地,本步骤为:接收节点通过第一加密秘钥对第一加密交集结果进行解密,得到新的数据集合。
示例性的,接收节点根据第一加密密钥对第一加密交集进行解密,得到的新的数据集合为:SA=(S1、S2、……、Sk)。
S205、接收节点与第一辅助节点协商得到第二加密秘钥。
其中,接收节点与第一辅助节点协商得到第二加密秘钥为同一个加密密钥。在本实施例中,可以通过接收节点或第一辅助节点生成一个加密密钥,并将该加密密钥发送至另一个参与节点。
可选地,如图3所示,本步骤为:接收节点生成第二加密秘钥,并将第二加密秘钥发送至第一辅助节点。示例性的,第二加密密钥可以为key2表示。
S206、接收节点通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点。
示例性的,新的数据集合为:SA=(S1、S2、……、Sk)。接收节点通过第二加密密钥对SA=(S1、S2、……、Sk)进行加密,得到第二加密数据集合为:Shmac,A=(hash1、hash2、……、hashk)。
在本实施例中,接收节点通过第二加密秘钥对新的数据集合进行加密,可以防止第二辅助节点获取新的数据集合的原始数据,从而提高了数据的安全性。
S207、第一辅助节点通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点。
示例性的,第一辅助节点的数据集合为SX=(S1、S2、……、Sm);通过第二加密密钥key2对SX=(S1、S2、……、Sm)进行加密得到的第三加密数据集合为:Shmac,x=(hash1、hash2、……、hashm);其中,m表示第一辅助节点的数据的数量。
在本实施例中,第一辅助节点通过第二加密秘钥对己方数据集合进行加密,可以防止第二辅助节点获取第一辅助节点的原始数据,从而提高了数据的安全性。
S208、第二辅助节点计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点。
示例性的,第二加密交集表示为ResultB。其中,ResultB=(Hash1、Hash2、……、Hashp);其中,p表示第二加密交集中加密数据的数量。
S209、接收节点确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
可选地,接收节点接收第二加密交集,通过第二加密密钥key2对第二加密交集进行解密,得到第二加密交集对应的多个数据。示例性的,第二加密交集对应的多个数据为:SB=(S1、S2、……、Sp)。
本申请实施例提供一种数据处理方法,由于先通过第一辅助节点计算除第一辅助节点外的N-1个参与节点对应的N-1个第一加密数据集合的交集,得到第一加密交集结果;然后通过第二辅助节点确定第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,也即是,通过第一辅助节点和第二辅助节点确定N个参与节点的数据交集,这样,N个参与节点只需与第一辅助节点和第二辅助节点之间进行数据交互即可,而不用确定任两个参与节点之间的数据交集,因此降低了N个参与节点之间的交互次数,提高了数据处理效率。
实施例2
在本实施例中,在步骤S201之前,需要先从N个参与节点中选取第一辅助节点和第二辅助节点。本实施例第一辅助节点和第二辅助节点的选取方法进行详细说明。参见图3,具体步骤包括:
S301、接收节点生成第一随机值。
可选地,第一随机值是接收节点随机生成的任一值。在本公开实施例中对第一随机值的数值和范围不作具体限定。示例性的,第一随机值可以表示为Rreceiver
S302、除接收节点外的N-1个参与节点生成N-1个第二随机值,并将N-1个第二随机值发送至接收节点。
在本实施例中,第二随机值为参与节点随机生成的任一值。
示例性的,除接收节点外的N-1个参与节点生成N-1个第二随机值表示为Ri;其中,1≤i≤N-1;N表示多个参与节点的数量。
可选地,N个参与节点包括接收节点、第一辅助节点、第二辅助节点和其他参与节点。除接收节点外的N-1个参与节点包括:第一辅助节点、第二辅助节点和其他参与节点。相应的,本步骤为:第一辅助节点生成第二随机值,并发送给接收节点;第二辅助节点生成第二随机值,并发送给接收节点;其他参与节点生成第二随机值,并发送给接收节点。
S303、接收节点确定第一随机值和每个第二随机值之间的距离,得到N-1个距离。
可选地,第一随机值与第二随机值之间的距离为第一随机值与第二随机值之差。示例性的,接收节点确定的N-1个距离为Disi=Rreceiver-Ri;其中,1≤i≤N-1;N表示多个参与节点的数量。
S304、接收节点按照N-1个距离从小到大的顺序,从N-1个参与节点中选择选取第一辅助节点和第二辅助节点。
可选地,距离最小的参与节点可以是第一辅助节点,与可以是第二辅助节点。示例性的,第一辅助节点生成的第二随机值与第一随机值之间的距离最小。
在本步骤中,通过随机值之间的距离,从多个参与节点中选取第一辅助节点和第二辅助节点,这样确定的第一辅助节点和第二辅助节点的随机性较高,进而提高了数据的安全性。
需要说明的是,为了进一步提高随机性和数据的安全性,多个参与节点还可以对选取结果进行验证。其中,对选取结果进行验证的步骤可以通过以下步骤(a)至(e)来实现:
(a)接收节点确定第一随机值对应的哈希值,并将哈希值发送至除接收节点外的N-1个参与节点。
在本公开实施例中,接收节点通过哈希算法确定第一随机值对应的哈希值。示例性的,第一随机值对应的哈希值为:Hreceiver=Hash(Rreceiver)。
示例性的,除接收节点外的N-1个参与节点包括:第一辅助节点、第二辅助节点和其他参与节点。相应的,本步骤为:接收节点确定第一随机值对应的哈希值,并将哈希值发送至第一辅助节点、第二辅助节点和其他参与节点。
(b)除接收节点外的N-1个参与节点确定各自第二随机值对应的签名信息,得到N-1签名信息,并将N-1签名信息发送至接收节点。
可选地,除接收节点外的N-1个参与节点,通过私钥对各自第二随机数进行签名,得到N-1签名信息。示例性的,除接收节点外的N-1个参与节点对应的签名信息为Sign i=Sign(ski,Ri);其中,ski表示N-1个参与节点的私钥,1≤i≤N-1;N表示多个参与节点的数量。
示例性的,除接收节点外的N-1个参与节点包括:第一辅助节点、第二辅助节点和其他参与节点。相应的,第一辅助节点通过私钥对己方的第二随机数进行签名,得到签名信息,并将该签名信息发送至接收节点。第二辅助节点通过私钥对己方的第二随机数进行签名,得到签名信息,并将该签名信息发送至接收节点。其他参与节点通过私钥对己方的第二随机数进行签名,得到签名信息,并将该签名信息发送至接收节点。
(d)接收节点从N-1签名信息中选取第一辅助节点对应的签名信息和第二辅助节点对应的签名信息,并将第一随机值对应的哈希值、第一辅助节点对应的第二随机值、第一辅助节点对应的签名信息、第二辅助节点对应的第二随机值和第二辅助节点对应的签名信息发送至除接收节点外的N-1个参与节点。
示例性的,第一随机值对应的哈希值为Hash(Rreceiver)。第一辅助节点对应的第二随机值为Rx、第一辅助节点对应的签名信息为Signx、第二辅助节点对应的第二随机值为Ry、第二辅助节点对应的签名信息为Signy
接收节点将Hash(Rreceiver)、Rx、Signx、Ry和Signy发送至除接收节点外的N-1个参与节点。
(e)除接收节点外的N-1个参与节点对第一随机值对应的哈希值、第一辅助节点对应的第二随机值、第一辅助节点对应的签名信息、第二辅助节点对应的第二随机值和第二辅助节点对应的签名信息进行验证。
在本步骤中,对于N-1个参与节点中的任一参与节点,若该参与节点就是第一辅助节点或第二辅助节点,则不需要验证;若该参与节点不是第一辅助节点且不是第二辅助节点,则进行验证。
可选地,对第一随机值对应的哈希值进行验证的步骤为:各参与节点确定第一随机值对于的哈希值,若与接收到的第一随机值对应的哈希值相同,则验证通过;若不同,则验证未通过,终止协议。
可选地,对第一辅助节点对应的签名信息进行验证的步骤为:各参与节点通过公钥对第一辅助节点对应的签名信息进行解密,若解密数值与第一辅助节点对应的第二随机值相同,则验证通过;若不同,则验证未通过,终止协议。
可选地,对第二辅助节点对应的签名信息进行验证的步骤为:各参与节点通过公钥对第二辅助节点对应的签名信息进行解密,若解密数值与第二辅助节点对应的第二随机值相同,则验证通过;若不同,则验证未通过,终止协议。
可选地,对第一辅助节点对应的第二随机值进行验证的步骤为:各参与节点确定第一辅助节点对应的第二随机值与第一随机值之间的第一距离;各参与节点确定己方的第二随机值与第一随机值之间的第二距离;若第一距离小于第二距离,则验证通过;若第一距离不小于第二距离,则验证未通过,终止协议。
示例性的,第一距离为Rreceiver-Rx;各参与节点(除接收节点、第一辅助节点、第二辅助节点)确定己方的第二距离为Rreceiver-Ri;其中,1≤i≤N-3;N表示多个参与节点的数量。若Rreceiver-Ri>Rreceiver-Rx则验证通过;反之,则验证未通过。
可选地,对第二辅助节点对应的第二随机值进行验证的步骤为:第三目标节点确定第二辅助节点对应的第二随机值与第一随机值之间的第三距离,以及,确定该第三目标节点对应的第二随机值与第一随机值之间的第二距离;若第三距离小于第二距离,则验证通过;若第三距离不小于第二距离,则验证未通过,终止协议。
示例性的,第三距离为Rreceiver-Ry;各参与节点(除接收节点、第一辅助节点、第二辅助节点)确定己方的第二距离为Rreceiver-Ri;其中,1≤i≤N-3;N表示多个参与节点的数量。若Rreceiver-Ri>Rreceiver-Ry则验证通过;反之,则验证未通过。
实施例3
在本公开实施例中,以网络系统中包括3个参与节点,3个参与节点分别是:接收节点、辅助节点A和辅助节点B为例进行详细说明。其中,确定三个参与节点的数据交集的步骤具体包括:
(1)从3个参与节点中选取辅助节点A和辅助节点B。
示例性的,3个参与节点的数据集合可以分别用P0,P1,P2表示。
可选地,接收节点的数据集合为P0。辅助节点A的数据集合为P1。辅助节点B的数据集合为P2。其中,数据集合P0为:{1,2,3},数据集合P1为:{2,3,4},数据集合P2为:{3,4,5}。
(2)接收节点和辅助节点B协商出第一加密密钥sk1。
(3)接收节点根据sk1对数据集{1,2,3}进行加密,得到HMAC(sk1,1)、HMAC(sk1,2)、HMAC(sk1,3)。辅助节点B根据sk1对数据集{3,4,5}进行加密,得到HMAC(sk1,3),HMAC(sk1,4),HMAC(sk1,5)。接收节点和辅助节点B分别将得到的加密数据集合发送至辅助节点A。
(4)辅助节点A确定HMAC(sk1,1)、HMAC(sk1,2)、HMAC(sk1,3)以及HMAC(sk1,3),HMAC(sk1,4),HMAC(sk1,5),的交集是HMAC(sk1,3);然后将HMAC(sk1,3)发送给接收节点。
(5)接收节点对HMAC(sk1,3)进行解密得到{3}。也即是,P0∩P2={3}。
(6)接收节点和辅助节点A协商出第二加密密钥sk2。接收节点根据sk2对数据集{3}进行加密,得到HMAC(sk2,3)。辅助节点A根据sk2对数据集{2,3,4}进行加密,得到HMAC(sk2,2),HMAC(sk2,3),HMAC(sk2,4)。接收节点和辅助节点A分别将得到的加密数据集合发送给辅助节点B。
(7)辅助节点B确定HMAC(sk2,3)和HMAC(sk2,2),HMAC(sk2,3),HMAC(sk2,4)的交集是HMAC(sk2,3);然后将HMAC(sk2,3)发送给接收节点。
(8)接收节点对HMAC(sk2,3)进行解密得到{3}。也即是,P0∩P2∩P1={3}。其中,{3}即三个参与节点的数据交集。
实施例4
参考图4,图4为本公开实施例提供的数据处理方法的流程示意图二。本实施例的方法可以应用于网络系统的接收节点,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点;该方法包括:
S401、接收第一辅助节点发送的第一加密交集结果。
S402、根据第一加密交集结果确定新的数据集合。
S403、与第一辅助节点协商得到第二加密秘钥。
S404、通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点,以使第一辅助节点通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点,第三加密数据集合用于指示第二辅助节点计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点。
S405、确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
实施例5
本实施例的方法可以应用于网络系统的第一辅助节点,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点;该方法包括:
S501、计算N-1个第一加密数据集合的交集,得到第一加密交集结果,并将第一加密交集结果发送至接收节点,以使接收节点根据第一加密交集结果确定新的数据集合。
S502、与接收节点协商得到第二加密秘钥,以使接收节点通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点。
S503、通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点,以使第二辅助节点计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点;第二加密交集结果用于指示接收节点确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
实施例6
本实施例的方法可以应用于网络系统的第二辅助节点,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点,第一辅助节点计算N-1个第一加密数据集合的交集,得到第一加密交集结果,并将第一加密交集结果发送至接收节点;接收节点根据第一加密交集结果确定新的数据集合;接收节点与第一辅助节点协商得到第二加密秘钥;接收节点通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点;第一辅助节点通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点;该方法包括:
S601、计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点,以使接收节点确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
图5为本公开实施例提供的数据处理装置的结构图。如图5所示,本申请一实施例提供一种数据处理装置,应用于网络系统,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点;装置包括:
第一协商模块501,用于除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;
第一加密模块502,用于N-1个参与节点通过第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点;
第一计算模块503,用于第一辅助节点计算N-1个第一加密数据集合的交集,得到第一加密交集结果,并将第一加密交集结果发送至接收节点;
第一确定模块504,用于接收节点根据第一加密交集结果确定新的数据集合;
第二协商模块505,用于接收节点与第一辅助节点协商得到第二加密秘钥;
第二加密模块506,用于接收节点通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点;
第三加密模块507,用于第一辅助节点通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点;
第二计算模块508,用于第二辅助节点计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点;
第二确定模块509,用于接收节点确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
在一种可能的设计中,第一协商模块501,用于接收节点生成第一加密秘钥,并将第一加密秘钥发送至N-1个参与节点中除接收节点外的N-2个参与节点。
在一种可能的设计中,N-1个参与节点包括接收节点和除接收节点外的N-2个参与节点;其中第一加密模块502,用于接收节点通过第一加密秘钥对己方的数据集合进行加密,得到1个第一加密数据集合;N-1个参与节点中除接收节点外的N-2个参与节点,通过第一加密秘钥分别对各自的数据集合进行加密,得到N-2个第一加密数据集合。
在一种可能的设计中,第一确定模块504,用于接收节点通过第一加密秘钥对第一加密交集结果进行解密,得到新的数据集合。
在一种可能的设计中,第二协商模块505,用于接收节点生成第二加密秘钥,并将第二加密秘钥发送至第一辅助节点。
在一种可能的设计中,还包括:选取模块。选取模块,用于从N个参与节点中选取第一辅助节点和第二辅助节点。
在一种可能的设计中,选取模块,用于接收节点生成第一随机值;除接收节点外的N-1个参与节点生成N-1个第二随机值,并将N-1个第二随机值发送至接收节点;接收节点确定第一随机值和每个第二随机值之间的距离,得到N-1个距离;按照N-1个距离从小到大的顺序,从N-1个参与节点中选择选取第一辅助节点和第二辅助节点。
在一种可能的设计中,还包括:验证模块。验证模块,用于接收节点确定第一随机值对应的哈希值,并将哈希值发送至除接收节点外的N-1个参与节点;除接收节点外的N-1个参与节点确定各自第二随机值对应的签名信息,得到N-1签名信息,并将N-1签名信息发送至接收节点;接收节点从N-1签名信息中选取第一辅助节点对应的签名信息和第二辅助节点对应的签名信息,并将第一随机值对应的哈希值、第一辅助节点对应的第二随机值、第一辅助节点对应的签名信息、第二辅助节点对应的第二随机值和第二辅助节点对应的签名信息发送至除接收节点外的N-1个参与节点;除接收节点外的N-1个参与节点对第一随机值对应的哈希值、第一辅助节点对应的第二随机值、第一辅助节点对应的签名信息、第二辅助节点对应的第二随机值和第二辅助节点对应的签名信息进行验证。
本申请另一实施例提供一种数据处理装置,应用于网络系统的接收节点,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点;该装置包括:
接收模块,用于接收第一辅助节点发送的第一加密交集结果;
第三确定模块,用于根据第一加密交集结果确定新的数据集合;
第三协商模块,用于与第一辅助节点协商得到第二加密秘钥;
第四加密模块,用于通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点,以使第一辅助节点通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点,第三加密数据集合用于指示第二辅助节点计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点;
第四确定模块,用于确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
第本申请另一实施例提供一种数据处理装置,应用于网络系统的第一辅助节点,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点;该装置包括:
第三计算模块,用于计算N-1个第一加密数据集合的交集,得到第一加密交集结果,并将第一加密交集结果发送至接收节点,以使接收节点根据第一加密交集结果确定新的数据集合;
第四协商模块,用于与接收节点协商得到第二加密秘钥,以使接收节点通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点;
第五加密模块,用于通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点,以使第二辅助节点计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点;第二加密交集结果用于指示接收节点确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
第本申请另一实施例提供一种数据处理装置,应用于网络系统的第二辅助节点,网络系统中包括N个参与节点,N为正整数,其中N个参与节点中至少包括:一个接收节点和两个辅助节点;两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至第一辅助节点,第一辅助节点计算N-1个第一加密数据集合的交集,得到第一加密交集结果,并将第一加密交集结果发送至接收节点;接收节点根据第一加密交集结果确定新的数据集合;接收节点与第一辅助节点协商得到第二加密秘钥;接收节点通过第二加密秘钥对新的数据集合进行加密,得到第二加密数据集合,并将第二加密数据集合发送至第二辅助节点;第一辅助节点通过第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将第三加密数据集合发送至第二辅助节点;该装置包括:
第四计算模块,用于计算第二加密数据集合和第三加密数据集合的交集,得到第二加密交集结果,并将第二加密交集结果发送至接收节点,以使接收节点确定第二加密交集对应的多个数据,得到N个参与节点的数据交集。
如图6所示,本申请一实施例提供一种电子设备600,电子设备600包括存储器601和处理器602。
其中,存储器601用于存储处理器可执行的计算机指令;
处理器602在执行计算机指令时实现上述实施例中方法中的各个步骤。具体可以参见前述方法实施例中的相关描述。
可选地,上述存储器601既可以是独立的,也可以跟处理器602集成在一起。当存储器601独立设置时,该电子设备还包括总线,用于连接存储器601和处理器602。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,当处理器执行计算机指令时,实现上述实施例中方法中的各个步骤。
本申请实施例还提供一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现上述实施例中方法中的各个步骤。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (14)

1.一种数据处理方法,其特征在于,应用于网络系统,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;
所述方法包括:
除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;
所述N-1个参与节点通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,并将所述N-1个第一加密数据集合发送至所述第一辅助节点;
所述第一辅助节点计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点;
所述接收节点根据所述第一加密交集结果确定新的数据集合;
所述接收节点与所述第一辅助节点协商得到第二加密秘钥;
所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;
所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点;
所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;
所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
2.根据权利要求1所述的数据处理方法,其特征在于,所述N-1个参与节点包括接收节点和除所述接收节点外的N-2个参与节点;所述除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥,包括:
接收节点生成第一加密秘钥,并将所述第一加密秘钥发送至所述N-1个参与节点中除所述接收节点外的N-2个参与节点。
3.根据权利要求1或2所述的数据处理方法,其特征在于,所述N-1个参与节点包括接收节点和除所述接收节点外的N-2个参与节点;
其中所述N-1个参与节点通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,包括:
接收节点通过所述第一加密秘钥对己方的数据集合进行加密,得到1个第一加密数据集合;
所述N-1个参与节点中除所述接收节点外的N-2个参与节点,通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-2个第一加密数据集合。
4.根据权利要求1所述的数据处理方法,其特征在于,所述接收节点根据所述第一加密交集结果确定新的数据集合,包括:
所述接收节点通过第一加密秘钥对所述第一加密交集结果进行解密,得到新的数据集合。
5.根据权利要求1所述的数据处理方法,其特征在于,所述接收节点与所述第一辅助节点协商得到第二加密秘钥,包括:
接收节点生成第二加密秘钥,并将所述第二加密秘钥发送至所述第一辅助节点。
6.根据权利要求1所述的数据处理方法,其特征在于,还包括:
从所述N个参与节点中选取第一辅助节点和第二辅助节点。
7.根据权利要求6所述的数据处理方法,其特征在于,其中从所述N个参与节点中选取第一辅助节点和第二辅助节点,包括:
所述接收节点生成第一随机值;
除所述接收节点外的N-1个参与节点生成N-1个第二随机值,并将所述N-1个第二随机值发送至所述接收节点;
所述接收节点确定所述第一随机值和每个第二随机值之间的距离,得到N-1个距离;
所述接收节点按照N-1个距离从小到大的顺序,从所述N-1个参与节点中选择选取第一辅助节点和第二辅助节点。
8.根据权利要求7所述的数据处理方法,其特征在于,还包括:
所述接收节点确定所述第一随机值对应的哈希值,并将所述哈希值发送至所述除所述接收节点外的N-1个参与节点;
所述除所述接收节点外的N-1个参与节点确定各自第二随机值对应的签名信息,得到N-1签名信息,并将所述N-1签名信息发送至所述接收节点;
所述接收节点从所述N-1签名信息中选取所述第一辅助节点对应的签名信息和所述第二辅助节点对应的签名信息,并将所述第一随机值对应的哈希值、所述第一辅助节点对应的第二随机值、所述第一辅助节点对应的签名信息、所述第二辅助节点对应的第二随机值和所述第二辅助节点对应的签名信息发送至所述除所述接收节点外的N-1个参与节点;
除所述接收节点外的N-1个参与节点对所述第一随机值对应的哈希值、所述第一辅助节点对应的第二随机值、所述第一辅助节点对应的签名信息、所述第二辅助节点对应的第二随机值和所述第二辅助节点对应的签名信息进行验证。
9.一种数据处理方法,其特征在于,应用于网络系统的接收节点,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过所述第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至所述第一辅助节点;
所述方法包括:
接收第一辅助节点发送的第一加密交集结果;
根据第一加密交集结果确定新的数据集合;
与所述第一辅助节点协商得到第二加密秘钥;
通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点,以使所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点,所述第三加密数据集合用于指示所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;
确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
10.一种数据处理方法,其特征在于,应用于网络系统的第一辅助节点,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过所述第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至所述第一辅助节点;
所述方法包括:
计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点,以使所述接收节点根据所述第一加密交集结果确定新的数据集合;
与所述接收节点协商得到第二加密秘钥,以使所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;
通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点,以使所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;所述第二加密交集结果用于指示所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
11.一种数据处理方法,其特征在于,应用于网络系统的第二辅助节点,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;除第一辅助节点外的N-1个参与节点,通过所述第一加密秘钥分别对节点对应的数据进行加密,得到N-1个第一加密数据集合,并将N-1个第一加密数据集合发送至所述第一辅助节点,所述第一辅助节点计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点;所述接收节点根据所述第一加密交集结果确定新的数据集合;所述接收节点与所述第一辅助节点协商得到第二加密秘钥;所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点;
所述方法包括:
计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点,以使所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
12.一种数据处理装置,其特征在于,应用于网络系统,所述网络系统中包括N个参与节点,N为正整数,其中所述N个参与节点中至少包括:一个接收节点和两个辅助节点;所述两个辅助节点为第一辅助节点和第二辅助节点;所述装置包括:
第一协商模块,用于除第一辅助节点外的N-1个参与节点协商得到第一加密秘钥;
第一加密模块,用于所述N-1个参与节点通过所述第一加密秘钥分别对各自的数据集合进行加密,得到N-1个第一加密数据集合,并将所述N-1个第一加密数据集合发送至所述第一辅助节点;
第一计算模块,用于所述第一辅助节点计算所述N-1个第一加密数据集合的交集,得到第一加密交集结果,并将所述第一加密交集结果发送至所述接收节点;
第一确定模块,用于所述接收节点根据所述第一加密交集结果确定新的数据集合;
第二协商模块,用于所述接收节点与所述第一辅助节点协商得到第二加密秘钥;
第二加密模块,用于所述接收节点通过所述第二加密秘钥对所述新的数据集合进行加密,得到第二加密数据集合,并将所述第二加密数据集合发送至所述第二辅助节点;
第三加密模块,用于所述第一辅助节点通过所述第二加密秘钥对己方数据集合进行加密,得到第三加密数据集合,并将所述第三加密数据集合发送至所述第二辅助节点;
第二计算模块,用于所述第二辅助节点计算所述第二加密数据集合和所述第三加密数据集合的交集,得到第二加密交集结果,并将所述第二加密交集结果发送至所述接收节点;
第二确定模块,用于所述接收节点确定所述第二加密交集对应的多个数据,得到所述N个参与节点的数据交集。
13.一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至8任一项所述的数据处理方法,或如权利要求9所述的数据处理方法,或如权利要求10所述的数据处理方法,或如权利要求11所述的数据处理方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至8任一项所述的数据处理方法,或如权利要求9所述的数据处理方法,或如权利要求10所述的数据处理方法,或如权利要求11所述的数据处理方法。
CN202310312022.0A 2023-03-20 2023-03-20 数据处理方法、装置、设备及存储介质 Pending CN116346464A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310312022.0A CN116346464A (zh) 2023-03-20 2023-03-20 数据处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310312022.0A CN116346464A (zh) 2023-03-20 2023-03-20 数据处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116346464A true CN116346464A (zh) 2023-06-27

Family

ID=86881941

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310312022.0A Pending CN116346464A (zh) 2023-03-20 2023-03-20 数据处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116346464A (zh)

Similar Documents

Publication Publication Date Title
CN108199835B (zh) 一种多方联合私钥解密方法
CN111510281B (zh) 一种同态加密方法及装置
CN111819815B (zh) 用于转移对数字资产的控制的计算机实现的方法和系统
US20110194698A1 (en) Key Sharing System
US8868911B2 (en) Method for key generation, member authentication, and communication security in dynamic group
CN113162752B (zh) 基于混合同态加密的数据处理方法和装置
CN112733163B (zh) 基于离散对数相等性证明的可监管零知识证明方法及装置
CN109818747A (zh) 数字签名方法及装置
US20150043735A1 (en) Re-encrypted data verification program, re-encryption apparatus and re-encryption system
KR20210139344A (ko) 데이터 기반 활동을 수행하는 방법 및 장치
CN111901111A (zh) Sm9密钥生成方法、装置、系统及可读存储介质
CN110365662A (zh) 业务审批方法及装置
JP6041864B2 (ja) データの暗号化のための方法、コンピュータ・プログラム、および装置
CN116132118B (zh) 一种基于区块链技术的加密通讯方法和系统
CN108989037A (zh) 一种多授权属性基加密方法、系统、设备及计算机介质
CN111245594B (zh) 一种基于同态运算的协同签名方法及系统
CN114760046A (zh) 一种身份鉴别方法和装置
JP2007189345A (ja) 複数鍵認証端末装置及び複数鍵認証管理装置及び複数鍵認証システム及びプログラム
CN114629620A (zh) 同态加密计算方法及系统、同态请求、计算和密钥系统
CN116346464A (zh) 数据处理方法、装置、设备及存储介质
KR102304831B1 (ko) 순열그룹 기반의 암호화 기술을 적용한 암호화시스템 및 방법
EP3644545B1 (en) Apparatus and method for encryption and decryption
US20200358604A1 (en) Apparatus and method for sharing data
CN114760035A (zh) 一种身份鉴别方法和装置
CN109104393B (zh) 一种身份认证的方法、装置和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication