CN105794145A - 服务器辅助的具有数据传输的私有集交集(psi) - Google Patents

服务器辅助的具有数据传输的私有集交集(psi) Download PDF

Info

Publication number
CN105794145A
CN105794145A CN201480065089.8A CN201480065089A CN105794145A CN 105794145 A CN105794145 A CN 105794145A CN 201480065089 A CN201480065089 A CN 201480065089A CN 105794145 A CN105794145 A CN 105794145A
Authority
CN
China
Prior art keywords
party
key
label
data
server
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
Application number
CN201480065089.8A
Other languages
English (en)
Other versions
CN105794145B (zh
Inventor
S·卡马拉
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105794145A publication Critical patent/CN105794145A/zh
Application granted granted Critical
Publication of CN105794145B publication Critical patent/CN105794145B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • 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
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2115Third party
    • 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)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

现有的私有集交集(PSI)协议允许两方发现它们的集合的交集,但限制学习关于彼此的集合的任何其它信息,除了其大小之外。通常,本文所描述的服务器辅助的具有数据传输的私有集交集技术,提供支持数据传输的服务器辅助的私有集交集(PSI)协议。这些技术与用于提供服务器辅助的私有集交集协议的方法有关,该协议允许两方经由非信任的第三方来传输关于它们的元素的信息中的一些。该协议涉及:(a)参与方向它们的集合中的每一个应用共享的伪随机排列,以生成该集合中的元素的标签;(b)向第三方发送这些标签;(c)第三方执行这两方之间的数据传输,以及使用多方共享密钥来计算接收的集合的交集。

Description

