CN116506124B - 多方隐私求交系统及方法 - Google Patents

多方隐私求交系统及方法 Download PDF

Info

Publication number
CN116506124B
CN116506124B CN202310784203.3A CN202310784203A CN116506124B CN 116506124 B CN116506124 B CN 116506124B CN 202310784203 A CN202310784203 A CN 202310784203A CN 116506124 B CN116506124 B CN 116506124B
Authority
CN
China
Prior art keywords
parties
key
exchange message
party
random
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
Application number
CN202310784203.3A
Other languages
English (en)
Other versions
CN116506124A (zh
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.)
Hangzhou Jinzhita Technology Co ltd
Original Assignee
Hangzhou Jinzhita Technology 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 Hangzhou Jinzhita Technology Co ltd filed Critical Hangzhou Jinzhita Technology Co ltd
Priority to CN202310784203.3A priority Critical patent/CN116506124B/zh
Publication of CN116506124A publication Critical patent/CN116506124A/zh
Application granted granted Critical
Publication of CN116506124B publication Critical patent/CN116506124B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/46Secure multiparty computation, e.g. millionaire problem

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本说明书提供多方隐私求交系统及方法,其中多方隐私求交系统包括m个参与方,该m个参与方包括一个中心方和m‑1个其他方;其他方基于预先定义的一轮密钥交换协议计算第一交换消息集合,并发送给中心方,然后基于第一密钥交换消息和其他方的盲化因子,计算第二密钥交换消息,并发送给中心方,其中,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数;中心方根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合,基于m‑1个其他方的零共享集合,确定m个参与方的交集元素。

Description

