CN109525386A - 一种基于Paillier同态加密私有交集和的方法 - Google Patents

一种基于Paillier同态加密私有交集和的方法 Download PDF

Info

Publication number
CN109525386A
CN109525386A CN201811442107.6A CN201811442107A CN109525386A CN 109525386 A CN109525386 A CN 109525386A CN 201811442107 A CN201811442107 A CN 201811442107A CN 109525386 A CN109525386 A CN 109525386A
Authority
CN
China
Prior art keywords
intersection
user
sides
ciphertext
cipher
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
CN201811442107.6A
Other languages
English (en)
Other versions
CN109525386B (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.)
Northeastern University China
Original Assignee
Northeastern University China
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 Northeastern University China filed Critical Northeastern University China
Priority to CN201811442107.6A priority Critical patent/CN109525386B/zh
Publication of CN109525386A publication Critical patent/CN109525386A/zh
Application granted granted Critical
Publication of CN109525386B publication Critical patent/CN109525386B/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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供一种基于Paillier同态加密私有交集和的方法,涉及网络空间安全与隐私保护技术领域。包括基于Paillier同态加密的私有交集和的协议以及反向私有交集和的协议,在私有交集和的协议中,双方协商关于加密私有交集和的基础设置并经过三轮加密,最终2方使用私钥解密求得交集和,在反向私有交集和的协议中,双方协商关于加密反向私有交集和的基础设置并经过两轮加密,然后2方使用私钥解密出带有扰乱因子的交集和并判断交集基数大小是否能够进入第三轮解密,若满足条件则1方除去扰乱因子求得交集和。本方法利用模运算的性质提出密文分割方案,具有较高的效率,且协议双方能够准确计算交集的基数和交集和,避免了习惯思维两两计算可能导致的信息泄露。

Description

