CN112966283B - 基于多方集合求交集的垂直分区数据pparm方法 - Google Patents

基于多方集合求交集的垂直分区数据pparm方法 Download PDF

Info

Publication number
CN112966283B
CN112966283B CN202110305457.3A CN202110305457A CN112966283B CN 112966283 B CN112966283 B CN 112966283B CN 202110305457 A CN202110305457 A CN 202110305457A CN 112966283 B CN112966283 B CN 112966283B
Authority
CN
China
Prior art keywords
sender
receiver
matrix
value
result
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
CN202110305457.3A
Other languages
English (en)
Other versions
CN112966283A (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN202110305457.3A priority Critical patent/CN112966283B/zh
Publication of CN112966283A publication Critical patent/CN112966283A/zh
Application granted granted Critical
Publication of CN112966283B publication Critical patent/CN112966283B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes
    • 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
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于多方集合求交集的垂直分区数据PPARM方法,主要解决现有技术通信量代价大、隐私保护不足的技术问题。其方案包括:1)发送方对数据进行预处理;2)协议一执行阶段:首先,发送方加密随机矩阵,接收方利用同态加密算法计算加密中间值;然后,发送方利用散列函数的抗碰撞性进行结果验证;最后,接收方解密,得到支持度;3)协议二执行阶段:此阶段与协议一的区别在于将验证结果先进行盲化处理,以掩盖真实支持度,最后进行安全比较。本发明能够实现随着参与站点的增多,在达到隐私级别一时,具有较小的通信轮数,并在达到隐私级别二时,无需引入完全可信的第三方服务器;从而有效降低通信代价、提高信息私密性。

Description