多方隐私求交系统及方法
技术领域
本说明书涉及多方隐私计算技术领域,特别涉及一种多方隐私求交系统。本说明书同时涉及一种多方隐私求交方法,一种多方隐私求交系统的中心方,一种计算设备,以及一种计算机可读存储介质。
背景技术
隐私集合求交指允许一组参与方输入私有集合共同计算集合交集,且保证除集合交集结果外无任何额外元素信息的泄露。隐私集合求交(Private Set Intersection,PSI)是安全多方计算(Multi-Party Computation,MPC)领域的一类专有协议,其无需采用基于电路的通用MPC框架进行设计,针对某一特定场景可采用更轻量级的密码原语构建PSI协议,由此摆脱混淆电路带来的昂贵开销并带来了巨大的性能提升。
多方PSI除考虑两方PSI数据加密安全外还需考虑多方合谋问题,依据加密原语和抵御多方合谋技术可将现有多方PSI协议分为两类:一类为基于不经意可编程伪随机函数(Oblivious Programmable Pseudo-Random Function, OPPRF)加零共享的多方PSI框架,一类为基于阈值同态公钥加密的多方PSI框架,但是这些方案均存在大量的通信开销和计算开销,因此,亟需一种新的隐私集合求交方案来解决上述问题。
发明内容
有鉴于此,本说明书实施例提供了一种多方隐私求交系统。本说明书同时涉及一种多方隐私求交,一种多方隐私求交系统的中心方,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种多方隐私求交系统,多方隐私求交系统包括m个参与方,m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;
其他方,被配置为基于预先定义的一轮密钥交换协议计算第一交换消息集合,并发送给中心方;基于第一密钥交换消息和其他方的盲化因子,计算第二密钥交换消息,并发送给中心方,其中,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数;
中心方,被配置为根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合;基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
根据本说明书实施例的第二方面,提供了一种多方隐私求交方法,应用于多方隐私求交系统的中心方,多方隐私求交系统包括m个参与方,m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;方法包括:
接收其他方发送的第一交换消息集合和第二密钥交换消息,其中,第一交换消息集合为其他方基于预先定义的一轮密钥交换协议计算计算获得,第二密钥交换消息为其他方基于第一密钥交换消息和其他方的盲化因子计算获得,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数;
根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合;
基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
根据本说明书实施例的第三方面,提供了一种多方隐私求交系统的中心方,多方隐私求交系统包括m个参与方,m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;中心方包括:
接收模块,被配置为接收其他方发送的第一交换消息集合和第二密钥交换消息,其中,第一交换消息集合为其他方基于预先定义的一轮密钥交换协议计算计算获得,第二密钥交换消息为其他方基于第一密钥交换消息和其他方的盲化因子计算获得,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数;
第一确定模块,被配置为根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合;
第二确定模块,被配置为基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
根据本说明书实施例的第四方面,提供了一种计算设备,包括:
存储器和处理器;
存储器用于存储计算机可执行指令,处理器用于执行计算机可执行指令,以实现上述的多方隐私求交方法的操作步骤。
根据本说明书实施例的第五方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述的多方隐私求交方法的操作步骤。
本说明书实施例提供的多方隐私求交系统包括m个参与方,该m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;其他方,被配置为基于预先定义的一轮密钥交换协议计算第一交换消息集合,并发送给中心方;基于第一密钥交换消息和其他方的盲化因子,计算第二密钥交换消息,并发送给中心方,其中,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数;中心方,被配置为根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合;基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
这种情况下,任一其他方可以基于一轮密钥交换协议计算第一交换消息集合,以及基于自身的盲化因子计算第二密钥交换消息,并发送给中心方,基于其他方的盲化因子进行加密可以实现无条件零共享;中心方可以基于其他方发送的第一交换消息集合和第二密钥交换消息,计算加密盲化因子,然后根据加密盲化因子确定其他方的零共享集合,从而基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
如此,通过采用一轮密钥交换协议作为加密私有元素原语,以实现小集合场景下最优的运行时间,中心方可以分别和各个其他方进行一轮密钥交换协议的交换处理,从而基于两方的一轮密钥交换协议和无条件零共享实现了一个高效的多方隐私求交方法,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销,且中心方计算出的密钥交换消息在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,适用于小集合多参与方的隐私求交。
附图说明
图1是本说明书一实施例提供的一种多方隐私求交系统的结构示意图;
图2是本说明书一实施例提供的一种多方隐私求交方法的流程图;
图3是本说明书一实施例提供的另一种多方隐私求交方法的流程图;
图4是本说明书一实施例提供的一种多方隐私求交系统的中心方的结构示意图;
图5是本说明书一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
需要说明的是,本说明书实施例所涉及的数据,均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
隐私集合求交技术(Private Set Intersection,PSI):是多方安全计算中的一个重要组成部分,被认为是跨机构数据合作的前置步骤,实现跨源数据间的安全融合,也得到了广泛的关注和落地应用。在很多的应用场景中参与方的数量大于两方,此时需要多方隐私求交技术作为前置技术。多方隐私求交(Multi-party Private Set Intersection,MPSI)是指多个参与方均拥有一个数据集,多个参与方通过交互获得所有数据集的交集,并由其中一个参与方获得,且该参与方除了获得该交集外无法获得任何额外信息,其他参与方无法获得其他任何额外信息。
伪随机函数(Pseudo Random Function – PRF):根据随机种子和数据本身产生随机数,如果数据和随机种子相同,则产生相同的随机数。
不经意传输(Oblivious Transfer – OT):一个密码学协议,在这个协议中,消息发送者从一些待发送的消息中发送一条给接收者,但事后对发送了哪一条消息仍然不知道。
半诚实模型(honest but curious adversaryHbc):协议的各参与方遵守协议的执行过程,但可以在协议执行过程中,根据输入和协议的输出信息推断其他参与方的信息。
恶意模型(malicious adversary Mal):参与方不遵守协议的执行过程,可能拒绝参与协议、修改隐私的输入集合信息、提前终止协议的执行等,因此需要使用更多的密码协议或技术(位比特承诺协议、零知识证明等)来保证计算结果的正确性。
需要说明的是,隐私计算可以实现联合分散在多方的数据,进行统计计算和机器学习。在进行隐私计算之前,一般需要找出多方共有的样本,尤其是对纵向联邦学习来说,不同的参与方持有样本的不同特征,需要各方围绕同一批样本,把不同的特征拼在一起,才能完成后续的计算。如果有个参与方缺少某个样本的数据,那这个样本就无法用于后续的训练。因此在一开始,需要各个参与方联合起来,使用PSI的方法,找到大家都有数据的一批样本,保证每个样本都有足够的数据用于后续的训练。
隐私集合求交指允许一组参与方输入私有集合共同计算集合交集,且保证除集合交集结果外无任何额外元素信息的泄露。隐私集合求交(Private Set Intersection,PSI)是安全多方计算(Multi-Party Computation,MPC)领域的一类专有协议,其无需采用基于电路的通用MPC框架进行设计,针对某一特定场景可采用更轻量级的密码原语构建PSI协议,由此摆脱混淆电路带来的昂贵开销并带来了巨大的性能提升。PSI依据参与方数量可分为两方PSI(传统PSI)和多方PSI。两方PSI协议研究无论是协议的安全强度还是计算性能均已取得了巨大成功,目前已部署于实际生产环境中;而多方PSI仅涉及少量的研究,将多方PSI部署于实际应用场景中仍存在大量有待优化的地方。
多方PSI除考虑两方PSI数据加密安全外还需考虑多方合谋问题。依据加密原语和抵御多方合谋技术可将现有多方PSI协议分为两类:第一类为基于不经意可编程伪随机函数(Oblivious Programmable Pseudo-Random Function, OPPRF)加零共享的多方PSI框架,第二类为基于阈值同态公钥加密的多方PSI框架。
第一类方案中,设计了两种抵御多方合谋技术。第一种通过参与方两两之间执行OPPRF来实现有条件零共享以抵御多方合谋,该方案牺牲了通信;第二种通过参与方之间执行无条件零共享以抵御多方合谋,该方案虽然与第一种相比大大减少了通信开销,但无条件零共享的通信开销仍然随着参与方的增加。
第二类方案中,抵御合谋阶段,采用阈值同态公钥加密原语,其自带抵御多方合谋的功能,故该方案抵御多方合谋时不会带来额外的通信开销,但由于阈值同态公钥加密原语的计算性能远低于DH(Diffie-Hellman,DH)和OTE(Oblivious Transfer Extension,OTE),该方案牺牲了性能。
在加密原语阶段,第一类方案采用OTE原语加密数据,第二类方案采用阈值同态公钥加密原语加密数据。
通过对上述框架的加密原语和抵御多方合谋技术分析可发现,基于阈值同态公钥加密的多方PSI框架适用于集合小参与方数量多的场景,基于OPPRF+零共享的多方PSI框架适用于集合大参与方数量少的场景。但当集合大小大于64时可以发现基于阈值同态公钥加密的多方PSI框架通信量负载和运行时间远高于基于OPPRF+零共享的多方PSI框架。可见上述的多方PSI协议并不适用于集合小参与方数量多的场景,基于同态公钥加密的多方PSI框架也同样不适用。其中,集合小是指集合中数据小于500。
本说明书实施例提供了一种隐私+保护的集合求交技术,具体公开了一种适用于小集合多参与方的隐私集合求交计算系统和方法,提供了小集合(n<500)场景下具有更好运行时间和更低通信负载的加密原语和无额外通信开销的抵御多方合谋方法。具体的,通过采用一轮密钥交换协议作为加密私有元素原语,以实现小集合场景下最优的运行时间,中心方可以分别和各个其他方进行一轮密钥交换协议的交换处理,从而基于两方的一轮密钥交换协议和无条件零共享实现了一个高效的多方隐私求交方法,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销,且中心方的协商密钥在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,在小集合场景和多参与方场景下具有更优的计算性能和更低的通信开销,适用于小集合多参与方的隐私求交。
在本说明书中,提供了一种多方隐私求交系统,本说明书同时涉及一种多方隐私求交方法,一种多方隐私求交系统的中心方,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本说明书一实施例提供的一种多方隐私求交系统的结构示意图,如图1所示,多方隐私求交系统包括m个参与方,m个参与方包括一个中心方102和m-1个其他方104,m为大于或等于2的整数。
其他方104,被配置为基于预先定义的一轮密钥交换协议计算第一交换消息集合,并发送给中心方;基于第一密钥交换消息和其他方的盲化因子,计算第二密钥交换消息,并发送给中心方,其中,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数;
中心方102,被配置为根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合;基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
需要说明的是,多方隐私求交是指多个参与方在不泄露任何额外信息的情况下,得到所有参与方持有数据的交集。本说明书实施例中多方隐私求交系统采用星型网络通信结构,共有m个参与方,分为一个中心方和m-1个其他方/>。每个参与方有对应的私有数据集合/>,其中,u从0至m,n为数据集中数据的个数,也即私有集合大小。第一数据集合是指中心方P0的数据集合/>
具体的,一轮密钥交换协议是预先定义的,用于中心方与其他方交换信息的协议。盲化因子为其他方通过随机采样确定的随机参数,用于对伪随机函数进行加密,获得加密元素,以抵御多方合谋。各个参与方均可以预先计算自身的盲化因子。
实际应用中,各个参与方之间可以预先定义一轮密钥交换协议,用于中心方与其他方之间进行密钥交换,中心方分别与各个其他方基于预先定义的一轮密钥交换协议进行信息交换。具体实现时,中心方可以先基于一轮密钥交换协议计算出自身的第一数据集合对应的第一交换消息集合,并广播给各个其他方,中心方只需计算一次第一交换消息集合,在与各个其他方进行一轮密钥交换协议交换时,均可以采用该第一交换消息集合,也即是说中心方计算出的第一密钥交换消息在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,适用于小集合多参与方的隐私求交。
各个参与方均可以通过随机采样确定自身的随机参数,以作为自身的盲化因子。其他方可以基于预先定义的一轮密钥交换协议计算获得第一交换消息集合,并发送给中心方;并且,其他方还可以基于中心方广播的第一密钥交换消息和自身的盲化因子,计算获得第二密钥交换消息,并发送给中心方。
中心方接收到其他方发送的第一交换消息集合和第二密钥交换消息后,可以进行交集计算。具体的,可以先根据接收到的第一交换消息集合进行计算获得第一协商密钥,然后将中心方的第一数据集合中的各个元素输入第二密钥交换消息获得加密盲化因子,结合该加密盲化因子和第一协商密钥可以确定出其他方的零共享集合。如此,一共可以获得m-1个零共享集合,基于m-1个其他方的零共享集合,即可确定m个参与方的交集元素。
本说明书实施例中,通过采用一轮密钥交换协议作为加密私有元素原语,以实现小集合场景下最优的运行时间,中心方可以分别和各个其他方进行一轮密钥交换协议的交换处理,从而基于两方的一轮密钥交换协议和无条件零共享实现了一个高效的多方隐私求交方法,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销,且中心方计算出的密钥交换消息在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,适用于小集合多参与方的隐私求交。
本实施例一个可选的实施方式中,多方隐私求交系统还包括设置单元,被配置为:
从m个参与方中确定中心方,并将除中心方之外的参与方作为其他方;
定义一轮密钥交换协议,并将一轮密钥交换协议同步给各个参与方,其中,一轮密钥交换协议包括随机密钥空间、椭圆曲线消息空间和密钥交换消息空间。
需要说明的是,可以预先进行参数设置,具体的,可以随机从m个参与方中确定一个作为中心方,然后将除中心方之外的参与方作为其他方。
实际应用中,还可以预先定义密码原语,也即一轮密钥交换协议,一轮密钥交换协议可以包括如下三个算法:
:定义随机密钥空间;
:定义椭圆曲线消息空间,/>大小=256;
:定义可能的密钥交换消息空间,/>
其中,如果密钥交换消息空间采用半诚实模型,则限定密钥长度为;如果密钥交换消息采用恶意模型,则限定密钥长度为/>。具体实现时,需要保证半诚实模型还是恶意模型安全,可以预先指定,各参与方提前约定。
另外,还可以预先设置计算安全参数:=128,统计安全参数:/>,有限域/>,伪随机函数F等参数,以供多参与方统一。其中,定义有限域是为了保证各个参与方的数据集合在同一个有限域内,后续才可以进行求交计算。
需要说明的是,随机密钥空间可以用于生成随机整数,参与方的数据为有限域,基于定义的一轮密钥交换协议,可以先将参与方的数据集合中的元素映射到椭圆曲线消息空间的椭圆曲线上,通过椭圆曲线对元素进行加密,加密完成后可以通过密钥交换消息空间,再映射回有限域,然后对加密后的数据进行传输。
具体实现时,定义的密钥交换消息空间可以为理想置换算法,,该理想置换算法实际上为一种预先定义的哈希函数,用于把椭圆曲线上的值映射到有限域上。也即是说,理想置换是一种哈希函数,该哈希函数除了将椭圆曲线上的值映射到有限域上之外,还可以进行安全性证明。具体的,模拟器可以通过哈希检索,确定是否有恶意攻击,通过模拟哈希检索的结果,模拟恶意方查询了哪些函数,通过检索出的信息模拟现实场景中恶意方进行了哪些恶意攻击,证明模拟出的理想场景和现实场景等价,从而证明定义出的一轮密钥交换协议的安全性。
本实施例一个可选的实施方式中,m个参与方中的第一参与方,被配置为:
对各个第二参与方随机采样获得第一随机值,并发送给各个第二参与方,其中,第二参与方为m个参与方中除第一参与方之外的各个参与方;
基于各个第一随机值和各个第二随机值计算第一参与方的盲化因子,其中,各个第二随机值为各个第二参与方对第一参与方随机采样获得的随机值。
具体的,第一参与方为m个参与方中的任一参与方。也即是说,各个参与方都可以作为第一参与方,通过随机采样确定随机参数,获得自身的盲化因子。
实际应用中,针对任一参与方,可以对各个第二参与方/>(h<u)进行随机采样,获得第一随机值,/>,将针对/>随机采样获得的第一随机值发送给/>,如此,每个参与方不只可以对其余各个参与方进行随机采样获得第一随机值,还可以接收到其余各个参与方向他发送的第二随机值/>。因而,可以基于各个第一随机值和各个第二随机值计算第一参与方的盲化因子,也即第一参与方/>的盲化因子为:/>
本说明书实施例中,各个参与方都可以通过随机采样确定随机参数,以作为自身的盲化因子,以抵御多方合谋。
本说明书实施例中,可以预先定义一轮密钥交换协议,并将一轮密钥交换协议同步给各个参与方,以便后续中心方可以分别与各个其他方进行一轮密钥交换协议的信息交换。
本实施例一个可选的实施方式中,中心方102,进一步被配置为:
基于随机密钥空间为第一数据集合中的各个第一元素生成对应的第一随机整数,将第一随机整数作为对应第一元素的私钥,获得中心方的第一私钥集合,其中,第一数据集合为中心方的数据集合;
对椭圆曲线消息空间的椭圆曲线基点和第一私钥集合进行点乘处理,获得第二交换消息集合;
基于密钥交换消息空间对第二交换消息集合中的各个元素进行映射,获得映射消息集合;
以第一数据集合中的元素作为键,并以映射消息集合中的元素作为值,构建对应的第一多项式,将第一多项式作为第一密钥交换消息,并广播给各个其他方。
实际应用中,一轮密钥交换协议阶段,中心方与所有其它方/>共同执行两方的一轮密钥交换协议,可以获得基于盲化因子对数据加密后的密钥交换消息,也即是说,中心方分别与各个其他方进行信息交换处理。
具体实现时,中心方先基于随机密钥空间为第一数据集合/>中的各个第一元素生成对应的第一随机整数,/>,然后将该第一随机整数作为对应第一元素的私钥,获得中心方的第一私钥集合/>。其中,第一数据集合/>是中心方/>的私有数据集合。
然后,对椭圆曲线消息空间的椭圆曲线(Elliptic curve cryptography,ECC)基点G和第一私钥集合执行ECC点乘算法,获得第二交换消息集合。基于密钥交换消息空间对第二交换消息集合中/>的各个元素进行映射,获得映射消息集合/>,也即是基于预设的哈希函数进行理想置换,将第二交换消息集合中/>映射回有限域中。
之后,以第一数据集合中的元素(/>)作为键,并以映射消息集合/>中的元素(/>)作为值,构建对应的第一多项式,将该第一多项式作为第一密钥交换消息,并广播给各个其他方。
本说明书实施例中,中心方可以基于预先定义的一轮密钥交换协议,先对自身的第一数据集合中的各个元素进行加密,然后将加密的数据映射到椭圆曲线上,基于椭圆曲线进一步加密数据,然后再通过理想置换(也即哈希函数),将数据映射回有限域,获得第一密钥交换消息,并广播给各个其他方,以便后续各个其他方可以利用该中心方广播的第一密钥交换消息,对自身的数据进行加密,再反馈给中心方,以供中心方确定出交集。
本实施例一个可选的实施方式中,其他方104,进一步被配置为:
基于随机密钥空间为第二数据集合中的各个第二元素生成对应的第二随机整数,将第二随机整数作为对应第二元素的私钥,获得其他方的第二私钥集合,其中,第二数据集合为其他方的数据集合;
对椭圆曲线消息空间的椭圆曲线基点和第二私钥集合进行点乘处理,获得第一交换消息集合,并将第一交换消息集合发送给中心方。
具体的,该其他方为m-1个其他方中的任一个其他方,假设该其他方为/>,i为1-m的任意数值。
实际应用中,其他方可以基于随机密钥空间为第二数据集合/>中的各个第二元素生成对应的第二随机整数,/>,然后将该第二随机整数作为对应第二元素的私钥,获得其他方/>的第二私钥集合/>。其中,第二数据集合/>是其他方/>的私有数据集合。
然后,对椭圆曲线消息空间的椭圆曲线(Elliptic curve cryptography,ECC)基点G和第二私钥集合执行ECC点乘算法,获得第一交换消息集合,并将该第一交换消息集合发送给中心方/>
本说明书实施例中,其他方也可以基于预先定义的一轮密钥交换协议,先对自身的第二数据集合中的各个元素进行加密,然后将加密的数据映射到椭圆曲线上,基于椭圆曲线进一步加密数据,获得第一交换消息集合,并传递给中心方,使得后续中心方可以基于该第一交换消息集合再计算一次协商密钥,从而确定出交集。
本实施例一个可选的实施方式中,其他方104,进一步被配置为:
基于第二私钥集合和第一密钥交换消息,计算第二协商密钥;
基于其他方的盲化因子对伪随机函数进行加密,获得加密伪随机函数,其中,伪随机函数为预先基于设置单元配置并同步给各个其他方;
基于第二协商密钥和加密伪随机函数,计算交集秘密共享集合;
以第二数据集合中的元素作为键,并以交集秘密共享集合中的元素作为值,构建第二多项式,将第二多项式作为第二密钥交换消息发送给中心方。
需要说明的是,其他方计算出第一交换消息集合并发送给中心方之后,还可以继续基于自身预先计算出的盲化因子,进一步对数据加密,获得第二密钥交换消息,再发送给中心方。
实际应用中,其他方可以基于第二私钥集合和中心方广播的第一密钥交换消息/>,计算第二协商密钥/>,也即是第二协商密钥,其中,/>为第二私钥集合/>中的第i个元素,/>为第一密钥交换消息/>中的第i个元素。
然后,可以基于该其他方的盲化因子对预先定义的伪随机函数F进行加密,获得加密伪随机函数/>,该伪随机函数为预先基于设置单元配置并同步给各个其他方。对第二协商密钥/>和该加密伪随机函数/>进行异或操作,也即计算/>,可以获得交集秘密共享集合/>
之后,以第二数据集合中的元素(/>)作为键,并以交集秘密共享集合中的元素作为值,构建第二多项式,将该第二多项式作为第二密钥交换消息发送给中心方。
本说明书实施例中,其他方可以向中心方发送第一交换消息集合和第二密钥交换消息,以使中心方可以基于该第一交换消息集合和第二密钥交换消息进行交集计算,确定出各个参与方的交集。
本实施例一个可选的实施方式中,中心方102,进一步被配置为:
基于第一交换消息集合中的各个元素和第一私钥集合中的各个私钥,计算各个元素的第一协商密钥;
将第一数据集合中的各个元素输入第二密钥交换消息获得加密盲化因子;
将加密盲化因子和第一协商密钥进行异或操作,获得其他方的零共享集合。
需要说明的是,中心方可以从其他方/>处接收第一交换消息集合,以及第二密钥交换消息/>,中心方可以基于第一交换消息集合和第二密钥交换消息进行交集计算,以获得其他方/>的零共享集合。
实际应用中,中心方接收到其他方/>发送的第一交换消息集合后,可以基于该第一交换消息集合再次计算该其他方/>的协商密钥。具体的,可以对第一交换消息集合中的元素/>和第一私钥集合/>执行计算,获得第一协商密钥/>
然后,将第一数据集合中的各个元素输入第二密钥交换消息(也即多项式/>中),可以获得各个元素对应的加密盲化因子/>。将各个元素对应的加密盲化因子/>和第一协商密钥/>进行异或操作,可以获得其他方中各个元素的零共享值/>,从而获得该其他方/>的零共享集合/>
本说明书实施例中,中心方可以基于其他方发送的第一交换消息集合和第二密钥交换消息,计算加密盲化因子,然后根据加密盲化因子确定其他方的零共享集合,从而便于后续中心方基于各个其他方的零共享集合,确定m个参与方的交集元素,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销。
本实施例一个可选的实施方式中,中心方102,进一步被配置为:
针对目标元素,计算m-1个其他方的零共享集合的异或结果;
若异或结果为0,则确定目标元素为m个参与方的交集元素。
具体的,目标元素为中心方的第一数据集合中的任一个元素。
需要说明的是,针对各个其他方,中心方均可以计算获得对应的零共享集合,中心方共获得m-1个零共享集合,
实际应用中,中心方针对自身的第一数据集合中的目标元素/>,c为1-n的任意数值,可以计算m-1个其他方的零共享集合的异或结果,也即对于m-1个集合依次计算/>,若/>==0,则说明异或结果为0,确定该目标元素/>为m个参与方的交集元素;若/>≠0,则说明异或结果不为0,则确定该目标元素/>不为m个参与方的交集元素。
需要说明的是,各个参与方均可以作为中心方,确定出自身的数据集合中哪些数据为交集元素,哪些数据不是交集元素,实现隐私集合求交。
本说明书实施例提供的多方隐私求交系统包括m个参与方,该m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;任一其他方可以基于一轮密钥交换协议计算第一交换消息集合,以及基于自身的盲化因子计算第二密钥交换消息,并发送给中心方,基于其他方的盲化因子进行加密可以实现无条件零共享;中心方可以基于其他方发送的第一交换消息集合和第二密钥交换消息,计算加密盲化因子,然后根据加密盲化因子确定其他方的零共享集合,从而基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
如此,通过采用一轮密钥交换协议作为加密私有元素原语,以实现小集合场景下最优的运行时间,中心方可以分别和各个其他方进行一轮密钥交换协议的交换处理,从而基于两方的一轮密钥交换协议和无条件零共享实现了一个高效的多方隐私求交方法,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销,且中心方计算出的密钥交换消息在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,适用于小集合多参与方的隐私求交。
图2示出了根据本说明书一实施例提供的一种多方隐私求交方法的流程图,应用于多方隐私求交系统,多方隐私求交系统包括m个参与方,m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数,该方法具体包括以下步骤:
步骤202:中心方基于一轮密钥交换协议计算第一密钥交换消息,并广播给各个其他方。
本实施例一个可选的实施方式中,中心方基于一轮密钥交换协议计算第一密钥交换消息,并广播给各个其他方之前,还包括:
m个参与方中的第一参与方对各个第二参与方随机采样获得第一随机值,并发送给各个第二参与方,其中,第二参与方为m个参与方中除第一参与方之外的其他各个参与方;
基于各个第一随机值和各个第二随机值计算第一参与方的盲化因子,其中,各个第二随机值为各个第二参与方对第一参与方随机采样获得的随机值。
本实施例一个可选的实施方式中,中心方基于一轮密钥交换协议计算第一密钥交换消息,并广播给各个其他方,包括:
基于随机密钥空间为第一数据集合中的各个第一元素生成对应的第一随机整数,将第一随机整数作为对应第一元素的私钥,获得中心方的第一私钥集合,其中,第一数据集合为中心方的数据集合;
对椭圆曲线消息空间的椭圆曲线基点和第一私钥集合进行点乘处理,获得第二交换消息集合;
基于密钥交换消息空间对第二交换消息集合中的各个元素进行映射,获得映射消息集合;
以第一数据集合中的元素作为键,并以映射消息集合中的元素作为值,构建对应的第一多项式,将第一多项式作为第一密钥交换消息,并广播给各个其他方。
步骤204:其他方基于预先定义的一轮密钥交换协议计算第一交换消息集合,并发送给中心方。
本实施例一个可选的实施方式中,其他方基于预先定义的一轮密钥交换协议计算第一交换消息集合,并发送给中心方,包括:
基于随机密钥空间为第二数据集合中的各个第二元素生成对应的第二随机整数,将第二随机整数作为对应第二元素的私钥,获得其他方的第二私钥集合,其中,第二数据集合为其他方的数据集合;
对椭圆曲线消息空间的椭圆曲线基点和第二私钥集合进行点乘处理,获得第一交换消息集合,并将第一交换消息集合发送给中心方。
步骤206:其他方基于第一密钥交换消息和其他方的盲化因子,计算第二密钥交换消息,并发送给中心方,其中,盲化因子为其他方通过随机采样确定的随机参数。
本实施例一个可选的实施方式中,其他方基于第一密钥交换消息和其他方的盲化因子,计算第二密钥交换消息,并发送给中心方之前,还包括:
m个参与方中的第一参与方对各个第二参与方随机采样获得第一随机值,并发送给各个第二参与方,其中,第二参与方为m个参与方中除第一参与方之外的其他各个参与方;
基于各个第一随机值和各个第二随机值计算第一参与方的盲化因子,其中,各个第二随机值为各个第二参与方对第一参与方随机采样获得的随机值。
本实施例一个可选的实施方式中,其他方基于第一密钥交换消息和其他方的盲化因子,计算第二密钥交换消息,并发送给中心方,包括:
基于第二私钥集合和第一密钥交换消息,计算第二协商密钥;
基于其他方的盲化因子对伪随机函数进行加密,获得加密伪随机函数,其中,伪随机函数为预先基于设置单元配置并同步给各个其他方;
基于第二协商密钥和加密伪随机函数,计算交集秘密共享集合;
以第二数据集合中的元素作为键,并以交集秘密共享集合中的元素作为值,构建第二多项式,将第二多项式作为第二密钥交换消息发送给中心方。
步骤208:中心方根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合。
本实施例一个可选的实施方式中,中心方根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合,包括:
基于第一交换消息集合中的各个元素和第一私钥集合中的各个私钥,计算各个元素的第一协商密钥;
将第一数据集合中的各个元素输入第二密钥交换消息获得加密盲化因子;
将加密盲化因子和第一协商密钥进行异或操作,获得其他方的零共享集合。
步骤210:中心方基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
本实施例一个可选的实施方式中,中心方基于m-1个其他方的零共享集合,确定m个参与方的交集元素,包括:
针对目标元素,计算m-1个其他方的零共享集合的异或结果;
若异或结果为0,则确定目标元素为m个参与方的交集元素。
需要说明的是,本说明书实施例提供的多方隐私求交方法主要分为4个阶段:参数设置与生成阶段、无条件零共享阶段、一轮密钥交换协议阶段和计算交集阶段。其中,参数设置与生成阶段:各个参与方协商确定协议所需的密码原语(也即一轮密钥交换协议)及其参数;无条件零共享阶段:所有参与方执行无条件零共享协议,获得抵御多方合谋盲化因子;一轮密钥交换协议阶段:中心方和其他方之间交互执行两方一轮密钥交换协议,获得加密消息,即第一交换消息集合和第二密钥交换消息,此处的加密原语允许中心方的交换消息和所有其他方共用,从而适用于更多参与方,减少通信开销;计算交集阶段:中心方本地基于其他方的第一交换消息集合和第二密钥交换消息,计算零共享集合,得到交集结果,抵御多方合谋。上述任何一个阶段密码原语的优化与更新都可以优化本说明书实施例提供的多方隐私求交方法,也即匿踪查询算法。
本说明书实施例提供的多方隐私求交方法,任一其他方可以基于一轮密钥交换协议计算第一交换消息集合,以及基于自身的盲化因子计算第二密钥交换消息,并发送给中心方,基于其他方的盲化因子进行加密可以实现无条件零共享;中心方可以基于其他方发送的第一交换消息集合和第二密钥交换消息,计算加密盲化因子,然后根据加密盲化因子确定其他方的零共享集合,从而基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
如此,通过采用一轮密钥交换协议作为加密私有元素原语,以实现小集合场景下最优的运行时间,中心方可以分别和各个其他方进行一轮密钥交换协议的交换处理,从而基于两方的一轮密钥交换协议和无条件零共享实现了一个高效的多方隐私求交方法,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销,且中心方计算出的密钥交换消息在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,适用于小集合多参与方的隐私求交。
图3示出了根据本说明书一实施例提供的另一种多方隐私求交方法的流程图,应用于多方隐私求交系统的中心方,多方隐私求交系统包括m个参与方,m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数,该方法具体包括以下步骤:
步骤302:接收其他方发送的第一交换消息集合和第二密钥交换消息,其中,第一交换消息集合为其他方基于预先定义的一轮密钥交换协议计算计算获得,第二密钥交换消息为其他方基于第一密钥交换消息和其他方的盲化因子计算获得,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数。
步骤304:根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合。
步骤306:基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
本说明书实施例提供的多方隐私求交方法,任一其他方可以基于一轮密钥交换协议计算第一交换消息集合,以及基于自身的盲化因子计算第二密钥交换消息,并发送给中心方,基于其他方的盲化因子进行加密可以实现无条件零共享;中心方可以基于其他方发送的第一交换消息集合和第二密钥交换消息,计算加密盲化因子,然后根据加密盲化因子确定其他方的零共享集合,从而基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
如此,通过采用一轮密钥交换协议作为加密私有元素原语,以实现小集合场景下最优的运行时间,中心方可以分别和各个其他方进行一轮密钥交换协议的交换处理,从而基于两方的一轮密钥交换协议和无条件零共享实现了一个高效的多方隐私求交方法,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销,且中心方计算出的密钥交换消息在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,适用于小集合多参与方的隐私求交。
与上述方法实施例相对应,本说明书还提供了多方隐私求交系统的中心方的实施例,图4示出了本说明书一实施例提供的一种多方隐私求交系统的中心方的结构示意图,多方隐私求交系统包括m个参与方,m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数,如图4所示,该中心方包括:
接收模块402,被配置为接收其他方发送的第一交换消息集合和第二密钥交换消息,其中,第一交换消息集合为其他方基于预先定义的一轮密钥交换协议计算计算获得,第二密钥交换消息为其他方基于第一密钥交换消息和其他方的盲化因子计算获得,第一密钥交换消息为中心方基于一轮密钥交换协议计算并广播给各个其他方,盲化因子为其他方通过随机采样确定的随机参数;
第一确定模块404,被配置为根据第一交换消息集合计算第一协商密钥,并根据第二密钥交换消息获得加密盲化因子,根据加密盲化因子和第一协商密钥确定其他方的零共享集合;
第二确定模块406,被配置为基于m-1个其他方的零共享集合,确定m个参与方的交集元素。
本说明书实施例提供的多方隐私求交系统的中心方,可以基于其他方发送的第一交换消息集合和第二密钥交换消息,计算加密盲化因子,然后根据加密盲化因子确定其他方的零共享集合,从而基于m-1个其他方的零共享集合,确定m个参与方的交集元素。如此,通过采用一轮密钥交换协议作为加密私有元素原语,以实现小集合场景下最优的运行时间,中心方可以分别和各个其他方进行一轮密钥交换协议的交换处理,从而基于两方的一轮密钥交换协议和无条件零共享实现了一个高效的多方隐私求交方法,通过采用无条件零共享抵御多方合谋,以降低参与方增多带来的额外通信开销,且中心方计算出的密钥交换消息在与各个其他方进行交换时可以进行重用,在参与方增多的情况下也不会额外增加通信开销,适用于小集合多参与方的隐私求交。
上述为本实施例的一种多方隐私求交系统的中心方的示意性方案。需要说明的是,该多方隐私求交系统的中心方的技术方案与上述的多方隐私求交系统的技术方案属于同一构思,多方隐私求交系统的中心方的技术方案未详细描述的细节内容,均可以参见上述多方隐私求交系统的技术方案的描述。
图5示出了根据本说明书一实施例提供的一种计算设备的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN,Public SwitchedTelephone Network)、局域网(LAN,Local Area Network)、广域网(WAN,Wide AreaNetwork)、个域网(PAN,Personal Area Network)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC,NetworkInterface Controller))中的一个或多个,诸如IEEE802.11无线局域网(WLAN,WirelessLocal Area Networks)无线接口、全球微波互联接入(Wi-MAX,WorldwideInteroperability for Microwave Access)接口、以太网接口、通用串行总线(USB,Universal Serial Bus)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC,Near FieldCommunication)接口,等等。
在本说明书的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
其中,处理器520用于执行如下计算机可执行指令,以实现上述的多方隐私求交方法的操作步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的多方隐私求交系统的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述系统方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于实现上述的多方隐私求交方法的操作步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的多方隐私求交系统的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述多方隐私求交系统的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
计算机指令包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