一种基于Paillier同态加密私有交集和的方法
技术领域
本发明涉及网络空间安全与隐私保护技术领域,具体涉及一种基于Paillier同态加密私有交集和的方法。
背景技术
近年来,数据呈现出***式增长的趋势,数据量和数据种类变得越来越复杂,大量有价值的客户信息、个人的隐私记录、企业的运营数据不断被挖掘。在这个数据爆发的时代,大数据下的隐私保护问题就显得尤为重要。
隐私集合交集(Private Set Intersection,PSI)是安全多方计算的一个重要协议。参与计算两方或多方的输入数据集,但只能得到交集的结果,得不到交集之外的任何信息。相关协议只允许这几方了解交集的特定属性,例如交集的基数或是交集的大小是否超过某些阈值。在以前的工作中已经提出了各种方法,包括使用半诚实模型以及恶意模型的协议。
发明内容
针对现有技术存在的问题,本发明提供一种基于Paillier同态加密私有交集和的方法,包括基于Paillier同态加密私有交集和的协议以及基于Paillier同态加密反向私有交集和的协议,在上述两个协议中存在两个参与方——1方和2方,其中,“私有交集和协议”是在双方均持有含有用户标识符的私有输入数据集,且其中一方的数据集还额外含有与每个用户标识符有关的整数值,双方都想了解交集的基数以及和交集相关整数值的和的基础上,不允许双方知道交集的实际用户标识符或者另一方数据的附加信息(除了交集的大小),即用户的隐私信息,通过“私有交集和协议”得到的结果是1方只能够得到交集的基数,而2方只能够得到交集和;而“反向私有交集和协议”则是通过若发现交集太小就在获得交集和之前终止通信的方式,确保交集元素数量的最小值,从而保护了用户的隐私信息,通过“反向私有交集和协议”得到的结果是双方都能够得到交集的基数,而只有1方能够得到交集和。
为了实现上述目的,一种基于Paillier同态加密私有交集和的方法,包括基于Paillier同态加密私有交集和的协议以及基于Paillier同态加密反向私有交集和的协议;
(1)基于Paillier同态加密私有交集和的协议,包括以下步骤:
步骤1:双方协商关于加密私有交集和的基础设置,具体步骤如下:
步骤1.1:双方协商设置安全参数λ、群G∈G(λ)、用户标识符空间U=U(λ)以及随机预言机RO:U→G,其中,随机预言机RO将用户标识符映射到群G的随机元素中;
步骤1.2:1方持有m个用户标识符的输入集合U1={ui}i∈[m],其中,1方的第i个用户ui∈U;
步骤1.3:2方持有n个用户标识符和与之预期配对的相关整数值的集合{(vj,tj)}j∈[n],其中,2方的第j个用户vj∈U且与之预期配对的相关整数值ti∈Z+,Z+为正整数,使私有交集和∑tj适合安全参数λ的Paillier消息空间,并定义U2={vj}j∈[n]
步骤1.4:每一方a在群G中选取一个随机的秘密指数ka
步骤1.5:2方使用Pailler加密方案中的Pai.Gen(λ)函数产生一个新的密钥对(pk,sk),并将公钥pk分享给1方;
步骤2:1方加密自己的用户标识符集合U1并乱序发给2方,具体步骤如下:
步骤2.1:1方将自己用户标识符集合里的每个用户ui应用于随机预言机RO,然后使用密钥k1第一次加密,得到经1方加密后的1方用户密文
步骤2.2:1方将加密后的用户密文cipheru1构成的集合乱序发给2方;
步骤3:2方加密1方发来的用户数据以及自己的用户标识符集合U2并乱序发给1方,具体步骤如下:
步骤3.1:2方使用密钥k2对接收到的每个经1方加密后的1方用户密文元素进行二次加密,得到双方共同对1方用户加密后的密文
步骤3.2:2方将双方共同对1方用户加密后的密文cipheru12构成的集合乱序发给1方;
步骤3.3:2方使用密钥k2对将输入集合元素(vj,tj)对中每个用户标识符vj应用于随机预言机RO映射后的元素进行加密,再使用Paillier公钥pk对输入集合元素(vj,tj)对中与每个用户标识符vj预期配对的相关整数值tj进行加密,得到经2方加密后的2方用户密文和经2方加密后的2方用户配对的整数值的密文ciphert2=Pai(tj)对;
步骤3.4:2方将加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合乱序发给1方;
步骤4:1方加密2方发来的数据并求得cipherv12与cipheru12的交集H,再根据集合H得到与交集配对的整数值和的密文Pai(SH)并发送给2方,具体步骤如下:
步骤4.1:1方使用密钥k1对接收到的经2方加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合中的每个元素进行二次加密,得到双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文ciphert2
步骤4.2:1方计算cipherv12与cipheru12的交集H:
步骤4.3:对于集合H中的每个元素h,1方将与h配对的整数值密文ciphert2=Pai(tj)相乘,同态地得到与交集配对的整数值的和SH的密文Pai(SH):Pai(SH)=Pai(∑j∈Htj)=Pai.Sum({Pai(tj)}j∈H);
步骤4.4:1方将与交集配对的整数值的和SH的密文Pai(SH)发送给2方;
步骤5:2方使用Paillier私钥sk解密收到的Paillier加密的与交集配对的整数值的和SH的密文Pai(SH),得到与交集配对的整数值的和SH
(2)基于Paillier同态加密反向私有交集和的协议,包括以下步骤:
S1:双方协商关于加密私有交集和的基础设置,具体步骤如下:
S1.1:双方协商设置安全参数λ、群G∈G(λ)、用户标识符空间U=U(λ)以及随机预言机RO:U→G,其中,随机预言机RO将用户标识符映射到群G的随机元素中;
S1.2:1方持有m个用户标识符的输入集合U1={ui}i∈[m],其中,1方的第i个用户ui∈U;
S1.3:2方持有n个用户标识符和与之预期配对的相关整数值的集合{(vj,tj)}j∈[n],其中,2方的第j个用户vj∈U且与之预期配对的相关整数值tj∈Z+,Z+为正整数,使私有交集和∑tj适合安全参数λ的Paillier消息空间,并定义2方用户标识符的输入集合U2={vj}j∈[n]
S1.4:每一方a在群G中选取一个随机的秘密指数ka
S1.5:2方使用Pailler加密方案中的Pai.Gen(λ)函数产生一个新的密钥对(pk,sk),并将公钥pk分享给1方;
S2:2方加密自己的用户标识符集合U2并按顺序发给1方,具体步骤如下:
S2.1:2方使用密钥k2对将输入集合元素(vj,tj)对中每个用户标识符vj应用于随机预言机RO的元素进行加密,再使用Paillier公钥pk对输入集合元素(vj,tj)对中与每个用户标识符vj预期配对的相关整数值tj进行加密,得到经2方加密后的2方用户密文和经2方加密后的2方用户配对的整数值的密文ciphert2=Pai(tj)对;
S2.2:2方将加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合按顺序发给1方;
S3:1方加密2方发来的用户数据以及自己的用户标识符集合U1并按顺序发给2方,具体步骤如下:
S3.1:1方使用密钥k1对接收到的经2方加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合中的每个元素进行二次加密,得到双方共同对2方用户加密后的密文并且在Paillier模数N下,随机地选取映射(j→rj),其中,rj∈Z+,通过Pai(tj+rj)=Pai(tj)×Pai(rj)同态地对接收到的每个元素中与用户标识符vj预期配对的相关整数值tj进行一次性填充加密,最终得到双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文经填充的ciphertr2
S3.2:1方保存映射(j→rj)并将双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文经填充的ciphertr2对构成的集合按顺序发给2方;
S3.3:1方使用密钥k1对将输入集合1中的用户ui应用于随机预言机RO映射后的元素进行加密,得到经1方加密后的1方用户密文
S3.4:1方将加密后的用户密文cipheru1构成的集合乱序发给2方;
S4:2方加密1方发来的数据并求得cipherv12与cipheru12交集下标集合J,再对下标集合J进行填充加密得到与交集配对的整数值的和SJr并发送给1方,具体步骤如下:
S4.1:2方使用密钥k2对接收到的每个经1方加密后的1方用户密文进行二次加密,得到双方共同对1方用户加密后的密文
S4.2:2方计算cipherv12与cipheru12交集的下标集合J:
S4.3:判断交集基数是否小于设定阈值,若是,则2方终止协议,若否,则继续S4.4;
S4.4:2方将下标集合J中下标对应的所有元素Pai(tj+rj)相乘,再使用私钥sk解密,得到带一次性填充加密的与交集配对的整数值的和SJr=∑j∈Jtj+rj
S4.5:2方将加密的与交集配对的整数值的和SJr以及下标集合J发送给1方;
S5:1方计算与交集配对的整数值的和
本发明的有益效果:
本发明提出一种基于Paillier同态加密私有交集和的方法,研究并采用了基于Paillier同态加密的算法,利用模运算的性质提出密文分割方案,将明文分割后加密,具有较高的效率且无需解密即可得到明文加密后的结果。通过本方法提供的基于Paillier同态加密私有交集和的协议以及基于Paillier同态加密反向私有交集和的协议,协议双方能够准确的计算交集的基数和交集和,避免了习惯思维两两计算可能导致的信息泄露,在反向私有交集和协议中,若发现集合基数过小,为防止交集和被某一方获取到,从而推断出某些用户的隐私信息,导致用户隐私的泄露,采用终止协议的方式,有效防止隐私的泄露问题,且在采用基于Paillier同态加密的过程中,其中一方随机选取映射对加密过的用户id相关整数值进行盲化处理,在求得交集和之前,再根据映射除去盲因子,大大提高了协议的安全性。
附图说明
图1为本发明实施例中私有交集和协议架构图;
图2为本发明实施例中私有交集和协议时序图;
图3为本发明实施例中私有交集和协议流程图;
图4为本发明实施例中反向私有交集和协议架构图;
图5为本发明实施例中反向私有交集和协议时序图;
图6为本发明实施例中反向私有交集和协议流程图。
具体实施方式
为了使本发明的目的、技术方案及优势更加清晰,下面结合附图和具体实施例对本发明做进一步详细说明。此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
一种基于Paillier同态加密私有交集和的方法,包括基于Paillier同态加密私有交集和的协议以及基于Paillier同态加密反向私有交集和的协议;
(1)基于Paillier同态加密私有交集和的协议
本实施例中,基于Paillier同态加密私有交集和协议的架构如图1所示,在私有交集和协议中,两方输入自己所有的用户资源标识符集合,输出时1方得到交集的基数,2方得到交集和。私有交集和协议的两方通过设置以及三轮交互来实现求交集和的过程,如图2所示。
从图2可以看出,双方在设置环节,就一个安全参数λ和一个群G∈G(λ)以及一个用户标识符空间U=U(λ)达成一致。双方都能使用一个随机预言机RO:U→G。第一轮,1方用k1加密自己的用户标识符集合,将其发送给2方。第二轮,2方用k2加密1方发来的集合以及用k2和pk加密自己的用户标识符集合,并将其发送给1方。1方计算得到cipherv12与cipheru12的交集H。第三轮,1方将加密后的集合H发送给2方,2方使用sk解密求得与交集配对的整数值的和,即交集和SH
本实施例中,为方便后续描述,给出如表1所示的表示及说明。
表1各实体间通信的符号描述
具体流程如图3所示,包括以下步骤:
步骤1:双方协商关于加密私有交集和的基础设置,具体步骤如下:
步骤1.1:双方协商设置安全参数λ、群G∈G(λ)、用户标识符空间U=U(λ)以及随机预言机RO:U→G,其中,随机预言机RO将用户标识符映射到群G的随机元素中;
步骤1.2:1方持有m个用户标识符的输入集合U1={ui}i∈[m],其中,1方的第i个用户ui∈U;
步骤1.3:2方持有n个用户标识符和与之预期配对的相关整数值的集合{(vj,tj)}j∈[n],其中,2方的第j个用户vj∈U且与之预期配对的相关整数值tj∈Z+,Z+为正整数,使私有交集和∑tj适合安全参数λ的Paillier消息空间,并定义U2={vj}j∈[n]
步骤1.4:每一方a在群G中选取一个随机的秘密指数ka
步骤1.5:2方使用Pailler加密方案中的Pai.Gen(λ)函数产生一个新的密钥对(pk,sk),并将公钥pk分享给1方;
步骤2:1方加密自己的用户标识符集合U1并乱序发给2方,具体步骤如下:
步骤2.1:1方将自己用户标识符集合里的每个用户ui应用于随机预言机RO,然后使用密钥k1第一次加密,得到经1方加密后的1方用户密文
步骤2.2:1方将加密后的用户密文cipheru1构成的集合乱序发给2方;
步骤3:2方加密1方发来的用户数据以及自己的用户标识符集合U2并乱序发给1方,具体步骤如下:
步骤3.1:2方使用密钥k2对接收到的每个经1方加密后的1方用户密文元素进行二次加密,得到双方共同对1方用户加密后的密文
步骤3.2:2方将双方共同对1方用户加密后的密文cipheru12构成的集合乱序发给1方;
步骤3.3:2方使用密钥k2对将输入集合元素(vj,tj)对中每个用户标识符vj应用于随机预言机RO映射后的元素进行加密,再使用Paillier公钥pk对输入集合元素(vj,tj)对中与每个用户标识符vj预期配对的相关整数值tj进行加密,得到经2方加密后的2方用户密文和经2方加密后的2方用户配对的整数值的密文ciphert2=Pai(tj)对;
步骤3.4:2方将加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合乱序发给1方;
步骤4:1方加密2方发来的数据并求得cipherv12与cipheru12的交集H,再根据集合H得到与交集配对的整数值和的密文Pai(SH)并发送给2方,具体步骤如下:
步骤4.1:1方使用密钥k1对接收到的经2方加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合中的每个元素进行二次加密,得到双方共同对2方用户加密后的密文ciphervl2和与之配对的整数值密文ciphert2
步骤4.2:1方计算cipherv12与cipheru12的交集H:
步骤4.3:对于集合H中的每个元素h,1方将与h配对的整数值密文ciphert2=Pai(tj)相乘,同态地得到与交集配对的整数值的和SH的密文Pai(SH):Pai(SH)=Pai(∑j∈Htj)=Pai.Sum({Pai(tj)}j∈H);
步骤4.4:1方将与交集配对的整数值的和SH的密文Pai(SH)发送给2方;
步骤5:2方使用Paillier私钥sk解密收到的Paillier加密的与交集配对的整数值的和SH的密文Pai(SH),得到交集和SH
(2)基于Paillier同态加密反向私有交集和的协议
本实施例中,基于Paillier同态加密反向私有交集和协议的架构如图4所示,在反向私有交集和协议中,两方同样输入自己所有的用户资源标识符集合,输出时若交集基数过小就终止协议。否则,1方得到交集的基数以及交集和,2方得到交集的基数。反向私有交集和协议的两方通过设置以及三轮交互来实现求交集和的过程,如图5所示。
从图5可以看出,双方在设置环节,就一个安全参数λ和一个群G∈G(λ)以及一个用户标识符空间U=U(λ)达成一致。双方都能使用一个随机预言机RO:U→G。第一轮,2方用k2和pk加密自己的用户标识符集合,将其发送给1方。第二轮,1方用k1加密自己的用户标识符集合,对于2方发来的集合中每个元素,用k1加密用户标识符后,加入一个扰乱因子,并将其发送给2方。2方计算得到cipherv12与cipheru12交集的下标集合J,而且使用sk解密出带有扰乱因子的与交集配对的整数值的和SJr,若交集基数太小则终止协议。第三轮,2方将带有扰乱因子的与交集配对的整数值的和SJr以及下标集合J发送给1方,1方除去扰乱因子求得与交集配对的整数值的和,即交集和SJ
具体流程如图6所示,包括以下步骤:
S1:双方协商关于加密私有交集和的基础设置,具体步骤如下:
S1.1:双方协商设置安全参数λ、群G∈G(λ)、用户标识符空间U=U(λ)以及随机预言机RO:U→G,其中,随机预言机RO将用户标识符映射到群G的随机元素中;
S1.2:1方持有m个用户标识符的输入集合U1={ui}i∈[m],其中,1方的第i个用户ui∈U;
S1.3:2方持有n个用户标识符和与之预期配对的相关整数值的集合{(vj,tj)}j∈[n],其中,2方的第j个用户vj∈U且与之预期配对的相关整数值tj∈Z+,Z+为正整数,使私有交集和∑tj适合安全参数λ的Paillier消息空间,并定义2方用户标识符的输入集合U2={vj}j∈[n]
S1.4:每一方a在群G中选取一个随机的秘密指数ka
S1.5:2方使用Pailler加密方案中的Pai.Gen(λ)函数产生一个新的密钥对(pk,sk),并将公钥pk分享给1方;
S2:2方加密自己的用户标识符集合U2并按顺序发给1方,具体步骤如下:
S2.1:2方使用密钥k2对将输入集合元素(vj,tj)对中每个用户标识符vj应用于随机预言机RO的元素进行加密,再使用Paillier公钥pk对输入集合元素(vj,tj)对中与每个用户标识符vj预期配对的相关整数值tj进行加密,得到经2方加密后的2方用户密文和经2方加密后的2方用户配对的整数值的密文ciphert2=Pai(tj)对;
S2.2:2方将加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合按顺序发给1方;
S3:1方加密2方发来的用户数据以及自己的用户标识符集合U1并按顺序发给2方,具体步骤如下:
S3.1:1方使用密钥k1对接收到的经2方加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合中的每个元素进行二次加密,得到双方共同对2方用户加密后的密文并且在Paillier模数N下,随机地选取映射(j→rj),其中,rj∈Z+,通过Pai(tj+rj)=Pai(tj)×Pai(rj)同态地对接收到的每个元素中与用户标识符vj预期配对的相关整数值tj进行一次性填充加密,最终得到双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文经填充的ciphertr2
S3.2:1方保存映射(j→ri)并将双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文经填充的ciphertr2对构成的集合按顺序发给2方;
S3.3:1方使用密钥k1对将输入集合1中的用户ui应用于随机预言机RO映射后的元素进行加密,得到经1方加密后的1方用户密文
S3.4:1方将加密后的用户密文cipheru1构成的集合乱序发给2方;
S4:2方加密1方发来的数据并求得与交集配对的整数值和的下标集合J,再对下标集合J进行填充加密得到与交集配对的整数值的和SJr并发送给1方,具体步骤如下:
S4.1:2方使用密钥k2对接收到的每个经1方加密后的1方用户密文进行二次加密,得到双方共同对1方用户加密后的密文
S4.2:2方计算cipherv12与cipheru12交集的下标集合J:
S4.3:判断交集基数是否小于设定阈值,若是,则2方终止协议,若否,则继续S4.4;
S4.4:2方将下标集合J中下标对应的所有元素Pai(tj+rj)相乘,再使用私钥sk解密,得到带一次性填充加密的与交集配对的整数值的和SJr=∑j∈Jtj+rj
S4.5:2方将加密的与交集配对的整数值的和SJr以及下标集合J发送给1方;
S5:1方计算与交集配对的整数值的和
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;因而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。