基于多方集合求交集的垂直分区数据PPARM方法
技术领域
本发明属于电子技术领域,进一步涉及集合求交集技术,具体为一种基于多方集合求交集的垂直分区数据隐私保护关联规则挖掘PPARM方法。可用于在垂直分区上通过对各个站点的信息进行加密,实现对站点信息的隐私保护。
背景技术
随着数据采集和存储技术的迅速发展,以及数据生成与传播便捷性的提升,致使数据爆炸性增长,最终形成了当前的大数据时代。在商业和工业、科学和工程、以及政府和个人等各个社会领域,通过对这些数据集进行可行的深入分析,从而做出决策,已经变得越来越重要。然而,数据的数量、多样性以及收集和处理的速度对于人类来说都太大了,无法进行独立分析。因此,数据挖掘DM作为一种将传统的数据分析方法与用于处理大量数据的复杂算法相结合的技术,也变得越来越流行,并被广泛的应用于一些应用程序中,例如超市预测、天气预报、网络流量管理、电子医疗系统、风险管理、入侵检测等。
关联规则挖掘ARM是最常用的数据挖掘算法之一,主要目的是提取频繁项目组合的规则,并从中推断出有价值的结果。ARM经常被用于简化销售、优化电子商务广告、减轻软件开发障碍等诸多应用程序。近年来,不同领域的组织或者机构被要求进行合作来创造出新的价值。在数据合并和挖掘阶段,很容易暴露各个参与方的机密信息,如果这些信息被不法分子利用,可能会造成严重的商业信息泄露或者社会不良影响。如何在保护参与方数据的隐私性前提下,安全的进行关联规则挖掘这一问题,逐渐成为人们关注的重点。因此,隐私保护关联规则挖掘PPARM的概念被人们提出来,并且吸引越来越多的人参与研究。
目前,基于分布式数据环境下的隐私保护关联规则挖掘PPARM主要分为两类:1)基于加密的方法,这种方法多应用于外包云服务器的场景中。2)基于安全多方计算的方法,这种方法旨在通过联合数据库的协作,挖掘出全局关联规则而不向其他参与方透漏自己的数据。
Jaideep Vaidya和Chris Clifton在文献“Secure set intersectioncardinality with application to association rule mining”(Department ofComputer Sciences,Purdue University,2004)中首次给出了在关联规则挖掘方案中使用集合交集,但在该方案中,通信轮数随着参与站点的个数线性增长,具有较大的通信代价,且在交互的最终结果中会暴露备选项集的支持度。Boris Rozenberg和EhudGudes在文献“Association rules mining in vertically partitioned databases”(Department ofComputer Science,Ben-GurionUniversity,2006)中同样使用集合交集来进行关联规则挖掘,该方案的通信轮数依旧随着参与站点的个数呈线性增长,具有较大的通信代价,虽然同时支持最终交互结果只暴露备选项集支持度和支持度是否超过阈值这一信息,但在隐私级别二中需要引入一个完全可信的第三方服务器。K.Nomura在文献“Secure AssociationRule Mining on Vertically Partitioned Data Using Private Set Intersection”(IEEEAccess,Kobe University,2020)中提出了一个两方的使用集合交集的关联规则挖掘方案,但在实际应用场景中,存在多个参与方,其互相协作去挖掘全局关联规则,导致该方法具有很大局限性。Michael等人在文献“Efficient Private Matching and SetIntersection”(EUROCRYPT,NewYorkUniversity,2004)中提出了一个多方集合求交集的方案,但该方案最终的交互结果会暴露交集中各个项的信息。综上,现有技术存在交互阶段通信量较大、对隐私保护不够完善以及局限性的技术问题。
发明内容
本发明的目的是针对上述现有技术的缺陷与不足,提出一种在多个站点参与下使用集合求交集来进行关联规则挖掘的更安全和高效的方案,用于解决现有技术中存在的通信代价较大和泄露隐私信息的技术问题。
为实现上述目的,本发明的思路是使用集合求交集的技术,利用哈希函数的抗碰撞性,同时使用Paillier同态密码对参与方的信息进行加解密,利用同态Paillier密码的同态特性计算中间数据和支持度信息,通过向支持度添加噪声进行盲化,并与指定阈值信息进行安全比较,最终每一个参与方在较少通信轮数条件下,只知道支持度信息或者支持度是否超过指定阈值这一信息,从而有效降低通信代价、提高信息私密性。
本发明采取的技术方案包括如下步骤:
(1)参与方Ai生成加密公私钥对(pki,ski)和哈希函数Hi(·),其中i=1,2,…,n表示参与方编号,n表示参与方的总个数;在n个参与方中,令前n-1个为发送方Al、第n个为接收方An;发送方Al中包含主发送方Aq和辅发送方An-1,其中q=1,2,…,n-2;
(2)数据预处理:
(2.1)对发送方Al输入s维向量数据
Figure BDA0002983273260000031
发送方Al利用哈希分配桶思想对该向量数据进行处理,得到处理后的数据
Figure BDA0002983273260000032
其中l=1,2,…,n-1表示发送方编号;
(2.2)接收方An利用哈希函数Hn(·)加密自身数据
Figure BDA0002983273260000033
得到加密数据
Figure BDA0002983273260000034
(3)发送方Al生成随机矩阵并将该矩阵加密:
(3.1)构建剩余类环
Figure BDA0002983273260000035
其中N表示Paillier同态加密算法的公开参数,在剩余类环中均匀且随机的选取一个s×(n-1)随机矩阵Bl,且该矩阵满足每一行的异或和为0;
(3.2)发送方Al将矩阵Bl的每一列元素均使用相应公钥进行加密,得到第一加密矩阵
Figure BDA0002983273260000036
并将
Figure BDA0002983273260000037
Figure BDA0002983273260000038
发送给接收方An
(4)接收方An根据Paillier同态加密算法的性质,利用
Figure BDA0002983273260000039
计算中间加密值,得到元组Ψ,采用置换函数τ对元组进行置换处理,得到置换结果Ψ*,并将该结果发送给发送方Al
(5)发送方执行解密操作:
(5.1)发送方Al从Ψ*中的每一列提取第(l-1)F+1行和第lF之间的元素,记为Nj l,并将Nj l在垂直方向上进行拼接得到矩阵Nl;其中,F表示数据预处理阶段哈希桶的个数,j=1,2,…,s;
(5.2)发送方Al收到来自其他发送方的加密矩阵
Figure BDA00029832732600000310
之后,首先构造一个sF×(n-1)维的矩阵Wl
Figure BDA0002983273260000041
其中,
Figure BDA0002983273260000042
表示用公钥pkl执行加密操作,βs,l n-1表示矩阵Bl中的元素;
(5.3)将Nl与Wl在水平方向上进行拼接得到拼接矩阵Nl||Wl,其中||表示水平方向上的拼接操作;利用私钥skl解密拼接矩阵Nl||Wl,得到第一解密矩阵V。
(5.4)发送方Al对V的每一行进行异或运算,得到结果Di l
(6)构建隐私级别一:
(6.1)发送方Al利用哈希函数的抗碰撞性进行结果验证:
Figure BDA0002983273260000043
其中:
Figure BDA0002983273260000044
表示异或运算;
如果验证成功,则发送方Al用接收方An的公钥pkn加密值1后得到加密数据,并发送给参与方An-1;反之,发送方Al用接收方An的公钥pkn加密值0后得到加密数据,并发送给参与方An-1
参与方An-1利用随机置换函数π将收到的加密数据顺序扰乱,得到置换后的第一加密数据δ*,并将δ*发送给接收方An
(6.2)接收方An利用Paillier同态加密算法的性质进行解密,得到多方集合交集的大小,即第一解密结果d:
Figure BDA0002983273260000045
其中,δ* z表示δ*的分量,且z=1,2,…,(n-1)F;
(7)构建隐私级别二:
(7.1)发送方中的主发送方Aq在剩余类环
Figure BDA0002983273260000046
上产生一个随机数,记为第一随机数αq;接收方An在剩余类环
Figure BDA0002983273260000051
上产生一个随机数,记为第二随机数α,并将其发送给辅发送方An-1
(7.2)发送方Al利用散列函数的抗碰撞性进行结果验证,验证公式如下:
Figure BDA0002983273260000052
主发送方验证:如果主发送方Aq验证成功,则Aq用接收方An的公钥pkn加密值1+αq反之,Aq用接收方An的公钥pkn加密值0+αq;最终得到第一加密值
Figure BDA0002983273260000053
并将其发送给辅发送方An-1
辅发送方验证:如果辅发送方An-1验证成功,则An-1用接收方An的公钥pkn加密值1+α。否则,An-1用接收方An的公钥pkn加密值0+α;最终得到第二加密值
Figure BDA0002983273260000054
辅发送方An-1利用随机置换函数π将收到的第一加密值
Figure BDA0002983273260000055
和自身得到的第二加密值
Figure BDA0002983273260000056
顺序扰乱,得到置换后的第二加密数据σ*,并将其发送给接收方An
(7.3)接收方An利用Paillier同态加密算法的性质进行解密,得到第二解密结果d':
d'=Dec(σ* 1×σ* 2×…×σ* z×…×σ* (n-1)F)
其中,σ* z表示σ*的分量,且z=1,2,…,(n-1)F;并将第二解密结果d'发送给主发送方Aq
(7.4)主发送方Aq依次进行去除噪声操作:
发送方A1利用第二解密结果d'减去随机数α1得到d1',并将d1'传递给其右邻居A2;A2利用d1'减去随机数α2得到d2',并将d2'传递给其右邻居A3;以此类推,直到中间数值dn-2'传递到辅发送方An-1
(7.5)设定全局支持度阈值为suppmin,接收方An将值suppmin+α发送给辅发送方An-1,辅发送方An-1判断下式是否成立:
dn-2≥suppmin
若成立,则辅发送方An-1发送"Yes"给接收方An,即代表多方集合的交集是一个频繁项集;反之,辅发送An-1发送"No"给接收方An,即代表多方集合的交集不是一个频繁项集。
本发明与现有技术相比,具有以下优点:
第一、本发明采用效率更高的安全集合求交集技术,使得随着参与站点个数的增加,在较少通信轮数的条件下达到隐私级别一;
第二、由于本发明采用散列函数,利用其抗碰撞性,使得发送方在验证阶段无法获得接收方集合中真实的数据;
第三,由于本发明采用Paillier同态加密算法的性质,使得接收方利用关于输入产生的多项式的加密系数,便可以计算出待验证数据,且最终只利用验证结果的乘积,解密该值便可得到相应的支持度值,有效保证了方案的安全性;
第四、本发明在验证部分采用添加噪声技术对原始支持度进行盲化,使得在不引入完全可信第三方服务器的前提下,达到隐私级别二,弱化了现存方案中的假设条件。
附图说明
附图1为本发明的实现流程图。
具体实施方式
下面结合附图1,对本发明实现的步骤作进一步的详细描述。
实施例一:
参照图1,本发明提出的一种基于多方集合求交集的垂直分区数据PPARM方法,包括如下步骤:
步骤1,参与方Ai生成加密公私钥对(pki,ski)和哈希函数Hi(·),其中i=1,2,…,n表示参与方编号,n表示参与方的总个数;在n个参与方中,令前n-1个为发送方Al、第n个为接收方An;发送方Al中包含主发送方Aq和辅发送方An-1,其中q=1,2,…,n-2;
步骤2,数据预处理:
(2.1)对发送方Al输入s维向量数据
Figure BDA0002983273260000061
发送方Al利用哈希分配桶思想对该向量数据进行处理,得到处理后的数据
Figure BDA0002983273260000062
其中l=1,2,…,n-1表示发送方编号;具体按如下方式得到:
(2.1.1)按照下式,对输入每个发送方Al的s维向量进行分块:
Figure BDA0002983273260000071
其中,F=4rl表示块的个数,且rl是由Al随机选取,其大小约为在每一个交易集中实际存在物品的平均值;每一个块中至多包含E个元素;
(2.1.2)发送方Al对分好的块中每一个元素进行哈希处理;
(2.1.3)对于任意一个块Xl (h),发送方Al产生一个次数为E的多项式Ql (h),并利用Paillier同态加密算法的公钥pkl加密该多项式的系数,得到一组加密数据,即处理后的数据
Figure BDA0002983273260000072
Figure BDA0002983273260000073
其中,
Figure BDA0002983273260000074
表示发送方Al产生的多项式的所有系数,且k∈{0,1,…,s}。
(2.2)接收方An利用哈希函数Hn(·)加密自身数据
Figure BDA0002983273260000075
得到加密数据
Figure BDA0002983273260000076
步骤3,发送方Al生成随机矩阵并将该矩阵加密:
(3.1)构建剩余类环
Figure BDA0002983273260000077
其中N表示Paillier同态加密算法的公开参数,在剩余类环中均匀且随机的选取一个s×(n-1)随机矩阵Bl,且该矩阵满足每一行的异或和为0;本实施例给出矩阵的具体形式如下:
Figure BDA0002983273260000078
其中,βj,k l是发送方Al随机选取的元素,且k∈{1,…,n-1};
Figure BDA0002983273260000079
表示定义符号。
(3.2)发送方Al将矩阵Bl的每一列元素均使用相应公钥进行加密,得到第一加密矩阵
Figure BDA00029832732600000710
并将
Figure BDA00029832732600000711
Figure BDA00029832732600000712
发送给接收方An;具体是:针对矩阵的每一列k,每一个发送方Al分别用参与方Ak的公钥pkk进行加密,最终每一个发送方Al得到一个加密矩阵
Figure BDA00029832732600000713
Figure BDA0002983273260000081
步骤4,接收方An根据Paillier同态加密算法的性质,利用
Figure BDA0002983273260000082
计算中间加密值,得到元组Ψ,采用置换函数τ对元组进行置换处理,得到置换结果Ψ*,并将该结果发送给发送方Al;置换结果Ψ*具体按照如下方式得到:
(4.1)利用
Figure BDA0002983273260000083
计算中间加密值
Figure BDA0002983273260000084
Figure BDA0002983273260000085
其中,g=1,2,...,F,元素
Figure BDA0002983273260000086
是由An所选取的新的随机数;
(4.2)接收方An产生维数为s的元组Ψ:
Ψ=(F1,F2,…,Fs);
(4.3)接收方An采用置换函数τ对元组进行置换处理,得到置换结果Ψ*
Ψ:{ARefresh(Ψ),Ψ*=τ(Ψ)=τ(F1 *,F2 *,…,Fs *)},
其中Fi *表示接收方An将元组Ψ置换后的对应分量处的新元素,Ψ*中的每一个元组含有(n-1)×F个元素。
步骤5,发送方执行解密操作:
(5.1)发送方Al从Ψ*中的每一列提取第(l-1)F+1行和第lF之间的元素,记为Nj l,并将Nj l在垂直方向上进行拼接得到矩阵Nl;其中,F表示数据预处理阶段哈希桶的个数,j=1,2,…,s;
(5.2)发送方Al收到来自其他发送方的加密矩阵
Figure BDA0002983273260000091
之后,首先构造一个sF×(n-1)维的矩阵Wl
Figure BDA0002983273260000092
其中,
Figure BDA0002983273260000093
表示用公钥pkl执行加密操作,βs,l n-1表示矩阵Bl中的元素;
(5.3)将Nl与Wl在水平方向上进行拼接得到拼接矩阵Nl||Wl,其中||表示水平方向上的拼接操作;利用私钥skl解密拼接矩阵Nl||Wl,得到第一解密矩阵V。
(5.4)发送方Al对V的每一行进行异或运算,得到结果Di l,具体步骤如下:
每个发送方Al进行如下计算:
Figure BDA0002983273260000094
其中,
Figure BDA0002983273260000095
表示发送方Al用私钥skl对加密数据解密后的值;关于计算结果
Figure BDA0002983273260000096
只保留
Figure BDA0002983273260000097
并重新定义为Dj l,每一个发送方Al将Dj l向其它发送方公开;
所有发送方Al按照下式计算得到结果Dj l
Figure BDA0002983273260000098
步骤6,构建隐私级别一:
(6.1)发送方Al利用哈希函数的抗碰撞性进行结果验证:
Figure BDA0002983273260000099
其中:
Figure BDA00029832732600000910
表示异或运算;
如果验证成功,则发送方Al用接收方An的公钥pkn加密值1后得到加密数据,并发送给参与方An-1;反之,发送方Al用接收方An的公钥pkn加密值0后得到加密数据,并发送给参与方An-1
参与方An-1利用随机置换函数π将收到的加密数据顺序扰乱,得到置换后的第一加密数据δ*,并将δ*发送给接收方An
(6.2)接收方An利用Paillier同态加密算法的性质进行解密,得到多方集合交集的大小,即第一解密结果d:
Figure BDA0002983273260000101
其中,δ* z表示δ*的分量,且z=1,2,…,(n-1)F;
步骤7,构建隐私级别二:
(7.1)发送方中的主发送方Aq在剩余类环
Figure BDA0002983273260000102
上产生一个随机数,记为第一随机数αq;接收方An在剩余类环
Figure BDA0002983273260000103
上产生一个随机数,记为第二随机数α,并将其发送给辅发送方An-1
(7.2)发送方Al利用散列函数的抗碰撞性进行结果验证,验证公式如下:
Figure BDA0002983273260000104
主发送方验证:如果主发送方Aq验证成功,则Aq用接收方An的公钥pkn加密值1+αq反之,Aq用接收方An的公钥pkn加密值0+αq;最终得到第一加密值
Figure BDA0002983273260000105
并将其发送给辅发送方An-1
辅发送方验证:如果辅发送方An-1验证成功,则An-1用接收方An的公钥pkn加密值1+α。否则,An-1用接收方An的公钥pkn加密值0+α;最终得到第二加密值
Figure BDA0002983273260000106
辅发送方An-1利用随机置换函数π将收到的第一加密值
Figure BDA0002983273260000107
和自身得到的第二加密值
Figure BDA0002983273260000108
顺序扰乱,得到置换后的第二加密数据σ*,并将其发送给接收方An
(7.3)接收方An利用Paillier同态加密算法的性质进行解密,得到第二解密结果d':
d'=Dec(σ* 1×σ* 2×…×σ* z×…×σ* (n-1)F)
其中,σ* z表示σ*的分量,且z=1,2,…,(n-1)F;并将第二解密结果d'发送给主发送方Aq
(7.4)主发送方Aq依次进行去除噪声操作:
发送方A1利用第二解密结果d'减去随机数α1得到d1',并将d1'传递给其右邻居A2;A2利用d1'减去随机数α2得到d2',并将d2'传递给其右邻居A3;以此类推,直到中间数值dn-2'传递到辅发送方An-1
(7.5)设定全局支持度阈值为suppmin,接收方An将值suppmin+α发送给辅发送方An-1,辅发送方An-1判断下式是否成立:
dn-2≥suppmin
若成立,则辅发送方An-1发送"Yes"给接收方An,即代表多方集合的交集是一个频繁项集;反之,辅发送An-1发送"No"给接收方An,即代表多方集合的交集不是一个频繁项集。
实施例二:
本实施例提供的基于多方集合求交集的垂直分区数据PPARM方法同实施例一,其具体实现步骤还可以概括如下:
步骤一,各个参与方Al将自己的数据进行预处理,主要分为三个阶段进行:
(一)分块阶段。按照下式,对每个发送方Al(l=1,2,…,n-1)输入的s维向量进行分块:
Figure BDA0002983273260000111
其中,
Figure BDA0002983273260000112
是发送方Al的输入,F=4rl个块,其中rl是由Al随机选取,大小约为在每一个交易集中实际存在物品的平均值,每一个块中至多有E个元素;
(二)哈希阶段。发送方Al使用自己产生的哈希函数Hl将分好的块中的每一个元素进行哈希处理;
(三)加密阶段。对于任意一个块Xl(h),Al产生一个次数为E的多项式Ql (h),然后发送方Al用自己的Paillier同态加密算法的公钥pkl加密产生的多项式的系数,最后每一个发送方Al得到一组加密数据:
Figure BDA0002983273260000121
其中,
Figure BDA0002983273260000122
表示发送方Al产生的多项式的所有系数,并且k∈{0,1,…,s},
Figure BDA0002983273260000123
表示发送方用自己的公钥pkl加密后的密文数据;
步骤二,协议一执行阶段,主要分为五步,具体步骤如下所示:
第一步,发送方执行。每一个发送方Al选择一个s×(n-1)维的随机矩阵Bl
Figure BDA0002983273260000124
其中βj,k l,j∈{1,2,...,s},k∈{1,…,n-1}是发送方Al随机选取的元素,
Figure BDA0002983273260000125
表示定义符号;
矩阵的每一行满足:
Figure BDA0002983273260000126
其中
Figure BDA0002983273260000127
表示异或运算;
针对矩阵的每一列k,每一个发送方Al分别用参与方Ak的公钥pkk进行加密,最终每一个发送方Al得到一个加密矩阵
Figure BDA0002983273260000128
Figure BDA0002983273260000129
发送方Al将加密矩阵
Figure BDA00029832732600001210
向其他发送方公开。随后,每一个发送方Al将在预处理阶段得到的加密系数和自己的哈希函数Hl一起发送给接收方An
第二步,接收方执行。接收方An使用自己的哈希函数Hn将自己的向量
Figure BDA0002983273260000131
中的每一个元素进行哈希处理:
Figure BDA0002983273260000132
然后接收方An
Figure BDA0002983273260000133
公开,并执行以下操作:
Step1:对于每一个分量
Figure BDA0002983273260000134
An准备n-1个随机共享
Figure BDA0002983273260000135
且这n-1个随机共享满足异或值等于
Figure BDA0002983273260000136
的哈希值
Figure BDA0002983273260000137
Figure BDA0002983273260000138
Step2:接收方An用发送方Al的公钥pkl计算:
Figure BDA0002983273260000139
其中,g=1,2,...,F,元素
Figure BDA00029832732600001310
是由An所选取的新的随机数。最终,接收方An产生维数为s的元组:
Ψ=(F1,F2,…,Fs)
其中Fi是该步骤中接收方An用发送方Al的公钥pkl计算出的结果。接收方An用自己的置换函数τ将Ψ进行置换,得到置换后的结果:
Ψ:{ARefresh(Ψ),Ψ*=τ(Ψ)=τ(F1 *,F2 *,…,Fs *)}
其中Fi *表示接收方An将Ψ置换后的对应分量处的新元素,在Ψ*中,每一个元组有(n-1)×F个元素,接收方An将这s个元组公开;
第三步,发送方执。每个发送方Al收到来自其他参与方的加密矩阵之后,首先构造一个sf×(n-1)维的新矩阵Wl
Figure BDA0002983273260000141
然后,发送方Al用自己私钥skl解密来自接收方的s个元组中用自己公钥pkl加密的数据和新构造的矩阵Wl。最后,每个发送方Al计算:
Figure BDA0002983273260000142
其中,
Figure BDA0002983273260000143
表示发送方Al用自己的私钥skl对加密数据解密后的值,关于计算结果Dj l,每一个发送方Al将其向其它发送方公开;
第四步,发送方执行。每一个发送方Al计算:
Figure BDA0002983273260000144
如果下式成立:
Figure BDA0002983273260000145
则发送方Al用接收方An的公钥pkn加密值1,即计算:
Figure BDA0002983273260000146
并将加密后的值
Figure BDA0002983273260000147
发送给参与方An-1。如果该公式不成立,则发送方Al用接收方An的公钥pkn加密值0,即计算:
Figure BDA0002983273260000148
并将加密后的值
Figure BDA0002983273260000149
发送给参与方An-1;最后,参与方An-1得到(n-1)×F个加密值:
δ=(δ1,...,δ(n-1)F)
参与方An-1用自己的置换函数π置换这些加密值:
π:{ARefresh(δ),δ*=π(δ)=(δ* 1,...,δ* (n-1)F)}
并将置换后的结果发送给接收方An
第五步,接收方执行。An计算:
Figure BDA0002983273260000151
解密结果d就是备选项集c的支持度supp(c)。
步骤三,协议二执行阶段,该阶段主要由7步组成,具体内容如下所示:
第1步,重复步骤2中协议一执行阶段的第一步、第二步和第三步;
第2步,参数生成;每一个主发送方Aq产生一个随机数:
Figure BDA0002983273260000152
接收方An产生一个随机数α,并将该随机数发送给辅发送方An-1
第3步,主发送方执行;每一个主发送Aq方计算:
Figure BDA0002983273260000153
如果下式成立:
Figure BDA0002983273260000154
主发送方Aq用接收方An的公钥pkn加密值1+αq,即计算:
Figure BDA0002983273260000155
并将加密后的结果发送给辅发送方An-1。如果上式不成立,则主发送方Aq用接收方An的公钥pkn加密值0+αq,即计算:
Figure BDA0002983273260000156
并将加密后的结果发送给辅发送方An-1
第4步,辅发送方执行;辅发送方An-1计算:
Figure BDA0002983273260000161
如果下式成立:
Figure BDA0002983273260000162
辅发送方An-1用接收方An的公钥pkn加密值1+α,即计算:
Figure BDA0002983273260000163
如果上式不成立,则辅发送方An-1用接收方An的公钥pkn加密值0+α,即计算:
Figure BDA0002983273260000164
最后,辅发送方An-1将拥有的(n-1)×F个加密数据向量σ,用自己的置换函数π进行置换,计算:
π:{ARefresh(δ),σ*=π(σ)=(σ* 1,...,σ* (n-1)F)}
之后,置换后的结果发送给接收方An
第5步,接收方执行;An计算:
d=Dec(σ* 1×σ* 2×…×σ* (n-1)F)
得到解密结果d;
第6步,主发送方执行;接收方An将得到的解密结果发送给主发送方A1,主发送方A1计算:
d1=T-α1
之后,将计算结果传递给下一个主发送方,下一个主发送方收到中间数值后,将该中间数值减去自身产生的随机数的值,类似操作继续执行,直到计算中间数值为:
dn-2=T-α12-…-αn-2
最后,dn-2传递到最后一个主发送方An-2
第7步,辅发送方执行:接收方An将值suppmin+α发送给辅发送方An-1,其中suppmin为设定的全局支持度阈值。辅发送方判断:
dn-2≥suppmin
得到的结果为以下两种情形:
情形1,若上述不等式成立,则辅发送方An-1发送"Yes"给接收方An,即代表被选项集c是一个频繁项集;
情形2,若上述不等式不成立,则辅发送An-1发送"No"给接收方An,即代表备选项集c不是一个频繁项集。
本发明在有多个站点以不共享各自隐私信息为前提条件,却想要获取全局关联规则挖掘结果的场景下,利用安全多方集合求交集,根据不同隐私级的需求,分别设计出最终交互结果只泄露支持度(隐私级别一)的协议一,以及最终交互结果只泄露支持度是否超过指定阈值(隐私级别二)的协议二;实现随着参与站点的增多,在达到隐私级别一时,具有较小的通信轮数,并在达到隐私级别二时,无需引入完全可信的第三方服务器;从而有效降低通信代价、提高信息私密性。
本发明未详细说明部分属于本领域技术人员公知常识。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变,但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。