Claims (8)

1.一种多方隐私求交系统,其特征在于,所述多方隐私求交系统包括m个参与方,所述m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;
所述中心方,被配置为基于随机密钥空间为第一数据集合中的各个第一元素生成对应的第一随机整数,将所述第一随机整数作为对应第一元素的私钥,获得所述中心方的第一私钥集合;对椭圆曲线消息空间的椭圆曲线基点和所述第一私钥集合进行点乘处理,获得第二交换消息集合;基于密钥交换消息空间对所述第二交换消息集合中的各个元素进行映射,获得映射消息集合;以所述第一数据集合中的元素作为键,并以所述映射消息集合中的元素作为值,构建对应的第一多项式,将所述第一多项式作为第一密钥交换消息,并广播给各个其他方,其中,所述第一数据集合为所述中心方的数据集合;
其他方,被配置为基于所述随机密钥空间为第二数据集合中的各个第二元素生成对应的第二随机整数,将所述第二随机整数作为对应第二元素的私钥,获得所述其他方的第二私钥集合,对所述椭圆曲线消息空间的椭圆曲线基点和所述第二私钥集合进行点乘处理,获得第一交换消息集合,并发送给所述中心方;基于所述第二私钥集合和所述第一密钥交换消息,计算第二协商密钥,基于所述其他方的盲化因子对伪随机函数进行加密,获得加密伪随机函数,基于所述第二协商密钥和所述加密伪随机函数,计算交集秘密共享集合,以所述第二数据集合中的元素作为键,并以所述交集秘密共享集合中的元素作为值,构建第二多项式,将所述第二多项式作为第二密钥交换消息发送给所述中心方,其中,所述盲化因子为所述其他方基于各个第一随机值和各个第二随机值计算获得,所述第一随机值为其他方对其余各个参与方进行随机采样获得,所述第二随机值为其他各个参与方对所述其他方进行随机采样获得,所述第二数据集合为所述其他方的数据集合;
所述中心方,被配置为基于所述第一交换消息集合中的各个元素和第一私钥集合中的各个私钥,计算各个元素的第一协商密钥;将所述第一数据集合中的各个元素输入所述第二密钥交换消息获得加密盲化因子;将所述加密盲化因子和所述第一协商密钥进行异或操作,获得所述其他方的零共享集合;基于所述m-1个其他方的零共享集合,确定所述m个参与方的交集元素。
2.根据权利要求1所述的多方隐私求交系统,其特征在于,所述多方隐私求交系统还包括设置单元,被配置为:
从所述m个参与方中确定所述中心方,并将除所述中心方之外的参与方作为所述其他方;
定义一轮密钥交换协议,并将所述一轮密钥交换协议同步给各个参与方,其中,所述一轮密钥交换协议包括随机密钥空间、椭圆曲线消息空间和密钥交换消息空间。
3.根据权利要求1所述的多方隐私求交系统,其特征在于,所述m个参与方中的第一参与方,进一步被配置为:
对各个第二参与方随机采样获得第一随机值,并发送给所述各个第二参与方,其中,所述第二参与方为所述m个参与方中除所述第一参与方之外的其他各个参与方;
基于各个第一随机值和各个第二随机值计算所述第一参与方的盲化因子,其中,所述各个第二随机值为所述各个第二参与方对所述第一参与方随机采样获得的随机值。
4.根据权利要求1所述的多方隐私求交系统,其特征在于,所述中心方,进一步被配置为:
针对目标元素,计算所述m-1个其他方的零共享集合的异或结果;
若所述异或结果为0,则确定所述目标元素为所述m个参与方的交集元素。
5.一种多方隐私求交方法,其特征在于,应用于多方隐私求交系统的中心方,所述多方隐私求交系统包括m个参与方,所述m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;所述方法包括:
基于随机密钥空间为第一数据集合中的各个第一元素生成对应的第一随机整数,将所述第一随机整数作为对应第一元素的私钥,获得所述中心方的第一私钥集合;对椭圆曲线消息空间的椭圆曲线基点和所述第一私钥集合进行点乘处理,获得第二交换消息集合;基于密钥交换消息空间对所述第二交换消息集合中的各个元素进行映射,获得映射消息集合;以所述第一数据集合中的元素作为键,并以所述映射消息集合中的元素作为值,构建对应的第一多项式,将所述第一多项式作为第一密钥交换消息,并广播给各个其他方,其中,所述第一数据集合为所述中心方的数据集合;
接收其他方发送的第一交换消息集合和第二密钥交换消息,其中,所述第一交换消息集合为所述其他方基于所述随机密钥空间为第二数据集合中的各个第二元素生成对应的第二随机整数,将所述第二随机整数作为对应第二元素的私钥,获得所述其他方的第二私钥集合,对所述椭圆曲线消息空间的椭圆曲线基点和所述第二私钥集合进行点乘处理获得,所述第二密钥交换消息为所述其他方基于所述第二私钥集合和所述第一密钥交换消息,计算第二协商密钥,基于所述其他方的盲化因子对伪随机函数进行加密,获得加密伪随机函数,基于所述第二协商密钥和所述加密伪随机函数,计算交集秘密共享集合,以所述第二数据集合中的元素作为键,并以所述交集秘密共享集合中的元素作为值,构建第二多项式获得,所述盲化因子为基于各个第一随机值和各个第二随机值计算获得,所述第一随机值为其他方对其余各个参与方进行随机采样获得,所述第二随机值为其他各个参与方对所述其他方进行随机采样获得,所述第二数据集合为所述其他方的数据集合;
基于所述第一交换消息集合中的各个元素和第一私钥集合中的各个私钥,计算各个元素的第一协商密钥;将所述第一数据集合中的各个元素输入所述第二密钥交换消息获得加密盲化因子;将所述加密盲化因子和所述第一协商密钥进行异或操作,获得所述其他方的零共享集合;
基于所述m-1个其他方的零共享集合,确定所述m个参与方的交集元素。
6.一种多方隐私求交系统的中心方,其特征在于,所述多方隐私求交系统包括m个参与方,所述m个参与方包括一个中心方和m-1个其他方,m为大于或等于2的整数;所述中心方包括:
接收模块,被配置为基于随机密钥空间为第一数据集合中的各个第一元素生成对应的第一随机整数,将所述第一随机整数作为对应第一元素的私钥,获得所述中心方的第一私钥集合;对椭圆曲线消息空间的椭圆曲线基点和所述第一私钥集合进行点乘处理,获得第二交换消息集合;基于密钥交换消息空间对所述第二交换消息集合中的各个元素进行映射,获得映射消息集合;以所述第一数据集合中的元素作为键,并以所述映射消息集合中的元素作为值,构建对应的第一多项式,将所述第一多项式作为第一密钥交换消息,并广播给各个其他方,其中,所述第一数据集合为所述中心方的数据集合;接收其他方发送的第一交换消息集合和第二密钥交换消息,其中,所述第一交换消息集合为所述其他方基于所述随机密钥空间为第二数据集合中的各个第二元素生成对应的第二随机整数,将所述第二随机整数作为对应第二元素的私钥,获得所述其他方的第二私钥集合,对所述椭圆曲线消息空间的椭圆曲线基点和所述第二私钥集合进行点乘处理获得,所述第二密钥交换消息为所述其他方基于所述第二私钥集合和所述第一密钥交换消息,计算第二协商密钥,基于所述其他方的盲化因子对伪随机函数进行加密,获得加密伪随机函数,基于所述第二协商密钥和所述加密伪随机函数,计算交集秘密共享集合,以所述第二数据集合中的元素作为键,并以所述交集秘密共享集合中的元素作为值,构建第二多项式获得,所述盲化因子为所述其他方基于各个第一随机值和各个第二随机值计算获得,所述第一随机值为其他方对其余各个参与方进行随机采样获得,所述第二随机值为其他各个参与方对所述其他方进行随机采样获得,所述第二数据集合为所述其他方的数据集合;
第一确定模块,被配置为基于所述第一交换消息集合中的各个元素和第一私钥集合中的各个私钥,计算各个元素的第一协商密钥;将所述第一数据集合中的各个元素输入所述第二密钥交换消息获得加密盲化因子;将所述加密盲化因子和所述第一协商密钥进行异或操作,获得所述其他方的零共享集合;
第二确定模块,被配置为基于所述m-1个其他方的零共享集合,确定所述m个参与方的交集元素。
7.一种计算设备,其特征在于,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现上述权利要求5所述的多方隐私求交方法的操作步骤。
8.一种计算机可读存储介质,其特征在于,其存储有计算机指令,该指令被处理器执行时实现上述权利要求5所述的多方隐私求交方法的操作步骤。
CN202310784203.3A 2023-06-29 2023-06-29 多方隐私求交系统及方法 Active CN116506124B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310784203.3A CN116506124B (zh) 2023-06-29 2023-06-29 多方隐私求交系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310784203.3A CN116506124B (zh) 2023-06-29 2023-06-29 多方隐私求交系统及方法

