一种基于同态加密的隐私保护密度峰聚类方法技术

技术编号:21300112 阅读:35 留言:0更新日期:2019-06-12 08:03
本发明专利技术揭示了种基于同态加密的隐私保护的密度峰聚类方法,包括以下步骤:步骤1:聚类中心计算阶段:参与者需要加密自身隐私数据并发送给云服务商A来计算各个参与者之间的距离,再根据距离安全地计算聚类中心。步骤2:剩余参与者分配阶段:云服务商A要剔除离群点对应的参与者,以免对聚类结果产生影响。再根据DPC算法分配剩余参与者到其最近的簇中,最后分配离群的参与者。本发明专利技术基于同态加密的隐私保护密度峰聚类方法对于密度峰聚类具有较好的准确性,并且可以抵制合谋攻击,即使云服务商与n‑1个参与者勾结,也可以提供相互隐私保护。

A Privacy Protection Density Peak Clustering Method Based on Homomorphic Encryption

The invention discloses a density peak clustering method for privacy protection based on homomorphic encryption, which includes the following steps: step 1: cluster center calculation stage: participants need to encrypt their own privacy data and send it to cloud service provider A to calculate the distance between participants, and then calculate the cluster center safely according to the distance. Step 2: Residual Participant Assignment Stage: Cloud Service Provider A should eliminate the participants corresponding to outliers in order to avoid affecting the clustering results. Then, according to DPC algorithm, the remaining participants are allocated to the nearest cluster, and the outlier participants are finally allocated. The privacy protection density peak clustering method based on homomorphic encryption of the invention has good accuracy for density peak clustering, and can resist collusion attacks, even if cloud service providers collude with n_1 participants, they can also provide mutual privacy protection.