Claims (6)

1.一种基于多方集合求交集的垂直分区数据隐私保护关联规则挖掘PPARM方法,其特征在于,包括如下步骤:
(1)参与方Ai生成加密公私钥对(pki,ski)和哈希函数Hi(·),其中i=1,2,…,n表示参与方编号,n表示参与方的总个数;在n个参与方中,令前n-1个为发送方Al、第n个为接收方An;发送方Al中包含主发送方Aq和辅发送方An-1,其中q=1,2,…,n-2;
(2)数据预处理:
(2.1)对发送方Al输入s维向量数据
Figure FDA0004064342580000011
发送方Al利用哈希分配桶思想对该向量数据进行处理,得到处理后的数据
Figure FDA0004064342580000012
其中l=1,2,…,n-1表示发送方编号;
(2.2)接收方An利用哈希函数Hn(·)加密自身数据
Figure FDA0004064342580000013
得到加密数据
Figure FDA0004064342580000014
(3)发送方Al生成随机矩阵并将该矩阵加密:
(3.1)构建剩余类环
Figure FDA0004064342580000015
其中N表示Paillier同态加密算法的公开参数,在剩余类环中均匀且随机的选取一个s×(n-1)随机矩阵Bl,且该矩阵满足每一行的异或和为0;
(3.2)发送方Al将矩阵Bl的每一列元素均使用相应公钥进行加密,得到第一加密矩阵
Figure FDA0004064342580000016
并将
Figure FDA0004064342580000017
Figure FDA0004064342580000018
发送给接收方An
(4)接收方An根据Paillier同态加密算法的性质,利用
Figure FDA0004064342580000019
计算中间加密值,得到元组Ψ,采用置换函数τ对元组进行置换处理,得到置换结果Ψ*,并将该结果发送给发送方Al
(5)发送方执行解密操作:
(5.1)发送方Al从Ψ*中的每一列提取第(l-1)F+1行和第lF之间的元素,记为Nj l,并将Nj l在垂直方向上进行拼接得到矩阵Nl;其中,F表示数据预处理阶段哈希桶的个数,j=1,2,…,s;
(5.2)发送方Al收到来自其他发送方的加密矩阵
Figure FDA0004064342580000021
之后,首先构造一个sF×(n-1)维的矩阵Wl
Figure FDA0004064342580000022
其中,
Figure FDA0004064342580000023
表示用公钥pkl执行加密操作,βs,l n-1表示矩阵Bl中的元素;
(5.3)将Nl与Wl在水平方向上进行拼接得到拼接矩阵Nl||Wl,其中||表示水平方向上的拼接操作;利用私钥skl解密拼接矩阵Nl||Wl,得到第一解密矩阵V;
(5.4)发送方Al对V的每一行进行异或运算,得到结果Dj l,j=1,2,...,s;
(6)构建隐私级别一:
(6.1)发送方Al利用哈希函数的抗碰撞性进行结果验证:
Figure FDA0004064342580000024
其中:
Figure FDA0004064342580000025
表示异或运算;
如果验证成功,则发送方Al用接收方An的公钥pkn加密值1后得到加密数据,并发送给参与方An-1;反之,发送方Al用接收方An的公钥pkn加密值0后得到加密数据,并发送给参与方An-1
参与方An-1利用随机置换函数π将收到的加密数据顺序扰乱,得到置换后的第一加密数据δ*,并将δ*发送给接收方An
(6.2)接收方An利用Paillier同态加密算法的性质进行解密,得到多方集合交集的大小,即第一解密结果d:
Figure FDA0004064342580000026
其中,δ* z表示δ*的分量,且z=1,2,…,(n-1)F;
(7)构建隐私级别二:
(7.1)发送方中的主发送方Aq在剩余类环
Figure FDA0004064342580000031
上产生一个随机数,记为第一随机数αq;接收方An在剩余类环
Figure FDA0004064342580000032
上产生一个随机数,记为第二随机数α,并将其发送给辅发送方An-1
(7.2)发送方Al利用散列函数的抗碰撞性进行结果验证,验证公式如下:
Figure FDA0004064342580000033
主发送方验证:如果主发送方Aq验证成功,则Aq用接收方An的公钥pkn加密值1+αq反之,Aq用接收方An的公钥pkn加密值0+αq;最终得到第一加密值
Figure FDA0004064342580000034
并将其发送给辅发送方An-1
辅发送方验证:如果辅发送方An-1验证成功,则An-1用接收方An的公钥pkn加密值1+α;否则,An-1用接收方An的公钥pkn加密值0+α;最终得到第二加密值
Figure FDA0004064342580000035
辅发送方An-1利用随机置换函数π将收到的第一加密值
Figure FDA0004064342580000036
和自身得到的第二加密值
Figure FDA0004064342580000037
顺序扰乱,得到置换后的第二加密数据σ*,并将其发送给接收方An
(7.3)接收方An利用Paillier同态加密算法的性质进行解密,得到第二解密结果d':
d'=Dec(σ* 1×σ* 2×…×σ* z×…×σ* (n-1)F)
其中,σ* z表示σ*的分量,且z=1,2,…,(n-1)F;并将第二解密结果d'发送给主发送方Aq
(7.4)主发送方Aq依次进行去除噪声操作:
发送方A1利用第二解密结果d'减去随机数α1得到d1',并将d1'传递给其右邻居A2;A2利用d1'减去随机数α2得到d2',并将d2'传递给其右邻居A3;以此类推,直到中间数值dn-2'传递到辅发送方An-1
(7.5)设定全局支持度阈值为suppmin,接收方An将值suppmin+α发送给辅发送方An-1,辅发送方An-1判断下式是否成立:
dn-2≥suppmin
若成立,则辅发送方An-1发送"Yes"给接收方An,即代表多方集合的交集是一个频繁项集;反之,辅发送An-1发送"No"给接收方An,即代表多方集合的交集不是一个频繁项集。
2.根据权利要求1所述的方法,其特征在于:步骤(2.1)中处理后的数据
Figure FDA0004064342580000045
具体按如下方式得到:
(2.1.1)按照下式,对输入每个发送方Al的s维向量进行分块:
Figure FDA0004064342580000041
其中,F=4rl表示块的个数,且rl是由Al随机选取,其大小为在每一个交易集中实际存在物品的平均值;每一个块中至多包含E个元素;
(2.1.2)发送方Al对分好的块中每一个元素进行哈希处理;
(2.1.3)对于任意一个块Xl (h),发送方Al产生一个次数为E的多项式Ql (h),并利用Paillier同态加密算法的公钥pkl加密该多项式的系数,得到一组加密数据,即处理后的数据
Figure FDA0004064342580000042
Figure FDA0004064342580000043
其中,
Figure FDA0004064342580000044
表示发送方Al产生的多项式的所有系数,且k∈{0,1,…,s}。
3.根据权利要求1所述的方法,其特征在于:步骤(3.1)中所述选取一个s×(n-1)随机矩阵Bl,具体如下:
Figure FDA0004064342580000051
其中,βj,k l是发送方Al随机选取的元素,且k∈{1,…,n-1};
Figure FDA0004064342580000059
表示定义符号。
4.根据权利要求1所述的方法,其特征在于:步骤(3.2)中所述第一加密矩阵
Figure FDA0004064342580000052
具体如下:针对矩阵的每一列k,每一个发送方Al分别用参与方Ak的公钥pkk进行加密,最终每一个发送方Al得到一个加密矩阵
Figure FDA0004064342580000053
Figure FDA0004064342580000054
5.根据权利要求1所述的方法,其特征在于:步骤(4)中置换结果Ψ*,具体按照如下方式得到:
(4.1)利用
Figure FDA0004064342580000055
计算中间加密值
Figure FDA0004064342580000056
Figure FDA0004064342580000057
其中,g=1,2,...,F,元素
Figure FDA0004064342580000058
是由An所选取的新的随机数;
(4.2)接收方An产生维数为s的元组Ψ:
Ψ=(F1,F2,…,Fs);
(4.3)接收方An采用置换函数τ对元组进行置换处理,得到置换结果Ψ*
Ψ:{ARefresh(Ψ),Ψ*=τ(Ψ)=τ(F1 *,F2 *,…,Fs *)},
其中Fi *表示接收方An将元组Ψ置换后的对应分量处的新元素,Ψ*中的每一个元组含有(n-1)×F个元素。
6.根据权利要求1所述的方法,其特征在于:步骤(5.4)中发送方Al对V的每一行进行异或运算,并去除重复值,得到结果Dj l,具体步骤如下:
每个发送方Al进行如下计算:
Figure FDA0004064342580000061
其中,
Figure FDA0004064342580000062
表示发送方Al用私钥skl对加密数据解密后的值;关于计算结果
Figure FDA0004064342580000063
只保留
Figure FDA0004064342580000064
并重新定义为Dj l,每一个发送方Al将Dj l向其它发送方公开;
所有发送方Al按照下式计算得到结果Dj l
Figure FDA0004064342580000065
CN202110305457.3A 2021-03-19 2021-03-19 基于多方集合求交集的垂直分区数据pparm方法 Active CN112966283B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110305457.3A CN112966283B (zh) 2021-03-19 2021-03-19 基于多方集合求交集的垂直分区数据pparm方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110305457.3A CN112966283B (zh) 2021-03-19 2021-03-19 基于多方集合求交集的垂直分区数据pparm方法