Publications (2)

Publication Number Publication Date
CN116506124A CN116506124A (zh) 2023-07-28
CN116506124B true CN116506124B (zh) 2023-09-19

Family

ID=87318747

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310784203.3A Active CN116506124B (zh) 2023-06-29 2023-06-29 多方隐私求交系统及方法

Country Status (1)

Country Link
CN (1) CN116506124B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117439732A (zh) * 2023-10-30 2024-01-23 浙江大学 应用于隐私计算的电路隐私集合求交方法、电子设备
CN117240619B (zh) * 2023-11-13 2024-04-16 杭州金智塔科技有限公司 隐私集合求交集基数系统及方法
CN117574412B (zh) * 2024-01-16 2024-04-02 国家计算机网络与信息安全管理中心天津分中心 多方隐私求交方法、装置和电子设备
CN117851660B (zh) * 2024-01-23 2024-07-19 广东电网有限责任公司信息中心 一种电网数据匿踪查询方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111931207A (zh) * 2020-08-07 2020-11-13 北京百度网讯科技有限公司 获得隐私集合交集的方法、装置、设备及存储介质
CN113468601A (zh) * 2021-06-30 2021-10-01 建信金融科技有限责任公司 数据隐私融合方法和装置
CN114386089A (zh) * 2021-12-07 2022-04-22 北京数牍科技有限公司 一种基于多方条件检索的隐私集合求交方法
CN114866225A (zh) * 2022-04-05 2022-08-05 上海海洋大学 一种基于不经意伪随机秘密共享的超阈值多方隐私集合求交方法
CN115037439A (zh) * 2022-06-08 2022-09-09 上海海洋大学 一种适合小集合的多方隐私集合求交方法及系统
CN115051791A (zh) * 2022-05-12 2022-09-13 上海海洋大学 一种基于密钥协商的高效三方隐私集合求交方法及系统
CN115225266A (zh) * 2022-07-13 2022-10-21 杭州安恒信息技术股份有限公司 基于云服务器辅助的多方门限隐私集合求交方法和系统
WO2023108967A1 (zh) * 2021-12-15 2023-06-22 北京邮电大学 基于隐私保护计算和跨组织的联合信用评分方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111931207A (zh) * 2020-08-07 2020-11-13 北京百度网讯科技有限公司 获得隐私集合交集的方法、装置、设备及存储介质
CN113468601A (zh) * 2021-06-30 2021-10-01 建信金融科技有限责任公司 数据隐私融合方法和装置
CN114386089A (zh) * 2021-12-07 2022-04-22 北京数牍科技有限公司 一种基于多方条件检索的隐私集合求交方法
WO2023108967A1 (zh) * 2021-12-15 2023-06-22 北京邮电大学 基于隐私保护计算和跨组织的联合信用评分方法及装置
CN114866225A (zh) * 2022-04-05 2022-08-05 上海海洋大学 一种基于不经意伪随机秘密共享的超阈值多方隐私集合求交方法
CN115051791A (zh) * 2022-05-12 2022-09-13 上海海洋大学 一种基于密钥协商的高效三方隐私集合求交方法及系统
CN115037439A (zh) * 2022-06-08 2022-09-09 上海海洋大学 一种适合小集合的多方隐私集合求交方法及系统
CN115225266A (zh) * 2022-07-13 2022-10-21 杭州安恒信息技术股份有限公司 基于云服务器辅助的多方门限隐私集合求交方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于OT协议的外包隐私集合交集计算协议;廖鹏程;陈小军;申立艳;时金桥;;信息技术与网络安全(第06期);全文 *