Claims (7)

1.一种基于Paillier同态加密私有交集和的方法,其特征在于,包括基于Paillier同态加密的私有交集和协议以及基于Paillier同态加密的反向私有交集和协议;
(1)基于Paillier同态加密的私有交集和协议,包括以下步骤:
步骤1:双方协商关于加密私有交集和的基础设置,具体步骤如下:
步骤1.1:双方协商设置安全参数λ、群G∈G(λ)、用户标识符空间U=U(λ)以及随机预言机RO:U→G,其中,随机预言机RO将用户标识符映射到群G的随机元素中;
步骤1.2:1方持有m个用户标识符的输入集合U1={ui}i∈[m],其中,1方的第i个用户ui∈U;
步骤1.3:2方持有n个用户标识符和与之预期配对的相关整数值的集合{(vj,tj)}j∈[n],其中,2方的第j个用户vj∈U且与之预期配对的相关整数值tj∈Z+,Z+为正整数,使私有交集和∑tj适合安全参数λ的Paillier消息空间,并定义U2={vj}j∈[n]
步骤1.4:每一方a在群G中选取一个随机的秘密指数ka
步骤1.5:2方使用Pailler加密方案中的Pai.Gen(λ)函数产生一个新的密钥对(pk,sk),并将公钥pk分享给1方;
步骤2:1方加密自己的用户标识符集合U1并乱序发给2方;
步骤3:2方加密1方发来的用户数据以及自己的用户标识符集合U2并乱序发给1方;
步骤4:1方加密2方发来的数据并求得cipherv12与cipheru12的交集H,再根据集合H得到与交集配对的整数值和的密文Pai(SH)并发送给2方;
步骤5:2方使用Paillier私钥sk解密收到的Paillier加密的与交集配对的整数值的和SH的密文Pai(SH),得到与交集配对的整数值的和SH
(2)基于Paillier同态加密的反向私有交集和协议,包括以下步骤:
S1:双方协商关于加密私有交集和的基础设置,具体步骤如下:
S1.1:双方协商设置安全参数λ、群G∈G(λ)、用户标识符空间U=U(λ)以及随机预言机RO:U→G,其中,随机预言机RO将用户标识符映射到群G的随机元素中;
S1.2:1方持有m个用户标识符的输入集合U1={ui}i∈[m],其中,1方的第i个用户ui∈U;
S1.3:2方持有n个用户标识符和与之预期配对的相关整数值的集合{(vj,tj)}j∈[n],其中,2方的第j个用户vj∈U且与之预期配对的相关整数值tj∈Z+,Z+为正整数,使私有交集和∑tj适合安全参数λ的Paillier消息空间,并定义2方用户标识符的输入集合U2={vj}j∈[n]
S1.4:每一方a在群G中选取一个随机的秘密指数ka
S1.5:2方使用Pailler加密方案中的Pai.Gen(λ)函数产生一个新的密钥对(pk,sk),并将公钥pk分享给1方;
S2:2方加密自己的用户标识符集合U2并按顺序发给1方;
S3:1方加密2方发来的用户数据以及自己的用户标识符集合U1并按顺序发给2方;
S4:2方加密1方发来的数据并求得cipherv12与cipheru12交集的下标集合J,再对下标集合J进行填充加密得到与交集配对的整数值的和SJr并发送给1方;
S5:1方计算与交集配对的整数值的和
2.根据权利要求1所述的基于Paillier同态加密私有交集和的方法,其特征在于,所述步骤2包括以下步骤:
步骤2.1:1方将自己用户标识符集合里的每个用户ui应用于随机预言机RO,然后使用密钥k1第一次加密,得到经1方加密后的1方用户密文
步骤2.2:1方将加密后的用户密文cipheru1构成的集合乱序发给2方。
3.根据权利要求1所述的基于Paillier同态加密私有交集和的方法,其特征在于,所述步骤3包括以下步骤:
步骤3.1:2方使用密钥k2对接收到的每个经1方加密后的1方用户密文元素进行二次加密,得到双方共同对1方用户加密后的密文
步骤3.2:2方将双方共同对1方用户加密后的密文cipheru12构成的集合乱序发给1方;
步骤3.3:2方使用密钥k2对将输入集合元素(vj,tj)对中每个用户标识符vj应用于随机预言机RO映射后的元素进行加密,再使用Paillier公钥pk对输入集合元素(vj,tj)对中与每个用户标识符vj预期配对的相关整数值tj进行加密,得到经2方加密后的2方用户密文和经2方加密后的2方用户配对的整数值的密文ciphert2=Pai(tj)对;
步骤3.4:2方将加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合乱序发给1方。
4.根据权利要求1所述的基于Paillier同态加密私有交集和的方法,其特征在于,所述步骤4包括以下步骤:
步骤4.1:1方使用密钥k1对接收到的经2方加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合中的每个元素进行二次加密,得到双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文ciphert2
步骤4.2:1方计算cipherv12与cipheru12的交集H:
步骤4.3:对于集合H中的每个元素h,1方将与h配对的整数值密文ciphert2=Pai(tj)相乘,同态地得到与交集配对的整数值的和SH的密文Pai(SH):Pai(SH)=Pai(∑j∈Htj)=Pai.Sum({Pai(tj)}j∈H);
步骤4.4:1方将与交集配对的整数值的和SH的密文Pai(SH)发送给2方。
5.根据权利要求1所述的基于Paillier同态加密私有交集和的方法,其特征在于,所述S2包括以下步骤:
S2.1:2方使用密钥k2对将输入集合元素(vj,tj)对中每个用户标识符vj应用于随机预言机RO的元素进行加密,再使用Paillier公钥pk对输入集合元素(vj,tj)对中与每个用户标识符vj预期配对的相关整数值tj进行加密,得到经2方加密后的2方用户密文和经2方加密后的2方用户配对的整数值的密文ciphert2=Pai(tj)对;
S2.2:2方将加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合按顺序发给1方。
6.根据权利要求1所述的基于Paillier同态加密私有交集和的方法,其特征在于,所述S3包括以下步骤:
S3.1:1方使用密钥k1对接收到的经2方加密后的用户密文cipherv2和与之配对的整数值密文ciphert2对构成的集合中的每个元素进行二次加密,得到双方共同对2方用户加密后的密文并且在Paillier模数N下,随机地选取映射(j→rj),其中,rj∈Z+,通过Pai(tj+rj)=Pai(tj)×Pai(rj)同态地对接收到的每个元素中与用户标识符vj预期配对的相关整数值tj进行一次性填充加密,最终得到双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文经填充的ciphertr2
S3.2:1方保存映射(j→rj)并将双方共同对2方用户加密后的密文cipherv12和与之配对的整数值密文经填充的ciphertr2对构成的集合按顺序发给2方;
S3.3:1方使用密钥k1对将输入集合1中的用户ui应用于随机预言机RO映射后的元素进行加密,得到经1方加密后的1方用户密文
S3.4:1方将加密后的用户密文cipheru1构成的集合乱序发给2方。
7.根据权利要求1所述的基于Paillier同态加密私有交集和的方法,其特征在于,所述S4包括以下步骤:
S4.1:2方使用密钥k2对接收到的每个经1方加密后的1方用户密文进行二次加密,得到双方共同对1方用户加密后的密文
S4.2:2方计算cipherv12与cipheru12交集的下标集合J:
S4.3:判断交集基数是否小于设定阈值,若是,则2方终止协议,若否,则继续S4.4;
S4.4:2方将下标集合J中下标对应的所有元素Pai(tj+rj)相乘,再使用私钥sk解密,得到带一次性填充加密的与交集配对的整数值的和
S4.5:2方将加密的与交集配对的整数值的和SJr以及下标集合J发送给1方。
CN201811442107.6A 2018-11-29 2018-11-29 一种基于Paillier同态加密私有交集和的方法 Active CN109525386B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811442107.6A CN109525386B (zh) 2018-11-29 2018-11-29 一种基于Paillier同态加密私有交集和的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811442107.6A CN109525386B (zh) 2018-11-29 2018-11-29 一种基于Paillier同态加密私有交集和的方法