服务器辅助的具有数据传输的私有集交集(PSI)
背景技术
私有集交集(PSI)允许两方发现它们的集合的交集,而无需向彼此暴露它们的集合的数据元素。PSI具有众多的现实世界应用,其包括隐私保护数据挖掘、基于位置的服务和基因组计算。具体而言,PSI协议允许两方P1和P2根据某个域μ来发现两个集合S1和S2的交集,而无需向彼此公开这些集合。换言之,使用PSI协议,P1和P2可以发现它们的集合的交集I=S1∩S2,而无需学习关于另一方的集合的任何信息(除了其大小之外)。
利用服务器辅助的PSI协议,P1和P2两方除了可以将它们计算中的一些外包给非信任的服务器(例如,其是在云中实例化的)。与传统PSI协议相比,服务器辅助的PSI协议对于客户端来说更高效几个数量级。
发明内容
提供本概要部分以便用简化的形式介绍将在以下的详细描述中进一步描述的概念选择。本概要部分并不是旨在标识本发明的关键特征或本质特征,也不是用于限制本发明的保护范围。
本文描述的服务器辅助的具有数据传输的私有集交集技术提供了支持数据传输的服务器辅助的私有集交集(PSI)协议。该技术的PSI协议可以在服务器辅助的设置下操作,其中这些参与方访问非信任服务器,该非信任服务器使其计算资源可作为服务。在一个实施例中,该协议只需要线性数量的分组密码调用(伪随机排列),以及标准/纯文本集合交集算法的执行。
该技术允许两个客户端经由服务器,在网络上传输关于它们的数据元素中的一些的信息。为此,在本技术的一个实施例中,第一客户端针对第一客户端的集合S1中的每一个元素,生成用于该元素的标签、用于该元素的标识符、以及用于使用双方共享密钥进行加密的与该元素相关联的数据的加密形式。第一客户端针对集合S1中的每一个元素,向服务器发送用于每一个元素的标签、用于每一个元素的标识符、以及所述双方共享密钥中的第一共享值。此外,第一客户端还针对集合S1中的每一个元素,向第二客户端发送用于每一个元素的标识符、与每一个元素相关联的加密数据以及所述双方共享密钥中的第二共享值。类似于第一客户端,第二客户端向服务器发送针对第二客户端的集合S2中的元素生成的标签。服务器计算所接收的集合的标签的交集,并针对该交集中的每一个元素,向第二方发送标签、用于该元素的标识符和所述双方共享密钥中的第一共享值。随后,第二客户端可以使用这些标签、标识符以及所述双方共享密钥中的第一和第二共享值,对与这些集合的交集中的每一个元素相关联的数据进行解密。通过利用该技术,交易的任何一方(无论是客户端还是服务器)都不会发现任何客户端不希望向其暴露的数据。
附图说明
通过下面的描述、所附的权利要求书和附图,将变得更好理解本公开内容的特定特征、方面和优点,其中:
图1描述了在参与方之间不存在数据传输的服务器辅助的私有集交集协议的流程图。
图2描述了本文所述的具有数据传输的服务器辅助的私有集交集协议的示例性实施例的流程图。
图3描述了本文所述的服务器辅助的具有数据传输的私有集交集技术的另一个示例性实施例的流程图。
图4描述了图3中所述的服务器辅助的具有数据传输的私有集交集技术的第一客户端的处理的流程图。
图5描述了图3中所述的服务器辅助的具有数据传输的私有集交集技术的第二客户端的处理的流程图。
图6描述了图3中所述的服务器辅助的具有数据传输的私有集交集技术的第三方/服务器的处理的流程图。
图7描述了用于实现本文所述的服务器辅助的具有数据传输的私有集交集技术的一个示例性实施例的架构。
图8描述了用于实现本文所述的服务器辅助的具有数据传输的私有集交集技术的一个示例性实施例的数据流图。
图9是可以用于实现服务器辅助的具有数据传输的私有集交集技术的示例性计算环境的示意图。
具体实施方式
在服务器辅助的具有数据传输的私有集交集技术的下面描述中,参照构成说明书的一部分的附图,其通过示例的方式示出了可以实现本文所描述的服务器辅助的具有数据传输的私有集交集技术的例子。应当理解的是,在不脱离本发明的保护范围的基础上,可以使用其它实施例,并做出结构化改变。
1.0服务器辅助的具有数据传输的私有集交集技术
下面的部分提供了多方计算的介绍、概述,在本说明书中使用的符号的概述、服务器辅助的不具有数据传输的私有集交集的描述、以及本文描述的服务器辅助的具有数据传输的私有集交集技术的示例性实施例。此外,还描述了用于实现本技术的示例性数据流程图和示例性场景。
作为一个初步的问题,下面的一些附图在一个或多个结构化部件(不同地称为功能、模块、特征、元素等等)的背景下描述了概念。这些附图中示出的各种部件可以以任何方式来实现。在一种情况下,所示出的这些附图中的各种部件划分到不同的单元,可以反映相应的不同部件在实际实现中的使用。替代地或另外地,附图中所示出的任何单一部件可以由多个实际部件来实现。替代地或另外地,附图中的任何两个或更多单独部件的描述可以反映由单一实际部件来执行的不同功能。
其它附图描述了流程图形式的概念。用此形式,将某些操作描述成组成以某种顺序来执行的不同模块。这些实现是示例性的,而不是限制性的。可以将本文所描述的某些模块组合在一起,并在单一操作中执行,某些模块可以分割成多个部件模块,某些模块可以以不同于本文所示出的顺序来执行(其包括执行这些模块的并行方式)。流程图中所示出的模块可以利用任何方式来实现。
1.1介绍
在私有集交集(PSI)的问题中,两个参与方想要学习它们集合的交集,而不向彼此暴露除了该交集之外的关于它们的集合的任何信息。PSI是在很多不同的上下文中涌现的安全和隐私方面的基础问题。例如,考虑两个或更多机构希望获得共同客户列表以进行数据挖掘目的的情形;或者政府机构想要了解其禁飞名单上的任何人员是否位于飞机乘客名单之上。在诸如基因组计算、基于位置的服务和协作式僵尸检测之类的各种各样的设置中,PSI都能发现应用。
1.1.1安全的多方计算
PSI是安全的多方计算(MPC)的更普遍问题的特殊情形。在该问题中,每一方保持其自己的私有输入,目标是统一地计算参与方的输入的联合函数,而不泄漏另外的信息,同时保证输出的正确性。实际MPC协议的设计和实现是过去几十年研究的活跃领域,其众多努力是提高和优化软件实现,以及开发新的框架。因此,很大部分的工作聚焦于高效的特殊用途PSI协议的设计和实现。
1.1.2MPC的限制
随着越来越大数据库的趋势的持续,政府和私有机构通常管理大量的数据库,这些数据库存储数十亿条记录。因此,为了任何PSI(以及通常的MPC)解决方案对于这些设置具有实际的意义,需要能够高效地处理具有数千万或者数亿条记录的集合。
1.1.3服务器辅助的MPC
一种用于解决多方计算的有希望的方法是服务器辅助的或者云辅助的MPC。在MPC的这种变形中,利用不具有针对计算的输入并且不接收输出,但使它们的计算资源可用于各参与方的小的服务器集合,来对标准设置进行扩增。
1.1.4预备和符号
该部分提供用于帮助理解本文所述的服务器辅助的私有集交集技术的下面描述的各种预备和符号。
贯穿本说明书,针对于所描述的协议的即不是服务器也不是非信任的第三方的参与方可以称为客户端。术语第三方、非信任的第三方和服务器还可以互换地使用。
本文所描述的协议是单轮协议,并大致具有下面的结构。首先,客户端对它们的输入集进行处理,以生成用于将发送给服务器或第三方的表集合T。随后,服务器关于其接收到的这些集合执行交集运算,并返回结果。由于这些协议针对于恶意或者非信任的服务器保证安全,随后这些客户端执行一些本地检查,从服务器的消息中提取交集。为了便于描述起见,使用非合谋的简化概念,其中,假定两方P1和P2没有串通,如果它们没有同时地被敌方贿赂的话(例如,P1是恶意的或者P2是恶意的,但两方不会同时)。
在本技术的一些实施例中,以保守的方式将服务器对待成不值得信任的(例如,其意味着不信任该服务器能维持向该服务器提供的信息的机密性)。但是,在一些场景中,假定服务器不会与任何参与方模块串通,以避开本文描述的安全规定。此外,在一些场景中,假定该联合计算的参与方在最坏情况下是半诚实实体。这意味着可以期望这些实体遵循预订的安全协议。但这些实体可能尝试利用它们在该协议的过程期间发现的信息来揭露另外的信息(没有向它们授权这些信息)。
诸如本文所描述的私钥加密方案是如下所述地进行工作的一组三个多项式时间算法(Gen、Enc、Dec)。Gen是采用一元的安全参数k的概率性算法,其返回安全密钥K。Enc是采用密钥K和n比特消息m,并返回密码C的概率性算法。Dec是采用密钥K和密码c,并返回m(如果K是产生c时的密钥的话)的确定性算法。
在下面所描述的所有协议中,k表示计算安全参数(即,用于伪随机排列(PRP)的密钥长度),而s表示统计安全参数。对于λ≥1而言,将集合Sλ规定成:
Sλ={x||1,...,x||λ:x∈S}
,并且(Sλ)=S。如果F:U→V是函数,则F的S评估是集合F(S)={F(s):s∈S}。将F-1表示成F的逆,其中,F-1(F(S))=S。如果π:[|S|]→[|S|]是一种排列,则集合π(S)是源自于根据π,对S的元素进行排列的集合(其假定这些元素的自然顺序)。换言之:
π(S)={xπ(i):xi∈S}
分别将两个集合S1和S2的并集和集合差表示成S1+S2和S1-S2
1.2不具有数据传输的半诚实服务器辅助的PSI
作为背景知识,在描述服务器辅助的具有数据传输的私有集交集技术之前,首先描述用于半诚实服务器或者任何串通的恶意方的不具有数据传输的服务器辅助的私有集交集协议。在表1中示出了该协议,并在图1中进行描述。
参见图1,使Si表示参与方Pi的集合。这些参与方通过联合地生成用于伪随机排列(PRP)F的安全的k比特密钥K,如方框102中所示。每一个参与方随机地对集合FK(Si)进行排列,其中该集合包含通过对该参与方的适当集合的元素评估PRP来计算的标签(如方框104中所示),并向服务器发送排列后的集合(如方框106中所示)。随后,服务器简单地计算和返回这些标签FK(S1)到FK(Sn)的交集(参见方框108、110)。随后,每一个参与方知道它们与其它方共同具有哪些元素。
直觉上,该协议的安全源自于下面的事实:参与方均不从彼此接收任何消息,它们的唯一的可能恶意行为是改变它们自己的PRP标签,这只是简单地转换为改变它们的输入集合。半诚实服务器只接收由于PRP的伪随机性的标签,而不暴露关于集合元素的任何信息。
表1服务器辅助的PSI协议与半诚实服务器
在存在(1)半诚实服务器和诚实参与方,或者(2)诚实服务器和任何串通的恶意参与方时,表1中所描述的协议是安全的。
每一个Pi调用该PRP达到|Si|次,而服务器(在一个实施例中)只执行“纯文本”集合交集运算,不执行密码操作。但是,该技术可以使用现有算法中的任何一种来进行集合交集运算。在本技术的一个实施例中,使用以几乎线性时间运行的民俗(folklore)哈希表插入/查找。
可以异步地执行该协议,其中每一个参与方在不同的时间进行连接,以向服务器提交他的消息,并稍后获得该输出。
1.3具有数据传输的半诚实PSI
在PSI的很多实际应用中,参与方中的一方还希望传输与该交集中的元素有关的某种信息。具体而言,假定P1除了其集合S1之外,还具有关联到S1一些数据的每一个元素x的数据库db,其表示为db(x)。在这种场景下,P1可能希望向P2传送集合{db(x):x∈S1∩S2},其中S2是P2的集合。而针对该场景来说,上面所描述的协议并不足够,其可以使用成用于实现该数据传输的更复杂协议中的模块。
图2根据该技术,描述了生成用于服务器辅助的具有数据传输的PSI协议的计算机实现的处理200。该处理传输与两个参与方所持有的两个数据集的交集中的数据元素相关联的某种信息,而不暴露它们的数据集。
如方框202中所示,第一方针对集合S1中的每一个元素,生成包括以下各项的三元组的集合:用于该元素的标签、用于该元素的标识符、以及使用双方共享安全密钥加密的用于与该元素相关联的数据的加密形式。使用共享密钥和PRP来生成用于S1中的每一个元素的标签。
如方框204中所示,针对集合S1中的每一个元素,第一方向第二方发送用于每一个元素的标识符、与每一个元素相关联的加密数据、以及双方共享密钥中的第二共享值。另外,针对集合S1中的每一个元素,第一方向第三方发送用于每一个元素的标签、用于与每一个元素相关联的数据的标识符、以及双方共享密钥中的第一共享值,如方框206中所示。此外,第二方还向第三方发送针对集合S2中的元素所产生的标签(方框208)。使用相同的共享密钥以及第一方使用的PRP,来生成用于集合S2中的元素的标签。
一旦第三方从第一方和第二方接收到前述的数据,则第三方计算这些集合的标签的交集,并针对该交集中的每一个元素,向第二方发送标签、
与该元素相关联的标识符以及双方共享密钥中的第一共享值,如方框210中所示。
随后,第二方可以使用这些标签、标识符和双方共享密钥中的第一和第二共享值,对与这些集合的交集中的每一个元素相关联的数据进行解密,如方框212中所示。这可以通过对这些共享值进行异或以恢复密钥,随后使用该密钥来对数据进行解密。
表2描述了针对半诚实服务器和半诚实P1和P2保证安全的具有数据传输两方PSI协议。参照图3更详细地描述该协议。
表2针对半诚实方保证安全的两方PSI协议
图3描述了用于使用第三方(例如,非信任的第三方),传输与两个参与方P1和P2所持有的两个数据集合S1和S2的交集中的数据的元素xi相关联的一些信息db(x),而无需任意一个参与方P1或P2暴露它们的集合中的数据的另一种计算机实现的处理300。该计算机实现的处理通常涉及表2中所示出的协议。
如方框302中所示,第一方P1生成第一密钥Ke、第二密钥Kl和第三密钥K1;向第二方P2发送第二密钥Kl。密钥Ke用于生成针对与集合S1的每一个元素相关联的数据db(x)的加密密钥,而密钥Kl用于生成针对集合的元素的标签。密钥K1用于生成针对集合的元素x的标识符idx
如方框304中所示,针对P1的集合S1中的每一个元素:
(1)使用Ke,生成双方共享密钥Kx。该双方共享密钥Kx由第一共享值zx,1和第二共享值zx,2构成。在本技术的一个实施例中,这通过向元素x应用伪随机排列,使用密钥Ke来与第一串相联接,生成第一共享值zx,1。类似地,通过向元素x应用伪随机排列,使用密钥Ke来与第二串相联接,生成第二共享值zx,2。随后,通过对第一共享值zx,1和第二共享值zx,2执行异或操作,来生成密钥Kx。特别要注意的是,密钥的第一共享值zx,1和第二共享值zx,2是针对S1的每一个元素生成的。此外,也可以使用用于生成两方或者甚至多方部分密钥的其它过程。
(2)使用密钥Kx,对该元素的数据db(x)进行加密,以生成加密的数据C(db(x));
(3)通过使用密钥K1,向该元素应用PRP,来生成用于该元素的标识符idx;以及
(4)通过向该元素应用密钥Kl和PRP,来生成用于该元素的标签lx
如方框306中所示,第一方P1向第三方发送针对每一个元素的三元组的集合,其包括标识符idx、密钥的第一共享值zx,1和标签lx。在发送该三元组之前,可以对该三元组的顺序进行随机地打乱。此外,第一方P1还向P2发送针对每一个元素的三元组的集合,其包括标识符idx、密钥的第二共享值zx,1和加密的数据C(db(x)),如方框308中所示。在向P2发送该三元组之前,也可以对该三元组进行随机地打乱。
第二方P2通过使用密钥Kl和PRP对P2的集合S2中的元素进行排列组合,生成用于这些元素的标签,并向非信任的第三方发送用于集合S2中的每一个元素的标签(参见方框310)。
第三方对于从P1接收的标签集合和从P2接收的标签集合进行比较,以发现P1和P2的排列后的标签的交集I,向P2发送其从P1接收的所有三元组,其具有位于该交集之内的标签(方框312)。随后,P2可以使用双方共享密钥中的两个共享值,对P2从P1接收的三元组进行解密,其中该三元组包括对于P1和P2在集合S1和S2的交集处持有的元素的P1的加密的数据C(db(x))。
每一个Pi调用该PRP达到|Si|次,而服务器(在一个实施例中)只执行“纯文本”集合交集运算,不执行密码操作。但是,该技术可以使用现有算法中的任何一种来进行集合交集运算。在本技术的一个实施例中,使用以几乎线性时间运行的民俗(folklore)哈希表插入/查找。
可以异步地执行该协议,其中每一个参与方在不同的时间进行连接,以向服务器提交他的消息,并稍后获得该输出。
1.4服务器-客户端处理
如前面所提及的,虽然这些协议的描述指代持有数据集的参与方(例如,第一方和第二方)和计算这些数据集的交集的第三方,但本领域普通技术人员应当理解,所提及的参与方可以以服务器-客户端设置方式进行操作。针对所描述的协议的参与方不被指代成服务器,或者非信任的第三方可以因此称为客户端。此外,术语第三方、非信任的第三方和服务器也可以互换地使用。下面的部分围绕客户端和服务器侧处理,来描述图3中所述的协议。应当注意的是,服务器可以实际是在计算云中工作的一个以上的服务器或者计算实体。同样,虽然本描述部分涉及第一和第二客户端,但可以有更多的客户端使用服务器来传送关于它们的集合的数据。
1.4.1客户端侧处理
图4描述了一种计算机实现的处理400,其示出了关于图3中所述的协议的第一客户端的处理。在客户端处理步骤期间的主要操作是应用PRP来生成标签,并在传送之前应用随机排列来随机地打乱该数据。存在用于应用PRP来生成这些标签的多种可能。例如,在本技术的一个实施例中,使用高级加密标准(AES)来实例化该随机排列(例如,以计数器(CTR)模式,比如当这些元素大于128比特时)。但是,也可以使用任何其它分组加密方式。
参见图4,如方框402中所示,第一客户端P1生成第一密钥Ke、第二密钥Kl和第三密钥K1;向第二客户端P2发送第二密钥Kl
如方框404中所示,针对P1的集合S1中的每一个元素:
(1)使用Ke,生成双方共享密钥Kx。该双方共享密钥Kx包括第一共享值zx,1和第二共享值zx,2
(2)使用密钥Kx,对该元素的数据db(x)进行加密,以生成加密的数据C(db(x))。
(3)生成用于与该元素相关联的数据db(x)的标识符idx;以及
(4)通过向该元素应用密钥Kl和随机PRP,来生成用于该元素的标签lx
如方框406中所示,第一客户端P1向服务器发送针对每一个元素的三元组的集合,其包括标识符idx、密钥的第一共享值zx,1和标签lx。第一客户端P1向P2发送针对每一个元素的三元组的集合,其包括标识符idx、密钥的第二共享值zx,1和加密的数据C(db(x)),如方框408中所示。在向P2发送这些三元组之前,可以对二者的这些实例中的三元组进行随机地打乱。
图5提供了只描述图3中所讨论的协议的第二客户端的处理的计算机实现的处理500的流程图。如方框502中所示,第二客户端P2接收密钥Kl。此外,客户端P2还接收针对每一个元素的三元组的集合,其包括:标识符idx、密钥的第二共享值zx,1和加密的数据C(db(x)),如方框504中所示。第二客户端P2通过使用密钥Kl和PRP来对P2的集合S2中的元素进行排列,生成针对这些元素的标签,并向服务器发送针对集合S2中的每一个元素的这些标签,如方框506中所示。P2接收具有在所述交集之内的标签的P1的所有三元组(方框508)。随后,P2可以使用双方共享密钥中的两个共享值,对P2从P1接收的三元组进行解密,其中该三元组包括对于P1和P2在集合S1和S2的交集处持有的元素的P1的加密的数据C(db(x))。
1.4.2服务器侧处理
图6提供了用于只描述图3中所示出的服务器(例如,第三方)处理600的流程图。该服务器的功能之一是使用标签来计算参与方的交集。在本技术的一个实施例中,执行关于这些标签的简单文本交集运算,以便确定这些客户端共同具有哪些数据元素。这不涉及在服务器(例如,非信任的第三方)的部分上进行密码操作。在本技术的另一个实施例中,用于计算集合交集的琐碎的两两比较方法具有二次复杂度,不能扩展到较大的集合。因此,在本技术的一个实施例中,实现基于哈希表的民俗集合交集算法。在该实施例中,服务器将第一集合的元素散列到哈希表中,随后尝试在相同的表中查找第二集合中的元素。将成功查到的任何元素添加到该交集中。随后,服务器输出布尔向量,其指示第二集合中的哪些元素位于交集之中,哪些元素没有位于该交集之中。
返回到参见图6,如方框602中所示,服务器从第一客户端P1接收针对每一个元素的三元组的集合,其包括:标识符idx、密钥的第一共享值zx,1和标签lx。服务器从第二方P2接收针对集合S2中的每一个元素的标签(参见方框604)。
服务器对于从P1接收的标签集合和从P2接收的标签集合进行比较,以发现P1和P2的排列后的标签的交集I(方框606),向P2发送其从P1接收的具有位于该交集之内的标签的所有三元组(方框608)。如上所述,可以利用多种方式(如,通过关于这些标签计算纯文本交集),来发现这些标签的交集。
1.5用于实现本技术的示例性架构
提供了用于实现本技术的示例性处理,下一部分提供用于实现本技术的示例性架构。
图7示出了一种示例性系统700的概述,该系统700包括服务器模块702,以代表一个或多个客户端模块来处理任务。在该例子中,图7示出了两个客户端模块,即,客户端模块P1704和客户端模块P2706。但是,服务器模块702可以向任意数量的参与者模块(其包括一个参与者模块或者两个以上的参与者模块)提供服务。
服务器模块702可以表示任何类型的计算功能。在一种情况下,其对应于包括处理功能、输入功能、输出功能、存储功能等等的计算机服务器。在一种场景中,服务器模块702可以表示云计算系统中的处理资源,例如,用于提供云计算服务的数据中心。服务器模块702可以表示在单一位置提供的单一资源,或者分布在多个位置的分布式资源。例如,服务器模块702可以对应于单一物理机器;或者,服务器模块702可以表示用于以任何方式来映射到相应的底层计算硬件的虚拟服务器。
每一个客户端模块704、706可以同样地表示包括处理功能、输入功能、输出功能、存储功能等等的任何类型的功能。在示例性的具体例子中,任何客户端模块可以对应于静止的个人计算设备、膝上型计算机或上网本计算设备、个人数字助理(PDA)计算设备、手写笔式计算设备、移动电话设备、游戏控制台、机顶盒等等。
服务器模块702经由任何类型的网络708,连接到客户端模块P1704和客户端模块P2706。网络708可以表示任何类型的点对点或多点耦合机制。在一种实现中,网络708可以对应于广域网(例如,互联网)、局域网或者其组合。网络708可以包括无线链路、有线链路、路由器、网关等等的任意组合,如通过任何协议或者协议组合来控制的。服务器模块702可以表示与参与者模块中的任何一个有关的远程或本地资源。
在本技术的一种实现中,使用图7中的架构700,客户端704、706中的每一个使用共享的密钥,向它们的数据集中的元素应用共享的伪随机排列(PRP),以生成它们的集合中的元素的标签,并向服务器702发送这些标签。此外,第一客户端704还生成:用于第一方的集合中的元素的每一个元素的标识符;用于第一方的集合中的元素的每一个元素的多方共享密钥(例如,其可以是双方共享密钥);使用该多方共享密钥的与第一客户端的集合中的元素的每一个元素相关联的加密数据。第一客户端向其它参与方发送第一客户端的集合中的所有元素的加密数据,以及该多方共享密钥的一部分和用于第一客户端的集合中的每一个元素的标识符。第一客户端向服务器发送该多方共享密钥的剩余部分和用于每一个元素的标识符。每一个客户端704、706针对于交集中的每一个元素,从服务器702接收用于这些数据元素的交集的标签、标识符和该多方共享密钥的剩余部分。随后,每一个客户端704、706可以针对集合的交集中的每一个元素,使用用于每个元素的标签、标识符和多方共享密钥的所有部分,对每一个元素的加密的相关联数据进行解密。
1.6用于实现本技术的示例性数据流图
图8描述了用于使用非信任的第三方812,传输与两个参与方P1808和P2810所持有的两个数据集合S1804和S2806的交集中的数据的元素相关联的一些信息db(x)802,而无需任意一个参与方P1或P2暴露它们的集合中的数据的数据流图800。第一方P1808生成第一密钥Ke812、第二密钥Kl814和第三密钥K1816,并向第二方P2810发送第二密钥Kl814。针对P1的集合S1中的每一个元素:(1)使用Ke812,生成双方共享密钥Kx。该双方共享密钥Kx包括第一共享值zx,1822a和第二共享值zx,2822b;(2)使用密钥Kx,对该元素的数据db(x)802进行加密,以生成加密的数据C(db(x))820;(3)生成用于该元素的标识符idx824;以及(4)通过向该元素应用密钥Kl814和PRP,来生成用于该元素的标签lx826。第一方P1808向第三方812发送针对每一个元素的一组随机打乱的三元组,其包括标识符idx824、密钥的第一共享值zx,1822a和标签lx826。第一方P1808向P2810发送针对每一个元素的三元组的集合,其包括标识符idx824、密钥的第二共享值zx,1822b和加密的数据C(db(x))820。第二方P2810通过使用密钥Kl814和PRP来对P2的集合S2806中的元素进行排列,生成针对这些元素的标签828,并向非信任的第三方发送针对集合S2806中的每一个元素的这些标签828。第三方812对于从P1接收的标签集合826和从P2810接收的标签集合828进行比较,以发现P1和P2的排列后的标签的交集I832,向P2810发送其从P1808接收的具有位于该交集I832之内的标签的所有三元组。随后,P2810可以对P2从P1808接收的三元组进行解密,其中该三元组包括对于P1和P2在集合S1和S2的交集I832处持有的元素的P1的加密的数据C(db(x))820。
2.0示例性应用
服务器辅助的具有数据传输的私有集交集技术可以应用于很多现实世界的应用,例如,关于病人的医疗数据传输、验证飞机上的乘客是否位于禁飞名单之中,或者用于在线应用的一些而不是所有用户数据的传输。下面将简短地描述这些应用,但存在可以有利地使用服务器辅助的具有数据传输的私有集交集技术的很多很多其它应用。
2.1医疗数据的传送
存在着一个医院不想向另一个医院或服务器泄露关于各个病人的病历的很多场景。例如,在两个医院治疗相同病人中的一些的场景中,可能期望从一个医院向另一个医院传送关于两个医院均治疗的病人的病人数据。在该情况下,可以使用服务器辅助的具有数据传输的私有集交集技术来传输关于两个医院均治疗的病人的病人数据,以便每一个医院具有这些病人的医疗历史的病历的完整记录。
2.2安排的乘客是否在禁飞名单上的确定
此外,还存在航空公司不想向政府机构或其它国家泄露关于它们的飞机上的乘客的细节的很多场景。例如,航空公司可能不想向政府机构或外国泄露它们的全部乘客名单,以用于该政府机构或外国判断是否有任何一个乘客位于禁飞名单上。在该情况下,可以使用服务器辅助的具有数据传输的私有集交集技术来确定飞机上的哪个预定的乘客在禁飞名单上,而无需暴露关于其它预定的乘客的数据。
2.3用于在线或云应用的用户数据的共享
此外,还存在一个在线服务或应用(例如,游戏服务或应用)的一个提供商可能想要共享关于该在线服务/应用与其它在线应用或服务共同具有的用户的信息的很多场景。在该情况下,可能不想提供关于所有其用户的信息。在该情况下,可以使用服务器辅助的具有数据传输的私有集交集技术来提供关于两个在线服务/应用共同具有的用户的信息,而不会暴露关于其它用户的数据。
3.0示例性操作环境:
本文描述的服务器辅助的具有数据传输的私有集交集技术,可操作在众多类型的通用或特殊用途计算系统环境或配置之中。图9示出了可以实现如本文所描述的服务器辅助的具有数据传输的私有集交集技术的各种实施例和元素的通用计算机系统的简化例子。应当注意的是,在图9中通过断线或虚线来表示的任何框,表示该简化计算设备的替代实施例,这些替代实施例中的任何一个或全部(如下面所描述的)可以结合贯穿本文档所描述的其它替代实施例来使用。
例如,图9示出了用于示出简化计算设备900的通用系统图。通常,该计算设备可以在具有至少一些最小计算能力的设备中发现,其包括但不限于:个人计算机、服务器计算机、手持型计算设备、膝上型计算机或移动计算机、诸如蜂窝电话和PDA之类的通信设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子、网络PC、微型计算机、大型计算机、音频或视频媒体播放器等等。
为了允许设备实现服务器辅助的具有数据传输的私有集交集技术,该设备应当具有足够的计算能力和系统存储器来实现基本的计算操作。具体而言,如图9中所示,该计算能力通常通过一个或多个处理单元910来示出,其还可以包括一个或多个GPU915,任意一个或二者均与系统存储器920进行通信。应当注意,该通用计算设备的处理单元910可以是专用微处理器(例如,DSP、VLIW)或者其它微控制器,或者可以是具有一个或多个处理内核的传统CPU(其包括多核CPU中的基于专用GPU的内核)。当在专用设备中使用诸如服务器辅助的具有数据传输的私有集交集技术时,例如,可以将该计算设备实现成ASIC或FPGA。
此外,图9的简化计算设备还可以包括其它部件(例如,通信接口930)。图9的简化计算设备还可以包括一个或多个常规的计算机输入设备940(例如,指向设备、键盘、音频和语音输入设备、视频输入设备、触觉输入设备、用于接收有线或无线数据传输的设备等等)。图9的简化计算设备还可以包括其它可选的部件,例如,一个或多个常规的计算机输出设备950(例如,显示设备955、音频输出设备、视频输出设备、用于发送有线或无线数据传输的设备等等)。应当注意,用于通用计算机的典型通信接口930、输入设备940、输出设备950和存储设备960是本领域普通技术人员所公知的,故本文没有详细地描述。
此外,图9的简化计算设备还可以包括各种各样的计算机可读介质。计算机可读介质可以是计算机900能够经由存储设备960来访问的任何可用介质,其包括可移动970和/或不可移动980的易失性和非易失性介质,用于存储诸如计算机可读指令或计算机可执行指令、数据结构、程序模块或其它数据之类的信息。计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质指代有形的计算机或机器可读介质或存储设备,比如DVD、CD、软盘、磁带驱动器、硬盘驱动器、光盘驱动器、固态存储器设备、RAM、ROM、EEPROM、闪存或其它存储器技术、盒式磁带、磁带、磁盘存储或者其它磁存储设备、或者能够用于存储期望的信息并可以由一个或多个计算设备进行访问的任何其它设备。
此外,诸如计算机可读指令或计算机可执行指令、数据结构、程序模块等等的信息的存储,还可以通过使用用于对一个或多个调制的数据信号或载波波形进行编码的多种前述的通信介质中的任意一种、或者其它传输机制或通信协议来实现,并包括任何有线或无线信息传送机制。应当注意,术语“调制的数据信号”或“载波波形”通常指代对信号中的信息进行编码,以某种方式来设置或改变其特性中的一个或多个的信号。例如,通信介质包括有线介质(例如,携带一个或多个调制的数据信号的有线网络或者直接有线连接)和无线介质(例如,声波、RF、红外线、激光和用于发送和/或接收一个或多个调制的数据信号或载波波形的其它无线介质)。上述的任意组合也应当包括在通信介质的范围之内。
此外,体现本文所描述的服务器辅助的具有数据传输的私有集交集技术或者其一部分的各种实施例中的一些或全部的软件、程序和/或计算机程序产品,可以以计算机可执行指令或者其它数据结构的形式,在计算机或机器可读介质或存储设备和通信介质的任何期望的组合中进行存储、接收、发送或读取。
最后,本文所描述的服务器辅助的具有数据传输的私有集交集技术还可以在计算机可执行指令的通常背景下(例如,由计算设备执行的程序模块)进行描述。通常,程序模块包括用于执行特定任务或实现特定的抽象数据类型的例行程序、程序、对象、组件、数据结构等等。本文所描述的实施例还可以在分布式计算环境下实现,此时,任务由一个或多个远程处理设备来执行,或者位于通过一个或多个通信网络来链接的一个或多个设备的云之中。在分布式计算环境下,程序模块可以位于包括介质存储设备的本地和远程计算机存储介质。另外,前述的指令可以部分地或者整体地实现成硬件逻辑电路,该硬件逻辑电路可以包括处理器,也可以不包括处理器。
此外,还应当注意的是,本文所描述的前述替代实施例中的任何一个或全部可以以任何期望的组合方式来使用,以形成另外的混合实施例。虽然以特定于结构特征和/或方法动作的语言来描述本发明,但应当理解的是,所附权利要求书中规定的主题并不需要限于上面所描述的特定特征或动作。上面所描述的特定特征和动作只是公开成用于实现本发明的示例性形式。