Also Published As

Publication number Publication date
CN116506124A (zh) 2023-07-28

Similar Documents

Publication Publication Date Title
CN116506124B (zh) 多方隐私求交系统及方法
CN107196926B (zh) 一种云外包隐私集合比较方法与装置
CN112906044B (zh) 多方安全计算方法、装置、设备及存储介质
CN106487503B (zh) 基于剪裁的霍普菲尔德神经网络的多元公钥密码系统和方法
Lv et al. Unbalanced private set intersection cardinality protocol with low communication cost
CN116112168B (zh) 多方隐私求交中的数据处理方法及系统
WO2023098294A1 (zh) 异构数据处理方法、装置及电子设备
CN115051791B (zh) 一种基于密钥协商的高效三方隐私集合求交方法及系统
CN116502732B (zh) 基于可信执行环境的联邦学习方法以及系统
CN116681141A (zh) 隐私保护的联邦学习方法、终端及存储介质
CN115694777A (zh) 基于同态加密的隐私集合求交方法、装置、设备及介质
CN115935438A (zh) 数据隐私求交系统及方法
CN112818369A (zh) 一种联合建模方法及装置
US10530581B2 (en) Authenticated broadcast encryption
CN115001651A (zh) 适用于半诚实模型下基于全同态加密的多方计算方法
CN114760023A (zh) 基于联邦学习的模型训练方法、装置及存储介质
CN117077209B (zh) 大规模数据匿踪查询方法
Yang et al. EMPSI: Efficient multiparty private set intersection (with cardinality)
CN117034287A (zh) 基于隐私计算互联互通技术的多方联合建模安全增强方法
Li et al. An efficient privacy-preserving bidirectional friends matching scheme in mobile social networks
CN115277696B (zh) 一种跨网络联邦学习系统及方法
CN116094708A (zh) Dbscan算法的隐私保护方法、终端及存储介质
CN114844635A (zh) 一种对数据安全地进行Shuffle的方法
CN115361196A (zh) 一种基于区块链网络的业务交互方法
CN115277031A (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