Publications (2)

Publication Number Publication Date
CN112966283A CN112966283A (zh) 2021-06-15
CN112966283B true CN112966283B (zh) 2023-04-18

Family

ID=76279582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110305457.3A Active CN112966283B (zh) 2021-03-19 2021-03-19 基于多方集合求交集的垂直分区数据pparm方法

Country Status (1)

Country Link
CN (1) CN112966283B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113259106B (zh) * 2021-06-28 2021-09-24 华控清交信息科技(北京)有限公司 一种数据处理方法和系统
CN113518092B (zh) * 2021-07-22 2022-08-26 西安电子科技大学 实现多方隐私的集合交集方法
CN113505386A (zh) * 2021-07-26 2021-10-15 上海点融信息科技有限责任公司 基于区块链和同态算法的数据处理方法、装置及存储介质
CN113364577B (zh) * 2021-08-06 2021-11-05 华控清交信息科技(北京)有限公司 一种oprf协议的实现方法、装置及电子设备
CN113792322B (zh) * 2021-11-15 2022-02-15 南京可信区块链与算法经济研究院有限公司 一种安全两方比较方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107203725A (zh) * 2017-05-23 2017-09-26 广东工业大学 一种垂直分布式关联规则挖掘隐私信息保护方法
CN110120873A (zh) * 2019-05-08 2019-08-13 西安电子科技大学 基于云外包交易数据的频繁项集挖掘方法
CN110176983A (zh) * 2019-05-22 2019-08-27 西安电子科技大学 基于全同态加密的隐私保护关联规则挖掘方法
CN110489448A (zh) * 2019-07-24 2019-11-22 西安理工大学 基于Hadoop的大数据关联规则的挖掘方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050021488A1 (en) * 2003-07-21 2005-01-27 Rakesh Agrawal Mining association rules over privacy preserving data
US20110131222A1 (en) * 2009-05-18 2011-06-02 Telcordia Technologies, Inc. Privacy architecture for distributed data mining based on zero-knowledge collections of databases

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107203725A (zh) * 2017-05-23 2017-09-26 广东工业大学 一种垂直分布式关联规则挖掘隐私信息保护方法
CN110120873A (zh) * 2019-05-08 2019-08-13 西安电子科技大学 基于云外包交易数据的频繁项集挖掘方法
CN110176983A (zh) * 2019-05-22 2019-08-27 西安电子科技大学 基于全同态加密的隐私保护关联规则挖掘方法
CN110489448A (zh) * 2019-07-24 2019-11-22 西安理工大学 基于Hadoop的大数据关联规则的挖掘方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Privacy preservation in vertical partitioned medical database in the cloud environments;Raghvendra Kumar 等;《2015 International Conference on Futuristic Trends on Computational Analysis and Knowledge Management (ABLAZE)》;20150713;第236-241页 *
Privacy-Preserving Association Rule Mining Using Homomorphic Encryption in a Multikey Environment;Hongping Pang;《IEEE》;20200629;第1-11页 *
数据垂直分布的隐私保护数据挖掘算法研究;乔冉冉;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130215(第02期);第I138-1258页 *