【技术实现步骤摘要】
一种基于同态加密的隐私保护密度峰聚类方法
本专利技术涉及密度聚类领域,具体涉及一种基于同态加密的隐私保护的密度峰聚类方法。
技术介绍
聚类作为数据挖掘重要的研究方法之一,其目的是将数据对象划分成若干个簇,使得簇中的对象相似度高,而每个簇之间对象的相似度低。在运用聚类分析的过程中,大量用户的隐私数据会被收集和分析,例如地理位置、健康状况以及情感状态等,这些信息一旦被泄露,将会造成严重的后果。因此,开发一种用户和云计算平台的相互隐私保护数据挖掘技术至关重要。隐私保护方法基本分为三大类,既k匿名技术、扰动技术和数据加密技术。k匿名技术包括泛化法和抑制法,可以对信息进行直接隐藏从而有效保护用户的隐私数据,但是该方法安全性不高,不能有效抵制链接攻击;扰动技术包括数据清洗、数据交换和随机化干扰,其中包括差分隐私技术,通过对原始数据随机加扰或者添加噪声来保护用户隐私,这种对数据干扰会影响计算结果的准确度;数据加密技术最典型的包括安全多方计算和同态加密算法,通过严谨的密码学原理得到的计算结果较为准确,并且安全性高,但是计算开销较大,所以本文使用同态加密算法并且借助云计算平台来进行计算。密度峰聚类(DensityPeaksClustering,DPC)是一种简单高效的聚类算法,其思想是:通过度量每一个样本点的局部密度和距离得到决策图;根据聚类中心点的特征,在决策图上选择最佳的聚类中心点;将剩余样本点分配到距其最近并拥有较高密度的样本所在簇中。使用DPC算法首先需要计算距离信息,该过程要利用参与者的隐私数据,则增加了泄露隐私的风险。
技术实现思路
本专利技术所要解决的技术问题是实现一种基于同态加密的隐私保护的密度峰聚类方法,该方法在云计算环境下的聚类过程中既不泄漏个人隐私信息也不泄漏聚类中心的信息。为了实现上述目的,本专利技术采用的技术方案为:一种基于同态加密的隐私保护的密度峰聚类方法,该方法在云计算环境下的聚类过程中既不泄漏个人隐私信息也不泄漏聚类中心的信息。包括以下步骤:步骤1:聚类中心计算阶段:参与者需要加密自身隐私数据并发送给云服务商A来计算各个参与者之间的距离,再根据距离安全地计算聚类中心。步骤2:剩余参与者分配阶段:云服务商A要剔除离群点对应的参与者,以免对聚类结果产生影响。再根据DPC算法分配剩余参与者到其最近的簇中,最后分配离群的参与者。如图2所示,聚类中心计算阶段包括以下步骤:步骤1.1.假定由n个参与者a1,...,an组成的聚类问题。每个参与者ai拥有自身的隐私信息利用以下公式,计算参与者ai和aj之间的欧式距离:步骤1.2.参与者ai和aj的隐私数据都是q维向量,分别表示为现在考虑aiTaj的值,公式如下:步骤1.3.计算出每个参与者到其他参与者之间的距离,计算公式如下:步骤1.4.p,q是两个大素数,n=pq,根据欧拉定理,L(n)=(p-1)(q-1),随机选择整数λ,e,使得gcd(λ,L(n))=1,eλ≡1(L(n)),则公钥PK为{n,e},私钥SK为{λ}。步骤1.5.明文空间M中的任意消息对应密文定义式如下:E(m)=memodn步骤1.6.对于密文E(m),相应的明文定义式如下:D(E(m))=E(m)λmodn步骤1.7.RSA密码系统是乘性同态的,满足以下条件:给定通过以下公式:E(m1·m2)=E(m1)·E(m2)步骤1.8.对于参与者的q维隐私数据,分别对其进行加密。例如,对于和A生成对应的随机数和满足:并且分别发送给和步骤1.9.参与者加密和加密是用同态加密系统的公钥PK来计算的。对于ai在接收到随机数后对进行加密。例如加密后得到步骤1.10.对于aj在接收到随机数后加密该维数据例如加密后得到步骤1.11.完成加密操作后,参与者与对方共享密文的一部分。这可以按照以下方式进行:首先,参与者将加密得到的隐私数据随机划分成p份和满足:步骤1.12.参与者再通过安全通道随机将q份发送给对方,其中0<q<p。注意,隐私数据和必须保留其中的p-q份。步骤1.13.参与者的每一维隐私数据可以从其他参与者对应维度的隐私数据接收密文片段。然后,参与者对所有接收到的密文分量以及自身保留的密文片段运用同态操作相乘得到r。例如将分成三份和将分成两份和然后将和发送给将发送给则步骤1.14.计算结束后发送给云服务商A,A将所有接收到的数据相乘,获得以下结果:步骤1.15.A通过私钥SK解密得到将所有维度的隐私数据的值相加。步骤1.16.参与者ai和aj分别计算aiTai和ajTaj的值,并发送给A,A再计算每个参与者之间的距离Dij。步骤1.17.A再计算聚类中心。如图3所示,剩余参与者分配阶段包括以下步骤:步骤2.1.在经过计算聚类中心阶段,云服务商A得到k个聚类中心,A再分配其余参与者到最近的簇中。步骤2.2.云服务商A进行分配之前先剔除离群点,定义式如下:clusterhalo={ai|dij<dc,1≤i≤nb,1≤j≤n}clustercore={ai|ρi>ρb,1≤i≤nb}其中clusterhalo为边界区域,dc为截断距离,nb为一个簇的样本个数,簇边界区域中大于平均密度的样本点的密度作为阈值ρb,为每一个簇定义一个阈值该簇的核心区域clustercore为密度大于的样本所构成,则该簇的其他样本为离群点。步骤2.3.对于非聚类中心的参与者aj,A将其归入密度比aj大且距离aj最近的参与者所在的簇中。步骤2.4.对于离群点oi,将其归并到最近的已分配参与者所在的簇中。本专利技术基于同态加密的隐私保护密度峰聚类方法对于密度峰聚类具有较好的准确性,并且可以抵制合谋攻击,即使云服务商与n-1个参与者勾结,也可以提供相互隐私保护。云服务商可以在不访问每个参与者隐私信息的情况下计算距离;每个参与者之间并不知道彼此的隐私信息;参与者不知道聚类中心的信息。这些信息是由云服务商计算并保护的。附图说明下面对本专利技术说明书中每幅附图表达的内容作简要说明:图1为基于同态加密的隐私保护的密度峰聚类方法流程图;图2为聚类中心计算阶段流程图;图3为分配剩余参与者阶段流程图。具体实施方式如图1所示,一种基于同态加密的隐私保护的密度峰聚类方法包括以下两个步骤:步骤1:聚类中心计算阶段:参与者需要加密自身隐私数据并发送给云服务商A来计算各个参与者之间的距离,再根据距离安全地计算聚类中心;步骤2:剩余参与者分配阶段:云服务商A要剔除离群点对应的参与者,以免对聚类结果产生影响,再根据DPC算法分配剩余参与者到其最近的簇中,最后分配离群的参与者。如图2所示,聚类中心计算阶段包括以下步骤:步骤1.1.假定由n个参与者a1,...,an组成的聚类问题。每个参与者ai拥有自身的隐私信息利用以下公式,计算参与者ai和aj之间的欧式距离:步骤1.2.参与者ai和aj的隐私数据都是q维向量,分别表示为现在考虑aiTaj的值,公式如下:步骤1.3.计算出每个参与者到其他参与者之间的距离,计算公式如下:步骤1.4.p,q是两个大素数,n=pq,根据欧拉定理,L(n)=(p-1)(q-1),随机选择整数λ,e,使得gcd(λ,L(n))=1,eλ≡1(L(n)),则公钥PK为{n,e},私钥SK为{λ}。步骤1.5.明文本文档来自技高网...