Publications (2)

Publication Number Publication Date
CN109525386A true CN109525386A (zh) 2019-03-26
CN109525386B CN109525386B (zh) 2021-05-18

Family

ID=65794521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811442107.6A Active CN109525386B (zh) 2018-11-29 2018-11-29 一种基于Paillier同态加密私有交集和的方法

Country Status (1)

Country Link
CN (1) CN109525386B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110086717A (zh) * 2019-04-30 2019-08-02 阿里巴巴集团控股有限公司 用于进行数据安全匹配的方法、装置和***
CN110324321A (zh) * 2019-06-18 2019-10-11 阿里巴巴集团控股有限公司 数据处理方法及装置
CN110399741A (zh) * 2019-07-29 2019-11-01 深圳前海微众银行股份有限公司 数据对齐方法、设备及计算机可读存储介质
CN110535622A (zh) * 2019-08-01 2019-12-03 阿里巴巴集团控股有限公司 数据处理方法、装置和电子设备
CN111641603A (zh) * 2020-05-15 2020-09-08 北京青牛技术股份有限公司 基于同态加密的隐私集合交集数据交互方法和***
CN111741020A (zh) * 2020-07-31 2020-10-02 支付宝(杭州)信息技术有限公司 基于数据隐私保护的公共数据集确定方法、装置及***
CN111832050A (zh) * 2020-07-10 2020-10-27 深圳致星科技有限公司 用于联邦学习的基于FPGA芯片实现的Paillier加密方案
CN111931221A (zh) * 2020-09-25 2020-11-13 支付宝(杭州)信息技术有限公司 数据处理方法、装置和服务器
US10885203B2 (en) * 2019-08-01 2021-01-05 Advanced New Technologies Co., Ltd. Encrypted data exchange
CN112434329A (zh) * 2020-10-23 2021-03-02 上海点融信息科技有限责任公司 私有数据交集获取方法、计算设备、存储介质
CN112651042A (zh) * 2020-12-23 2021-04-13 上海同态信息科技有限责任公司 一种基于可信第三方隐私数据求交集方法
CN113032848A (zh) * 2021-05-20 2021-06-25 华控清交信息科技(北京)有限公司 一种数据处理方法和用于数据处理的芯片
CN113034276A (zh) * 2020-12-29 2021-06-25 上海能链众合科技有限公司 一种区块链隐私交易解决方法
CN113179150A (zh) * 2021-04-26 2021-07-27 杭州宇链科技有限公司 一种基于保序函数的同态隐私集合求交方法
KR102284877B1 (ko) * 2020-12-14 2021-07-30 세종대학교산학협력단 효율적인 교집합 연산을 위한 함수 암호 기술
CN113343255A (zh) * 2021-06-04 2021-09-03 百融云创科技股份有限公司 一种基于隐私保护的数据交互方法
CN113434888A (zh) * 2021-07-06 2021-09-24 建信金融科技有限责任公司 数据共享方法、装置、设备及***
CN113806795A (zh) * 2021-08-10 2021-12-17 中国科学院信息工程研究所 一种两方隐私集合并集计算方法和装置
CN114826546A (zh) * 2022-04-02 2022-07-29 支付宝(杭州)信息技术有限公司 一种交易数据处理方法及装置
CN116595562A (zh) * 2023-06-06 2023-08-15 北京火山引擎科技有限公司 数据处理方法和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130010950A1 (en) * 2011-07-08 2013-01-10 Sap Ag Public-Key Encrypted Bloom Filters With Applications To Private Set Intersection
CN107124268A (zh) * 2017-04-01 2017-09-01 中国人民武装警察部队工程大学 一种可抵抗恶意攻击的隐私集合交集计算方法
CN107196926A (zh) * 2017-04-29 2017-09-22 河南师范大学 一种云外包隐私集合比较方法与装置
CN108055118A (zh) * 2017-12-11 2018-05-18 东北大学 一种隐私保护的图数据交集计算方法
CN108737115A (zh) * 2018-06-20 2018-11-02 湖北工业大学 一种具有隐私保护的高效私有属性集交集求解方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130010950A1 (en) * 2011-07-08 2013-01-10 Sap Ag Public-Key Encrypted Bloom Filters With Applications To Private Set Intersection
CN107124268A (zh) * 2017-04-01 2017-09-01 中国人民武装警察部队工程大学 一种可抵抗恶意攻击的隐私集合交集计算方法
CN107196926A (zh) * 2017-04-29 2017-09-22 河南师范大学 一种云外包隐私集合比较方法与装置
CN108055118A (zh) * 2017-12-11 2018-05-18 东北大学 一种隐私保护的图数据交集计算方法
CN108737115A (zh) * 2018-06-20 2018-11-02 湖北工业大学 一种具有隐私保护的高效私有属性集交集求解方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李福祥 等: "基于双线性映射的公共可验证外包计算方案", 《东北大学学报(自然科学版)》 *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110086717B (zh) * 2019-04-30 2021-06-22 创新先进技术有限公司 用于进行数据安全匹配的方法、装置和***
CN110086717A (zh) * 2019-04-30 2019-08-02 阿里巴巴集团控股有限公司 用于进行数据安全匹配的方法、装置和***
CN110324321A (zh) * 2019-06-18 2019-10-11 阿里巴巴集团控股有限公司 数据处理方法及装置
CN110324321B (zh) * 2019-06-18 2021-07-13 创新先进技术有限公司 数据处理方法及装置
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 创新先进技术有限公司 数据处理方法、装置和电子设备
CN110535622A (zh) * 2019-08-01 2019-12-03 阿里巴巴集团控股有限公司 数据处理方法、装置和电子设备
TWI740399B (zh) * 2019-08-01 2021-09-21 開曼群島商創新先進技術有限公司 資料處理方法、裝置和電子設備
CN111641603B (zh) * 2020-05-15 2022-07-01 北京青牛技术股份有限公司 基于同态加密的隐私集合交集数据交互方法和***
CN111641603A (zh) * 2020-05-15 2020-09-08 北京青牛技术股份有限公司 基于同态加密的隐私集合交集数据交互方法和***
CN111832050A (zh) * 2020-07-10 2020-10-27 深圳致星科技有限公司 用于联邦学习的基于FPGA芯片实现的Paillier加密方案
CN111741020A (zh) * 2020-07-31 2020-10-02 支付宝(杭州)信息技术有限公司 基于数据隐私保护的公共数据集确定方法、装置及***
CN111931221A (zh) * 2020-09-25 2020-11-13 支付宝(杭州)信息技术有限公司 数据处理方法、装置和服务器
CN112434329A (zh) * 2020-10-23 2021-03-02 上海点融信息科技有限责任公司 私有数据交集获取方法、计算设备、存储介质
KR102284877B1 (ko) * 2020-12-14 2021-07-30 세종대학교산학협력단 효율적인 교집합 연산을 위한 함수 암호 기술
CN112651042A (zh) * 2020-12-23 2021-04-13 上海同态信息科技有限责任公司 一种基于可信第三方隐私数据求交集方法
CN113034276A (zh) * 2020-12-29 2021-06-25 上海能链众合科技有限公司 一种区块链隐私交易解决方法
CN113179150A (zh) * 2021-04-26 2021-07-27 杭州宇链科技有限公司 一种基于保序函数的同态隐私集合求交方法
CN113179150B (zh) * 2021-04-26 2022-07-01 杭州宇链科技有限公司 一种基于保序函数的同态隐私集合求交方法
CN113032848A (zh) * 2021-05-20 2021-06-25 华控清交信息科技(北京)有限公司 一种数据处理方法和用于数据处理的芯片
CN113343255A (zh) * 2021-06-04 2021-09-03 百融云创科技股份有限公司 一种基于隐私保护的数据交互方法
CN113343255B (zh) * 2021-06-04 2024-06-25 百融云创科技股份有限公司 一种基于隐私保护的数据交互方法
CN113434888A (zh) * 2021-07-06 2021-09-24 建信金融科技有限责任公司 数据共享方法、装置、设备及***
CN113806795A (zh) * 2021-08-10 2021-12-17 中国科学院信息工程研究所 一种两方隐私集合并集计算方法和装置
CN113806795B (zh) * 2021-08-10 2024-03-01 中国科学院信息工程研究所 一种两方隐私集合并集计算方法和装置
CN114826546A (zh) * 2022-04-02 2022-07-29 支付宝(杭州)信息技术有限公司 一种交易数据处理方法及装置
CN116595562A (zh) * 2023-06-06 2023-08-15 北京火山引擎科技有限公司 数据处理方法和电子设备
CN116595562B (zh) * 2023-06-06 2024-07-19 北京火山引擎科技有限公司 数据处理方法和电子设备