Also Published As

Publication number Publication date
CN112966283A (zh) 2021-06-15

Similar Documents

Publication Publication Date Title
CN112966283B (zh) 基于多方集合求交集的垂直分区数据pparm方法
Wu et al. Cryptanalysis and enhancements of image encryption based on three-dimensional bit matrix permutation
CN107657579B (zh) 基于dna编码和混沌的图像加密方法
CN104601596B (zh) 一种分类数据挖掘系统中数据隐私保护方法
Deshmukh et al. A novel approach for sharing multiple color images by employing Chinese Remainder Theorem
CN110795762A (zh) 基于流密码的保留格式加密方法
Gupta et al. Single secret image sharing scheme using neural cryptography
CN113255002B (zh) 一种保护多方隐私的联邦k近邻查询方法
Gafsi et al. High securing cryptography system for digital image transmission
Khan et al. DNA sequence based medical image encryption scheme
CN105721148A (zh) 一种基于双随机数的数据文件加密方法及系统
Song et al. Efficient and secure image encryption algorithm using a novel key-substitution architecture
Es-Sabry et al. Securing images using high dimensional chaotic maps and DNA encoding techniques
Sharkawy et al. Gray-scale image encryption using DNA operations
Kumar et al. Providing data security using DNA computing in the cloud computing environment
CN111682932B (zh) 一种基于混合混沌映射的单轮图像加密方法
Abdullatif et al. An enhanced hybrid image encryption algorithm using Rubik’s cube and dynamic DNA encoding techniques
Shawkat et al. Optimization-based pseudo random key generation for fast encryption scheme
Majumdar et al. DNA based cloud storage security framework using fuzzy decision making technique
CN116318890A (zh) 基于国产密码和加强密钥分散遥感仿真平台加密技术方法
Naeem Network security and cryptography challenges and trends on recent technologies
Sari et al. INTEGRATED NETWORK SYSTEM SECURITY TO DETERMINE GIS (GEOGRAPHIC INFORMATION SYSTEM) BASED CYBER CRIME PATTERNS
Yassin et al. A novel image encryption scheme based on DCT transform and DNA sequence
Yu et al. The chaotic feature of trigonometric function and its use for image encryption
AB et al. A New Security Mechanism for Secured Communications Using Steganography and CBA

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