【技术保护点】
1.一种基于同态加密的隐私保护密度峰聚类方法,其特征在于,包括以下步骤:步骤1:在云计算环境下,参与者需要加密自身隐私数据并发送给云服务商A来计算各个参与者之间的距离,再根据距离安全地计算聚类中心;步骤2:云服务商A剔除离群点对应的参与者,再根据DPC算法分配剩余参与者到其最近的簇中,最后分配离群的参与者。

【技术特征摘要】
1.一种基于同态加密的隐私保护密度峰聚类方法,其特征在于,包括以下步骤:步骤1:在云计算环境下,参与者需要加密自身隐私数据并发送给云服务商A来计算各个参与者之间的距离,再根据距离安全地计算聚类中心;步骤2:云服务商A剔除离群点对应的参与者,再根据DPC算法分配剩余参与者到其最近的簇中,最后分配离群的参与者。2.根据权利要求1所述的基于同态加密的隐私保护密度峰聚类方法,其特征在于:所述步骤1中,先定义欧式距离、同态加密的概念,通过乘法同态加密方案安全的计算各个参与者之间的欧式距离,在参与者发送各自的隐私数据给云服务商A的过程中实施隐私保护方案。3.根据权利要求1所述的基于同态加密的隐私保护密度峰聚类方法,其特征在于:所述步骤2中,根据步骤1得到的聚类中心,云服务商A先识别离群点,再分配其余参与者到最近的簇中,最后分配离群点。4.根据权利要求1或2所述的基于同态加密的隐私保护密度峰聚类方法,其特征在于,所述步骤1包括以下步骤:步骤1.1、假定由n个参与者a1,...,an组成的聚类问题,每个参与者ai拥有自身的隐私信息利用以下公式,计算参与者ai和aj之间的欧式距离:步骤1.2、参与者ai和aj的隐私数据都是q维向量,分别表示为现在考虑aiTaj的值,公式如下:步骤1.3、计算出每个参与者到其他参与者之间的距离,计算公式如下:步骤1.4、p,q是两个大素数,n=pq,根据欧拉定理,L(n)=(p-1)(q-1),随机选择整数λ,e,使得gcd(λ,L(n))=1,eλ≡1(L(n)),则公钥PK为{n,e},私钥SK为{λ};步骤1.5、明文空间M中的任意消息对应密文定义式如下:E(m)=memodn;步骤1.6、对于密文E(m),相应的明文定义式如下:D(E(m))=E(m)λmodn;步骤1.7、RSA密码系统是乘性同态的,满足以下条件:给定通过以下公式:E(m1·m2)=E(m1)·E(m2);步骤1.8、对于参与者的q维隐私数据,分别对其进...

【专利技术属性】
技术研发人员:慈尚孙丽萍鲍舒婷俞庆英罗永龙
申请(专利权)人:安徽师范大学
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1