Also Published As

Publication number Publication date
CN109525386B (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
CN109525386A (zh) 一种基于Paillier同态加密私有交集和的方法
Xue et al. Security improvement on an anonymous key agreement protocol based on chaotic maps
Niu et al. An anonymous key agreement protocol based on chaotic maps
Tseng et al. A chaotic maps-based key agreement protocol that preserves user anonymity
CN105307165B (zh) 基于移动应用的通信方法、服务端和客户端
US8195932B2 (en) Authentication and encryption for secure data transmission
CN107196926A (zh) 一种云外包隐私集合比较方法与装置
CA2548229A1 (en) Enabling stateless server-based pre-shared secrets
CN105306492A (zh) 一种针对安全即时通信的异步密钥协商方法及装置
Abusukhon et al. New direction of cryptography: A review on text-to-image encryption algorithms based on RGB color value
US6640303B1 (en) System and method for encryption using transparent keys
CN109543434A (zh) 区块链信息加密方法、解密方法、存储方法及装置
CN106301763A (zh) 一种基于二重盐值的数据加密与解密方法及***
CN107483505A (zh) 一种对视频聊天中的用户隐私进行保护的方法及***
CN114008967A (zh) 经认证的基于晶格的密钥协商或密钥封装
CN111510464B (zh) 一种保护用户隐私的疫情信息共享方法及***
CN111404953A (zh) 一种消息加密方法、解密方法及相关装置、***
CN104158880A (zh) 一种用户端云数据共享解决方法
CN101808089A (zh) 基于非对称加密算法同态性的秘密数据传输保护方法
CN105025036A (zh) 一种基于互联网的认知能力测试值加密和传输方法
Wang et al. Key escrow protocol based on a tripartite authenticated key agreement and threshold cryptography
CN108599923A (zh) 云计算服务器间数据高效安全传输的实现方法
CN107493287A (zh) 工控网络数据安全***
Gaur et al. A comparative study and analysis of cryptographic algorithms: RSA, DES, AES, BLOWFISH, 3-DES, and TWOFISH
CN109495478A (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