Claims (10)

1.一种用于使用第三方向第二方传输与第一方持有的数据集合中的元素相关联的一些信息,而无需暴露所述数据集合的计算机实现的处理,包括:
针对集合S1中的每一个元素,从第一方接收:用于每一个元素的标签、用于所述元素的标识符、以及双方共享密钥中的第一共享值;
从第二方接收针对集合S2中的元素生成的标签;
计算所述集合S1和所述集合S2的所述标签的交集;
针对所述标签的所述交集中的每一个元素,向所述第二方发送:所述标签、用于所述元素的所述标识符和所述双方共享密钥中的第二共享值。
2.根据权利要求1所述的计算机实现的处理,其中,所述第一方生成用于集合S1中的每一个元素的三元组,其包括:
用于所述元素的标签,
用于所述元素的标识符,以及
用于使用所述双方共享密钥来加密的与所述元素相关联的所述数据的加密形式。
3.根据权利要求1所述的计算机实现的处理,其中,所述第一方针对所述集合S1中的每一个元素,向所述第二方发送:用于每一个元素的所述标识符、与每一个元素相关联的加密的数据、以及所述双方共享密钥中的所述第二共享值。
4.根据权利要求1所述的计算机实现的处理,还包括:
所述第二方使用所述标识符以及所述双方共享密钥中的所述第一共享值和所述第二共享值,对与所述集合的所述交集中的每一个元素相关联的数据进行解密。
5.根据权利要求1所述的计算机实现的处理,其中,所述第一方和所述第二方通过使用共享密钥向它们的数据集合中的所述元素应用共享的伪随机排列(PRP),来生成用于它们的集合的标签。
6.根据权利要求1所述的计算机实现的处理,其中,所述第一方使用另一个安全密钥来生成安全的所述双方共享密钥。
7.根据权利要求1所述的计算机实现的处理,其中,所述第三方是非信任的第三方。
8.根据权利要求4所述的计算机实现的处理,其中,所述第一方和所述第二方是客户端,并且所述第三方是计算云中的一个或多个服务器。
9.根据权利要求1所述的计算机实现的处理,其中,所述第三方对所述标签执行纯文本集合交集。
10.一种用于使用非信任的第三方,传输与两方P1和P2持有的两个数据集S1和S2的交集中的数据的元素相关联的一些信息db(x),而无需任意一方P1或P2暴露它们的集合中的所述数据的计算机实现的处理,包括:
第一方P1生成第一密钥Ke、第二密钥Kl和第三密钥K1,并向所述第二方P2发送所述第二密钥Kl
针对P1的集合S1中的每一个元素:
使用Ke,生成包括第一共享值zx,1和第二共享值zx,2的双方共享密钥Kx
使用密钥Kx,对与所述元素相关联的数据db(x)进行加密,
生成用于所述元素的标识符idx
通过使用所述密钥Kl向所述元素应用伪随机排列,来生成用于所述元素的标签lx
所述第一方P1针对集合S1中的每一个元素,向所述非信任的第三方发送包括以下各项的三元组的集合:所述标识符idx、所述密钥的第一共享值zx,1和所述标签lx
所述第一方P1针对每一个元素,向所述第二方P2发送包括以下各项的三元组的集合:所述标识符idx、所述密钥的第二共享值zx,1和所述加密的数据C(db(x));
所述第二方P2通过使用密钥Kl向P2的集合S2中的元素应用排列,生成用于所述元素的标签,并向所述非信任的第三方发送用于集合S2中的每一个元素的所述标签;
所述非信任的第三方对从P1接收的标签集合和从P2接收的标签集合进行比较,以发现P1和P2的所述标签的所述交集;以及
所述非信任的第三方向P2发送所述第三方从P1接收的具有在所述交集之内的标签的所有三元组。
CN201480065089.8A 2013-11-27 2014-11-18 利用服务器辅助的私有集交集(psi)的方法 Active CN105794145B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/091,810 US9158925B2 (en) 2013-11-27 2013-11-27 Server-aided private set intersection (PSI) with data transfer
US14/091,810 2013-11-27
PCT/US2014/066023 WO2015080896A1 (en) 2013-11-27 2014-11-18 Server-aided private set intersection (psi) with data transfer

