CN116561799A - 一种基于云服务器的多方隐私集合运算方法 - Google Patents
一种基于云服务器的多方隐私集合运算方法 Download PDFInfo
- Publication number
- CN116561799A CN116561799A CN202310535931.0A CN202310535931A CN116561799A CN 116561799 A CN116561799 A CN 116561799A CN 202310535931 A CN202310535931 A CN 202310535931A CN 116561799 A CN116561799 A CN 116561799A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- bloom filter
- cloud server
- privacy
- participant
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000004364 calculation method Methods 0.000 claims abstract description 10
- 230000007246 mechanism Effects 0.000 claims description 11
- 238000000354 decomposition reaction Methods 0.000 claims description 5
- 239000000654 additive Substances 0.000 claims description 2
- 230000000996 additive effect Effects 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 8
- 230000003993 interaction Effects 0.000 abstract description 6
- 230000006978 adaptation Effects 0.000 abstract description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种基于云服务器的多方隐私集合运算方法,以在保证不泄露除所求结果以外信息的同时,拓展隐私集合求交协议的适应场景,更好地为现实需求服务,具体有:1、利用密文乘法协议将密文的加同态转为乘同态,使得参与方不但能够进行隐私集合求交,也可以基于类似的思想进行隐私集合求并集,实现多方隐私集合交集并集混合计算技术。2、将大量计算委托给云服务器进行,使得参与方本地计算的数据量大大减少,同时,避免参与方之间的交互。3、使用布隆过滤器表示集合信息,使得其更好地适用于大规模数据,同时,若指定参与方不持有全集,其只能恢复得到同时被该参与方持有的元素,进一步保证隐私信息元素的安全。
Description
技术领域
本发明涉及数据隐私保护技术领域,具体而言,涉及一种基于云服务器的多方隐私集合运算方法。
背景技术
在大数据与人工智能兴盛的时代,各种不同的应用程序掌握了用户的不同数据,数据在不同程序中流通,创造出更大的价值,进而带来更好的用户体验,但同时也造成了大量的用户隐私数据泄露,公民个人信息无法得到保证。如何在保护用户数据隐私的同时,有效发挥数据价值,成为了安全多方计算兴起的最重要的原因。隐私集合交集和隐私集合并集技术都是安全多方计算领域中的一类子问题。
隐私保护集合交集技术是参与方进行集合交集计算,但不泄露集合的其他信息,隐私保护集合并集技术是进行集合并集计算,但不泄露交集信息。目前,在多方场景下,缺少将隐私集合的交集和并集计算同时实现的算法。但在一些应用场景中,参与方集合的交并集混合计算是必要的。
多方隐私集合交集是目前最为成熟的多方隐私集合运算。先前的研究已经通过不经意多项式评估、不经意伪随机函数和同态加密等原语实现了多方隐私集合交集技术。目前,已有部分多方隐私集合交集技术达到了恶意安全,还有部分探索了后量子安全。Kolesnikov等人通过不经意传输实现了两方隐私集合并集技术。在多方设置中,Shishido等人提出了一个直接构造。
目前关于多方隐私集合交并集混合运算技术的研究较少,2020年Wang等人在Privacy-Preserving Mixed Set Operations中提出了一个混合集合运算的通用技术,但其面对大规模数据时通信量与计算开销都极大,且需要参与方之间进行交互。
发明内容
为了解决上述现有技术存在的问题,本发明旨在提供一种基于云服务器的多方隐私集合运算方法,在保证不泄露除所求结果以外信息的同时,拓展隐私集合求交协议的适应场景,更好地为现实需求服务。
本发明提供的一种基于云服务器的多方隐私集合运算方法,包括如下步骤:
步骤1,系统初始化:参数生成机构PG生成门限Paillier加密算法的参数N和M,其中,N=pq,p和q是两个素数,M=p′q′,p=2p′+1,q=2q′+1,p′和q′也是素数, 为欧拉函数,表示{0,1,…N-1}中与N互素的数的个数;从/>中随机选择β,从/>中随机选取(a,b),/>表示{0,1,…N-1}中与N互素的数组成的集合,计算g=(1+N)a×bNmodN2,公钥PK=(g,N,θ=aMβmodN),联合私钥SK=βM;按照Shamir(t,n)门限秘密分享方案将私钥SK进行分享,t为门限阈值,n表示参与方数量,每个参与方得到份额si作为参与方各自的私钥ski;参数生成机构PG确定布隆过滤器的大小m、假阳率fpp和哈希函数的个数k,同时选择具体的k个哈希函数,将它们发送给每个参与方Pi,i=1,…,n,n表示参与方数量;
步骤2,每个参与方Pi生成一个空的布隆过滤器将各自的隐私集合Xi中的元素添加至布隆过滤器/>然后利用公钥PK对布隆过滤器/>加密,得到各自的布隆过滤器密文/>并将各自的布隆过滤器密文/>发给云服务器/>
步骤3,指定参与方P1向云服务器发起请求,同时参与方P1将自己的私钥sk1分解为sk1=sk11sk12,并将sk11发给云服务器/>将sk12发给云服务器/>
步骤4,云服务器根据请求,先进行所有的隐私集合求交运算,再进行隐私集合求并运算,其中,隐私集合求交运算对应,将待求交集的隐私集合的布隆过滤器密文做加同态,隐私集合求并运算对应,利用密文乘法协议将待求并集的隐私集合的布隆过滤器密文做乘同态;云服务器/>将最后得到的密文/>发给其他参与方Pi,i=2,…,n,获得Pi的解密份额/>对Pi的解密份额/>做幂运算后累乘得到指定参与方解密所需的中间值SC,表示在密文中的位置;最终,云服务器/>将密文/>与中间值SC一同发送给指定参与方P1;
步骤5,指定参与方P1解密得到布隆过滤器明文利用布隆过滤器查询算法得到所求集合Xres的元素。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、本发明由于利用密文乘法协议,实现了将密文的加同态转为乘同态,使得参与方不但能够进行隐私集合求交,也可以基于类似的思想进行隐私集合求并集,实现多方隐私集合交集并集混合计算技术。
2、本发明由于使用两个云服务器,将大量计算委托给云服务器进行,使得参与方本地计算的数据量大大减少,从而达到了减少计算量的目的,同时,避免了参与方之间的交互,在本发明中只存在参与方与云服务器的交互。
3、本发明使用布隆过滤器这一数据结构表示集合信息,使得其更好地适用于大规模数据,同时,若指定参与方不持有全集,其只能恢复得到同时被该参与方持有的元素,进一步保证隐私信息元素的安全。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例中基于云服务器的多方隐私集合运算方法的流程图。
图2为本发明实施例中密文乘法协议的子流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
本实施例提出一种基于云服务器的多方隐私集合运算方法中,包括参数生成机构PG、参与方和云服务器这三个主体,其中:
参数生成机构PG,其负责生成该技术所需的参数;
参与方,其用于输入其原始数据集合,将发送查询请求的参与方称为指定参与方,其能得到所有输入集合运算之后的结果,其余称为其他参与方,其不能得到任何结果;
云服务器,本实施例中有两个云服务器,分别是云服务器和云服务器/>其负责承担数据的计算和存储任务。
如图1所示,所述基于云服务器的多方隐私集合运算方法包括如下步骤:
步骤1,系统初始化,具体包括如下子步骤:
步骤1.1,参数生成机构PG生成门限Paillier加密算法的参数N和M,其中,N=pq,p和q是两个素数,M=p′q′,p=2p′+1,q=2q′+1,p′和q′也是素数,其中/>为欧拉函数,表示{0,1,…N-1}中与N互素的数的个数;从/>中随机选择β,从中随机选取(a,b),其中/>表示{0,1,…N-1}中与N互素的数组成的集合;计算g=(1+N)a×bNmodN2,公钥PK=(g,N,θ=aMβmodN),联合私钥SK=βM;将公钥PK公开,将私钥SK、p和q秘密保存,将(a,b)销毁;
步骤1.2,参数生成机构PG按照Shamir(t,n)门限秘密分享方案将私钥SK进行分享,其中t为门限阈值,n表示参与方数量,每个参与方得到联合私钥SK=βM的秘密份额si作为参与方各自的私钥ski;具体为:设其中a0=βM,ai(i=1,…,t-1)为参数生成机构PG在{0,1,…,N×M-1}中随机选取,则ski=si=f(i)modNM。
步骤1.3,参数生成机构PG从中随机选择β′,从/>中随机选取(a′,b′),计算g′=(1+N)a′×(b′)NmodN2,将(a′,b′)销毁,得到云服务器/>的公私钥对(PKc,SKc),公钥PKc=(g′,N,θ′=a′Mβ′modN),私钥SKc=β′M。
步骤1.4,参数生成机构PG取一个参与方集合规模最大值vmax和布隆过滤器的假阳率fpp,再计算出布隆过滤器的大小m和布隆过滤器的哈希函数的个数k:
步骤1.5,参数生成机构PG选取布隆过滤器的k个哈希函数hl,将vmax、fpp、m、k和hl公开,l=1,…,k。
步骤2,每个参与方Pi生成一个空的布隆过滤器将各自的隐私集合Xi中的元素添加至布隆过滤器/>然后利用公钥PK对布隆过滤器/>加密,得到各自的布隆过滤器密文/>并将各自的布隆过滤器密文/>发给云服务器/>具体包括如下子步骤:
步骤2.1,每个参与方Pi生成一个空的布隆过滤器BFi,即布隆过滤器BFi中每个位置的值都初始化为1;
步骤2.2,每个参与方Pi对其隐私集合中的元素xj∈Xi,计算:
h1(xj),...,hl(xj),...,hk(xj)
其中,hI(xj)表示元素xj由布隆过滤器的哈希函数hl计算得到的哈希函数值,j=1,…,vi,vi表示隐私集合Xi的大小;
步骤2.3,每个参与方Pi以步骤2.2中得到的哈希函数值为索引值,在空的布隆过滤器BFi中找到对应位置,并将对应位置的数值置为0,每个参与方Pi得到各自的布隆过滤器
其中,表示布隆过滤器/>第j个位置的值,j=1,…,m;
步骤2.4,每个参与方Pi利用门限Paillier加密算法对布隆过滤器进行加密,得到各自的布隆过滤器密文/>并将其发给云服务器/>
其中,表示布隆过滤器密文/>的第j个位置密文,ri,随机选自/>
步骤3,指定参与方Pi向云服务器发起请求,同时参与方P1将自己的私钥sk1分解为sk1=sk11sk12,并将sk11发给云服务器/>将sk12发给云服务器/>具体包括如下子步骤:
步骤3.1,指定参与方P1用云服务器的公钥PKc加密期待获得的集合Xres的表达式:
其中,Xres表示指定参与方P1期待得到的集合,α是一个常数,I1,I1,…Iα为某些参与方ID的集合;
步骤3.2,指定参与方P1向云服务器发送集合Xres的表达式的密文和自己的ID;
步骤3.3,指定参与方P1随机选择sk1i,将其私钥ski分解为ski=sk11sk12,并将sk11发给云服务器将sk12发给云服务器/>
步骤4,云服务器根据请求,先进行所有的隐私集合求交运算,再进行隐私集合求并运算,其中,隐私集合求交运算对应,将待求交集的隐私集合的布隆过滤器密文做加同态,隐私集合求并运算对应,利用密文乘法协议将待求并集的隐私集合的布隆过滤器密文做乘同态;云服务器/>将最后得到的密文/>发给其他参与方Pi,i=2,…,n,获得Pi的解密份额/>对Pi的解密份额/>做幂运算后累乘得到指定参与方解密所需的中间值SC,表示在密文中的位置;最终,云服务器/>将密文/>与中间值SC一同发送给指定参与方P1,具体包括如下子步骤:
步骤4.1,云服务器通过自己的私钥SKc解密得到Xres的表达式;
步骤4.2,计算交集对应的布隆过滤器密文,/>y=1,2,…,α:
云服务器选择隐私集合Xi所对应的布隆过滤器密文/>利用门限Paillier加密算法的加法同态性,将|Iy|个布隆过滤器密文/>对应位置相乘,得到/>对应的布隆过滤器的密文:
其中,表示/>对应的加密布隆过滤器第j个位置的密文,y=1,2,…,α;
步骤4.3,计算并集对应的布隆过滤器密文,α为常数:
步骤4.3.1,云服务器将对应的布隆过滤器密文/>两两分组,输入至密文乘法协议,得到协议输出密文;
步骤4.3.2,如上轮分组有轮空密文,则将密文乘法协议输出密文与轮空的密文一起两两分组,作为本轮密文乘法协议的输入,得到协议输出密文;
步骤4.3.3,如上轮只有一个分组且没有轮空密文,则得到即为上轮密文乘法协议的输出/>表示集合/>对应的布隆过滤器密文;
步骤4.4,云服务器将最后得到的密文/>发给其他参与方Pi,i=2,…,n,/>表示Xres对应的加密布隆过滤器第j个位置的密文;
步骤4.5,其他参与方Pi,i=2,…,n,利用其各自的私钥ski计算解密份额:
其中,j=1,…,m表示在密文中的位置,Δ为n!(n的阶乘),并将解密份额/>发给云服务器/>
步骤4.6,云服务器计算指定参与方P1解密/>所需的中间值SC:
SC=(SC1,SC2,…,SCm)
其中,I为t个具有有效私钥成分的参与方的标号集合。
步骤4.7,将密文和指定参与方P1解密/>所需的中间值SC一同发送给指定参与方P1。
所述密文乘法协议如图2所示,将密文的加同态转为乘同态,使得参与方可以进行隐私集合求并集,实现多方隐私集合交集并集混合计算。包括如下步骤:
1)输入密文c1,c2;
2)云服务器从/>中随机选择r′,计算/>cr=EPK(r′),c=Add(c2,cr),/>将/>c,/>c1发给云服务器/>其中ScalMult为标量乘法运算;
3)云服务器与其他参与方Pi交互,i=2,…,n,得到他们关于c的秘密份额c′i,i=2,…,n;
4)云服务器计算解密c时指定参与方P1的解密份额/>解密c得到Dec(c2)+r′;
5)云服务器计算/>
6)输出
步骤5,指定参与方P1解密得到布隆过滤器的明文,利用布隆过滤器查询算法得到所求集合Xres的元素,具体包括如下子步骤:
步骤5.1,指定参与方P1首先利用其私钥sk1对对应的密文中的每个/>进行幂计算,得到/>
步骤5.2,在指定参与方P1接收到中间值SC后,进行解密:
其中,函数
步骤5.3,若Mj=0,则否则/>
步骤5.4,指定参与方P1通过步骤5.1~5.3获得布隆过滤器明文后,利用布隆过滤器查询算法得到集合Xres。
通过上述实施方案,本发明具有如下优势:
1、本发明由于利用密文乘法协议,实现了将密文的加同态转为乘同态,使得参与方不但能够进行隐私集合求交,也可以基于类似的思想进行隐私集合求并集,实现多方隐私集合交集并集混合计算技术。
2、本发明由于使用两个云服务器,将大量计算委托给云服务器进行,使得参与方本地计算的数据量大大减少,从而达到了减少计算量的目的,同时,避免了参与方之间的交互,在本发明中只存在参与方与云服务器的交互。
3、本发明使用布隆过滤器这一数据结构表示集合信息,使得其更好地适用于大规模数据,同时,若指定参与方不持有全集,其只能恢复得到同时被该参与方持有的元素,进一步保证隐私信息元素的安全。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于云服务器的多方隐私集合运算方法,其特征在于,包括如下步骤:
步骤1,系统初始化:参数生成机构PG生成门限Paillier加密算法的参数N和M,其中,N=pq,p和q是两个素数,M=p’q’,p=2p’+1,q=2q’+1,p’和q’也是素数, 为欧拉函数,表示{0,1,…N-1}中与N互素的数的个数;从/>中随机选择β,从/>中随机选取(a,b),/>表示{0,1,…N-1}中与N互素的数组成的集合,计算g=(1+N)a×bNmodN2,公钥PK=(g,N,θ=aMβmodN),联合私钥SK=βM;按照Shamir(t,n)门限秘密分享方案将联合私钥SK进行分享,t为门限阈值,n表示参与方数量,每个参与方得到份额si作为参与方各自的私钥ski;参数生成机构PG确定布隆过滤器的大小m、假阳率fpp和哈希函数的个数k,同时选择具体的k个哈希函数,将它们发送给每个参与方Pi,i=1,…,n;
步骤2,每个参与方Pi生成一个空的布隆过滤器将各自的隐私集合Xi中的元素添加至布隆过滤器/>然后利用公钥PK对布隆过滤器/>加密,得到各自的布隆过滤器密文/>并将各自的布隆过滤器密文/>发给云服务器/>
步骤3,指定参与方P1向云服务器发起请求,同时参与方P1将自己的私钥sk1分解为sk1=sk11sk12,并将sk11发给云服务器/>将sk12发给云服务器/>
步骤4,云服务器根据请求,先进行所有的隐私集合求交运算,再进行隐私集合求并运算,其中,隐私集合求交运算对应,将待求交集的隐私集合的布隆过滤器密文做加同态,隐私集合求并运算对应,利用密文乘法协议将待求并集的隐私集合的布隆过滤器密文做乘同态;云服务器/>将最后得到的密文/>发给其他参与方Pi,i=2,…,n,获得Pi的解密份额/>对Pi的解密份额/>做幂运算后累乘得到指定参与方解密所需的中间值SC,表示在密文中的位置;最终,云服务器/>将密文/>与中间值SC一同发送给指定参与方P1;
步骤5,指定参与方P1解密得到布隆过滤器明文利用布隆过滤器查询算法得到所求集合Xres的元素。
2.根据权利要求1所述的基于云服务器的多方隐私集合运算方法,其特征在于,步骤1包括如下子步骤:
步骤1.1,参数生成机构PG生成门限Paillier加密算法的参数N和M,其中,N=pq,p和q是两个素数,M=p’q’,p=2p’+1,q=2q’+1,p’和q’也是素数,从/>中随机选择β,从/>中随机选取(a,b),计算g=(1+N)a×bNmodN2,公钥PK=(g,N,θ=aMβmodN),联合私钥SK=βM;将公钥PK公开,将联合私钥SK、p和q秘密保存,将(a,b)销毁;
步骤1.2,参数生成机构PG按照Shamir(t,n)门限秘密分享方案将联合私钥SK进行分享,每个参与方得到份额si作为参与方各自的私钥ski;其中t为门限阈值,n表示参与方数量;
步骤1.3,参数生成机构PG从中随机选择β′,从/>中随机选取(a′,b′),计算g′=(1+N)a′×(b′)NmodN2,将(a′,b′)销毁,得到云服务器/>的公私钥对(PKc,SKc),公钥PKc=(g′,N,θ′=a′Mβ′modN),私钥SKc=β′M;
步骤1.4,参数生成机构PG取一个参与方集合规模最大值vmax和布隆过滤器的假阳率fpp,再计算出布隆过滤器的大小m和布隆过滤器的哈希函数的个数k;
步骤1.5,参数生成机构PG选取布隆过滤器的k个哈希函数hl,将vmax、fpp、m、k和hl公开,l=1,…,k。
3.根据权利要求2所述的基于云服务器的多方隐私集合运算方法,其特征在于,计算布隆过滤器的大小m表示为:
其中,vmax为参与方集合规模最大值,fpp为布隆过滤器的假阳率。
4.根据权利要求3所述的基于云服务器的多方隐私集合运算方法,其特征在于,计算布隆过滤器的哈希函数的个数k表示为:
其中,m为布隆过滤器的大小。
5.根据权利要求2-4任一项所述的基于云服务器的多方隐私集合运算方法,其特征在于,步骤2包括如下子步骤:
步骤2.1,每个参与方Pi生成一个空的布隆过滤器BFi,即布隆过滤器BFi中每个位置的值都初始化为1;
步骤2.2,每个参与方Pi对其隐私集合中的元素xj∈Xi,计算:
h1(xj),...,hl(xj),...,hk(xj)
其中,hI(xj)表示元素xj由布隆过滤器的哈希函数hl计算得到的哈希函数值,j=1,…,vi,vi表示隐私集合Xi的大小;
步骤2.3,每个参与方Pi以步骤2.2中得到的哈希函数值为索引值,在空的布隆过滤器BFi中找到对应位置,并将对应位置的数值置为0,每个参与方Pi得到各自的布隆过滤器
其中,表示布隆过滤器/>第j个位置的值,j=1,…,m;
步骤2.4,每个参与方Pi利用门限Paillier加密算法对布隆过滤器进行加密,得到各自的布隆过滤器密文/>并将其发给云服务器/>
其中,表示布隆过滤器密文/>的第j个位置密文,ri,随机选自/>
6.根据权利要求5所述的基于云服务器的多方隐私集合运算方法,其特征在于,步骤3包括如下子步骤:
步骤3.1,指定参与方P1用云服务器的公钥PKc加密期待获得的集合Xres的表达式:
其中,Xres表示指定参与方P1期待得到的集合,α是一个常数,I1,I1,…Iα为某些参与方ID的集合;
步骤3.2,指定参与方P1向云服务器发送集合Xres的表达式的密文和自己的ID;
步骤3.3,指定参与方P1随机选择sk11,将其私钥sk1分解为sk1=sk11sk12,并将sk11发给云服务器将sk12发给云服务器/>
7.根据权利要求6所述的基于云服务器的多方隐私集合运算方法,其特征在于,步骤4包括如下子步骤:
步骤4.1,云服务器通过自己的私钥SKc解密得到Xres的表达式;
步骤4.2,计算交集对应的布隆过滤器密文,/>
云服务器选择隐私集合Xi所对应的布隆过滤器密文/>利用门限Paillier加密算法的加法同态性,将|Iy|个布隆过滤器密文/>对应位置相乘,得到/>对应的布隆过滤器的密文:
其中,表示对应的加密布隆过滤器第j个位置的密文,y=1,2,…,α;
步骤4.3,计算并集对应的布隆过滤器密文,α为常数:
步骤4.3.1,云服务器将对应的布隆过滤器密文/>两两分组,输入至密文乘法协议,得到协议输出密文;
步骤4.3.2,如上轮分组有轮空密文,则将密文乘法协议输出密文与轮空的密文一起两两分组,作为本轮密文乘法协议的输入,得到协议输出密文;
步骤4.3.3,如上轮只有一个分组且没有轮空密文,则得到EPK(BFXres),即为上轮密文乘法协议的输出,表示集合/>对应的布隆过滤器密文;
步骤4.4,云服务器将最后得到的密文/>发给其他参与方Pi,i=2,…,n,表示Xres对应的加密布隆过滤器第j个位置的密文;
步骤4.5,其他参与方Pi,i=2,…,n,利用其各自的私钥ski计算解密份额:
其中,表示在密文中的位置,Δ为n!,并将解密份额/>发给云服务器/>
步骤4.6,云服务器计算指定参与方P1解密/>所需的中间值SC:
SC=(SC1,SC2,…,SCm)
其中,I为t个具有有效私钥成分的参与方的标号集合;
步骤4.7,将密文和指定参与方P1解密/>所需的中间值SC一同发送给指定参与方P1。
8.根据权利要求7所述的基于云服务器的多方隐私集合运算方法,其特征在于,步骤5包括如下子步骤:
步骤5.1,指定参与方P1首先利用其私钥sk1对对应的密文中的每个/>进行幂计算,得到/>
步骤5.2,在指定参与方P1接收到中间值SC后,进行解密:
其中,函数
步骤5.3,若Mj=0,则否则/>
步骤5.4,指定参与方P1通过步骤5.1~5.3获得布隆过滤器明文后,利用布隆过滤器查询算法得到集合Xres。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310535931.0A CN116561799A (zh) | 2023-05-12 | 2023-05-12 | 一种基于云服务器的多方隐私集合运算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310535931.0A CN116561799A (zh) | 2023-05-12 | 2023-05-12 | 一种基于云服务器的多方隐私集合运算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116561799A true CN116561799A (zh) | 2023-08-08 |
Family
ID=87497755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310535931.0A Pending CN116561799A (zh) | 2023-05-12 | 2023-05-12 | 一种基于云服务器的多方隐私集合运算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116561799A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579273A (zh) * | 2024-01-12 | 2024-02-20 | 蓝象智联(杭州)科技有限公司 | 一种不暴露交集id的隐私集合求交方法和系统 |
-
2023
- 2023-05-12 CN CN202310535931.0A patent/CN116561799A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579273A (zh) * | 2024-01-12 | 2024-02-20 | 蓝象智联(杭州)科技有限公司 | 一种不暴露交集id的隐私集合求交方法和系统 |
CN117579273B (zh) * | 2024-01-12 | 2024-04-30 | 蓝象智联(杭州)科技有限公司 | 一种不暴露交集id的隐私集合求交方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Boneh et al. | Fully key-homomorphic encryption, arithmetic circuit ABE and compact garbled circuits | |
CN109657489B (zh) | 一种隐私保护的集合交集两方安全计算方法及系统 | |
Wang et al. | Ciphertext-policy attribute-based encryption with delegated equality test in cloud computing | |
CN107196926B (zh) | 一种云外包隐私集合比较方法与装置 | |
CN110008717A (zh) | 支持隐私保护的决策树分类服务系统及方法 | |
CN113518092B (zh) | 实现多方隐私的集合交集方法 | |
US8340284B2 (en) | Key generation device, key derivation device, encryption device, decryption device, method and program | |
Wang et al. | Controlled secure social cloud data sharing based on a novel identity based proxy re-encryption plus scheme | |
WO2021190452A1 (zh) | 用于云雾协助物联网的轻量级属性基签密方法 | |
CN105763528B (zh) | 一种混合机制下多重接收者匿名的加密装置 | |
CN116561799A (zh) | 一种基于云服务器的多方隐私集合运算方法 | |
Cui et al. | An efficient attribute-based multi-keyword search scheme in encrypted keyword generation | |
CN115442134A (zh) | 一种基于同态双向代理重加密的多密钥多方安全计算方法 | |
Mahdavi et al. | Practical over-threshold multi-party private set intersection | |
CN115037439A (zh) | 一种适合小集合的多方隐私集合求交方法及系统 | |
CN114697042A (zh) | 一种基于区块链的物联网安全数据共享代理重加密方法 | |
CN114095171A (zh) | 一种基于身份的可穿刺代理重加密方法 | |
CN110890961B (zh) | 一种新型安全高效的多授权属性基密钥协商协议 | |
Wei et al. | Cost-effective and scalable data sharing in cloud storage using hierarchical attribute-based encryption with forward security | |
CN104144057A (zh) | 一种生成安全解密密钥的cp-abe方法 | |
CN115643016A (zh) | 基于cp-abe的关键字隐藏搜索方法 | |
Backes et al. | Fully secure inner-product proxy re-encryption with constant size ciphertext | |
Lin et al. | Research on authentication and key negotiation based on smart water environment | |
Koshiba et al. | New assumptions on isogenous pairing groups with applications to attribute-based encryption | |
Wang et al. | Secure outsourced calculations with homomorphic encryption |
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 |