Publications (2)

Publication Number Publication Date
CN105794145A true CN105794145A (zh) 2016-07-20
CN105794145B CN105794145B (zh) 2019-03-26

Family

ID=52021432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480065089.8A Active CN105794145B (zh) 2013-11-27 2014-11-18 利用服务器辅助的私有集交集(psi)的方法

Country Status (5)

Country Link
US (1) US9158925B2 (zh)
EP (1) EP3075098B1 (zh)
CN (1) CN105794145B (zh)
ES (1) ES2626533T3 (zh)
WO (1) WO2015080896A1 (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109657489A (zh) * 2018-08-03 2019-04-19 湖北工业大学 一种隐私保护的集合交集两方安全计算方法及系统
CN109891424A (zh) * 2017-01-30 2019-06-14 谷歌有限责任公司 在不披露特定识别信息的情况下建立标识符之间的链接
CN110266721A (zh) * 2019-07-05 2019-09-20 西南交通大学 一种基于同态的云辅助动态通用安全多方计算方法
CN110399741A (zh) * 2019-07-29 2019-11-01 深圳前海微众银行股份有限公司 数据对齐方法、设备及计算机可读存储介质
CN110719159A (zh) * 2019-09-24 2020-01-21 河南师范大学 抗恶意敌手的多方隐私集合交集方法
CN111552978A (zh) * 2020-04-21 2020-08-18 杭州趣链科技有限公司 基于DH加密和Hash表的隐私保护集合求交集方法
CN111611618A (zh) * 2017-10-31 2020-09-01 阿里巴巴集团控股有限公司 一种数据统计方法和装置
WO2020172883A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 多客户端多服务器联合生成密钥的方法和电子设备
WO2020172882A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 择一客户端为多客户端多服务器生成密钥的方法和设备
WO2020172889A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 客户端各自生成密钥分量的密钥管理方法和电子设备
WO2020172884A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 服务器各自生成密钥分量的密钥管理方法、电子设备
CN111726225A (zh) * 2020-06-10 2020-09-29 暨南大学 一种基于秘密共享的外包隐私保护交集计算方法
CN111914279A (zh) * 2020-08-13 2020-11-10 深圳市洞见智慧科技有限公司 一种高效准确的隐私求交系统、方法及装置
US10885203B2 (en) 2019-08-01 2021-01-05 Advanced New Technologies Co., Ltd. Encrypted data exchange
CN112312313A (zh) * 2020-09-10 2021-02-02 神州融安科技(北京)有限公司 一种基于psi的地理区域进入判断方法、装置及系统
WO2021017420A1 (zh) * 2019-08-01 2021-02-04 创新先进技术有限公司 数据处理方法、装置和电子设备
CN112434329A (zh) * 2020-10-23 2021-03-02 上海点融信息科技有限责任公司 私有数据交集获取方法、计算设备、存储介质
CN112632608A (zh) * 2020-12-23 2021-04-09 上海同态信息科技有限责任公司 一种基于数值计算隐私数据协同处理方法
CN113312641A (zh) * 2021-06-02 2021-08-27 杭州趣链科技有限公司 多点多方的数据交互方法、系统、电子装置和存储介质
CN116941219A (zh) * 2021-01-12 2023-10-24 维萨国际服务协会 使用数据储存库与多方进行隐私集合求交(psi)技术

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6009697B2 (ja) * 2014-01-17 2016-10-19 日本電信電話株式会社 秘密計算方法、秘密計算システム、ソート装置及びプログラム
US9503432B2 (en) * 2014-04-04 2016-11-22 Privacy Analytics Inc. Secure linkage of databases
US9817977B2 (en) * 2014-04-04 2017-11-14 Palo Alto Research Center Incorporated Methods for selection of collaborators for online threat mitigation
US10142296B2 (en) * 2015-07-24 2018-11-27 Google Llc Systems and methods for improving precision of a location sensor
US9716697B2 (en) * 2015-07-24 2017-07-25 Google Inc. Generating bridge match identifiers for linking identifiers from server logs
US9830463B2 (en) * 2016-01-22 2017-11-28 Google Llc Systems and methods for detecting sensitive information leakage while preserving privacy
WO2017160317A1 (en) * 2016-03-18 2017-09-21 Entit Software Llc Data objects associated with private set intersection (psi)
US20170359321A1 (en) * 2016-06-13 2017-12-14 Microsoft Technology Licensing, Llc Secure Data Exchange
US10608811B2 (en) 2017-06-15 2020-03-31 Microsoft Technology Licensing, Llc Private set intersection encryption techniques
US10509694B2 (en) 2017-06-23 2019-12-17 Microsoft Technology Licensing, Llc System and methods for optimal error detection in programmatic environments
US20200401726A1 (en) * 2017-11-20 2020-12-24 Singapore Telecommunications Limited System and method for private integration of datasets
WO2019157491A1 (en) 2018-02-12 2019-08-15 Equifax Inc. Facilitating entity resolution via secure entity resolution database
WO2019188320A1 (ja) * 2018-03-26 2019-10-03 日本電信電話株式会社 秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム
WO2019203262A1 (ja) * 2018-04-20 2019-10-24 日本電信電話株式会社 秘密集約順位システム、秘密計算装置、秘密集約順位方法、およびプログラム
CN112074890B (zh) * 2018-04-25 2024-03-22 日本电信电话株式会社 秘密聚合最大值系统和方法、秘密聚合最小值系统和方法、秘密计算装置、以及记录介质
EP3786927B1 (en) * 2018-04-26 2023-06-14 Nippon Telegraph And Telephone Corporation System, apparatus, method and program for secure aggregate median computation
US10867053B2 (en) 2018-06-26 2020-12-15 Sri International Creating software packages for performing secure computations
US11599655B1 (en) * 2018-09-21 2023-03-07 Amazon Technologies, Inc. Data sharing method
US11178117B2 (en) * 2018-12-18 2021-11-16 International Business Machines Corporation Secure multiparty detection of sensitive data using private set intersection (PSI)
CN109951443B (zh) * 2019-01-28 2021-06-04 湖北工业大学 一种云环境下隐私保护的集合交集计算方法及系统
US11239996B2 (en) 2019-12-18 2022-02-01 International Business Machines Corporation Weighted partial matching under homomorphic encryption
US11784803B2 (en) * 2020-05-26 2023-10-10 Visa International Service Association Round-efficient fully secure solitary multi-party computation with honest majority
CN111753318B (zh) * 2020-06-04 2024-04-26 上海蚂蚁创将信息技术有限公司 私有数据的多方安全计算方法、装置及系统
CN113922960B (zh) * 2020-07-08 2023-10-24 神州融安数字科技(北京)有限公司 一种基于sm2的psi获取方法、装置及系统
CN111984984B (zh) * 2020-08-28 2022-06-28 山东大学 基于集合运算的保密统计数据共享方法及系统
US11425107B2 (en) 2020-09-09 2022-08-23 Springcoin, Inc. Method and apparatus for third-party managed data transference and corroboration via tokenization
US11949778B1 (en) 2020-09-16 2024-04-02 Snap Inc. Privacy-preserving multi-touch attribution
US20230359631A1 (en) * 2020-10-08 2023-11-09 Visa International Service Association Updatable private set intersection
CN112737772B (zh) * 2020-12-25 2022-10-25 山东师范大学 私有集合交集数据的安全统计方法、终端设备及系统
US20220382908A1 (en) * 2021-05-25 2022-12-01 Meta Platforms, Inc. Private joining, analysis and sharing of information located on a plurality of information stores
US11687667B2 (en) * 2021-08-06 2023-06-27 Amazon Technologies, Inc. Privacy-preserving computing with third-party service
IL292554A (en) * 2022-04-27 2023-11-01 Google Llc Cryptographically secure and privacy-preserving matching
CN114611131B (zh) * 2022-05-10 2023-05-30 支付宝(杭州)信息技术有限公司 保护隐私的确定共有数据的方法、装置和系统
CN116522366B (zh) * 2023-06-26 2023-09-19 三未信安科技股份有限公司 一种适用于大数据的多方数据处理方法、存储介质和产品
CN117692144B (zh) * 2024-02-04 2024-05-07 确信信息股份有限公司 一种阈值条件下多方私有集合操作的隐私保护方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095453A (zh) * 2011-07-08 2013-05-08 Sap股份公司 应用私有集合交集的公钥加密的布隆过滤器
US20130227274A1 (en) * 2012-02-23 2013-08-29 Applied Communications Sciences Privacy-preserving publish-subscribe protocol in a cloud-assisted model
US20130246802A1 (en) * 2012-03-15 2013-09-19 Sap Ag Collusion-Resistant Outsourcing of Private Set Intersection

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8271796B2 (en) 2008-05-12 2012-09-18 Telecommunications Research Laboratory Apparatus for secure computation of string comparators
US8140502B2 (en) 2008-06-27 2012-03-20 Microsoft Corporation Preserving individual information privacy by providing anonymized customer data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095453A (zh) * 2011-07-08 2013-05-08 Sap股份公司 应用私有集合交集的公钥加密的布隆过滤器
US20130227274A1 (en) * 2012-02-23 2013-08-29 Applied Communications Sciences Privacy-preserving publish-subscribe protocol in a cloud-assisted model
US20130246802A1 (en) * 2012-03-15 2013-09-19 Sap Ag Collusion-Resistant Outsourcing of Private Set Intersection

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109891424B (zh) * 2017-01-30 2023-07-18 谷歌有限责任公司 在不披露特定识别信息的情况下建立标识符之间的链接
CN109891424A (zh) * 2017-01-30 2019-06-14 谷歌有限责任公司 在不披露特定识别信息的情况下建立标识符之间的链接
CN111611618B (zh) * 2017-10-31 2023-08-04 创新先进技术有限公司 一种数据统计方法和装置
CN111611618A (zh) * 2017-10-31 2020-09-01 阿里巴巴集团控股有限公司 一种数据统计方法和装置
CN109657489B (zh) * 2018-08-03 2021-09-14 湖北工业大学 一种隐私保护的集合交集两方安全计算方法及系统
CN109657489A (zh) * 2018-08-03 2019-04-19 湖北工业大学 一种隐私保护的集合交集两方安全计算方法及系统
WO2020172882A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 择一客户端为多客户端多服务器生成密钥的方法和设备
WO2020172883A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 多客户端多服务器联合生成密钥的方法和电子设备
WO2020172889A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 客户端各自生成密钥分量的密钥管理方法和电子设备
WO2020172884A1 (zh) * 2019-02-28 2020-09-03 云图有限公司 服务器各自生成密钥分量的密钥管理方法、电子设备
CN110266721B (zh) * 2019-07-05 2020-04-28 西南交通大学 一种基于同态的云辅助动态通用安全多方计算方法
CN110266721A (zh) * 2019-07-05 2019-09-20 西南交通大学 一种基于同态的云辅助动态通用安全多方计算方法
CN110399741A (zh) * 2019-07-29 2019-11-01 深圳前海微众银行股份有限公司 数据对齐方法、设备及计算机可读存储介质
US10885203B2 (en) 2019-08-01 2021-01-05 Advanced New Technologies Co., Ltd. Encrypted data exchange
WO2021017420A1 (zh) * 2019-08-01 2021-02-04 创新先进技术有限公司 数据处理方法、装置和电子设备
CN110719159A (zh) * 2019-09-24 2020-01-21 河南师范大学 抗恶意敌手的多方隐私集合交集方法
CN110719159B (zh) * 2019-09-24 2023-06-30 河南师范大学 抗恶意敌手的多方隐私集合交集方法
CN111552978B (zh) * 2020-04-21 2022-08-23 杭州趣链科技有限公司 基于DH加密和Hash表的隐私保护集合求交集方法
CN111552978A (zh) * 2020-04-21 2020-08-18 杭州趣链科技有限公司 基于DH加密和Hash表的隐私保护集合求交集方法
CN111726225A (zh) * 2020-06-10 2020-09-29 暨南大学 一种基于秘密共享的外包隐私保护交集计算方法
CN111726225B (zh) * 2020-06-10 2022-12-02 暨南大学 一种基于秘密共享的外包隐私保护交集计算方法
CN111914279A (zh) * 2020-08-13 2020-11-10 深圳市洞见智慧科技有限公司 一种高效准确的隐私求交系统、方法及装置
CN112312313B (zh) * 2020-09-10 2023-07-04 神州融安数字科技(北京)有限公司 一种基于psi的地理区域进入判断方法、装置及系统
CN112312313A (zh) * 2020-09-10 2021-02-02 神州融安科技(北京)有限公司 一种基于psi的地理区域进入判断方法、装置及系统
CN112434329A (zh) * 2020-10-23 2021-03-02 上海点融信息科技有限责任公司 私有数据交集获取方法、计算设备、存储介质
CN112632608A (zh) * 2020-12-23 2021-04-09 上海同态信息科技有限责任公司 一种基于数值计算隐私数据协同处理方法
CN116941219A (zh) * 2021-01-12 2023-10-24 维萨国际服务协会 使用数据储存库与多方进行隐私集合求交(psi)技术
CN113312641A (zh) * 2021-06-02 2021-08-27 杭州趣链科技有限公司 多点多方的数据交互方法、系统、电子装置和存储介质

Also Published As

Publication number Publication date
EP3075098A1 (en) 2016-10-05
ES2626533T3 (es) 2017-07-25
WO2015080896A1 (en) 2015-06-04
US20150149763A1 (en) 2015-05-28
US9158925B2 (en) 2015-10-13
CN105794145B (zh) 2019-03-26
EP3075098B1 (en) 2017-03-01

Similar Documents

Publication Publication Date Title
CN105794145A (zh) 服务器辅助的具有数据传输的私有集交集(psi)
US20150169899A1 (en) Storing user data in a service provider cloud without exposing user-specific secrets to the service provider
Zuo et al. BCAS: A blockchain-based ciphertext-policy attribute-based encryption scheme for cloud data security sharing
CN112287377A (zh) 基于联邦学习的模型训练方法、计算机设备及存储介质
CN101569132A (zh) 用于分发数据和保护数据安全的系统和方法
Liu et al. New provable data transfer from provable data possession and deletion for secure cloud storage
Ban et al. Fine-grained support of security services for resource constrained internet of things
US20210281406A1 (en) Cryptographic security system, method, and program product using data partitioning
US20210279341A1 (en) Cryptographic security system, method, and program product using data partitioning
JP2022020067A (ja) デジタル署名方法、署名情報の検証方法、関連装置及び電子機器
CN114051031B (zh) 基于分布式身份的加密通讯方法、系统、设备及存储介质
Chen et al. A complete key management scheme for LoRaWAN v1. 1
CN116527279A (zh) 工控网络中安全数据聚合的可验证联邦学习装置及方法
Yang et al. Assure deletion supporting dynamic insertion for outsourced data in cloud computing
CN108667820A (zh) 共享电子白板加密方法、系统、电子设备、存储介质
Gowda et al. BPCPR-FC: blockchain-based privacy preservation with confidentiality using proxy reencryption and ring signature in fog computing environments
Goel et al. LEOBAT: Lightweight encryption and OTP based authentication technique for securing IoT networks
CN107104938A (zh) 建立安全的数据交换通道
Elemam et al. Formal verification for a PMQTT protocol
CN114143312A (zh) 基于区块链的边缘计算终端认证方法、系统及设备
Gan et al. An encrypted medical blockchain data search method with access control mechanism
Wei et al. An authentication and key agreement mechanism for OPC Unified Architecture in industrial Internet of Things
CN103916372A (zh) 一种第三方登录信息托管方法和系统
CN113536348A (zh) 一种链接加密处理方法、链接解密处理方法、装置和计算机设备
Ganorkar et al. An information security scheme for cloud based environment using 3DES encryption algorithm

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant