基于同态加密的数据聚类方法及装置制造方法及图纸

技术编号:33993704 阅读:47 留言:0更新日期:2022-07-02 10:21
本发明专利技术提供一种基于同态加密的数据聚类方法,通过随机抽取预设数量的样本作为初始簇中心;发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,绘制距离表格;发起方利用公钥对发起方距离表格进行加密;接收方根据同态加密算法将接收方距离表格中的距离数值增加至密态表格中;发起方在接收密态表格后使用私钥进行解密得到所有样本到各个簇中心的总距离,以此得到所有样本的归属结果;基于归属结果对所有样本进行新簇群的划分;计算各个新簇群的均值点,将其作为新簇群的中心点;重复上述步骤直至簇中心不再变化。本发明专利技术不需要将各方数据出域到中心节点中,不存在数据暴露、各方数据被泄漏的风险,数据安全性高且可靠。全性高且可靠。全性高且可靠。

【技术实现步骤摘要】
基于同态加密的数据聚类方法及装置


[0001]本申请涉及数据统计领域,具体而言,涉及一种基于同态加密的数据聚类方法、装置、计算机设备和存储介质。

技术介绍

[0002] Kmeans即k均值聚类算法,是最经典的聚类算法之一。k均值聚类算法(k

means clustering algorithm)是一种迭代求解的聚类分析算法,其步骤是,欲将数据分为K组,则随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。在联邦场景中,特征数据是分布在两方的,任一一方都无法直接计算样本到聚类中心的距离,也无法重新计算聚类中心。
[0003]现有的联邦Kmeans的算法方案是将数据汇集到一个中心节点,在中心节点进行迭代计算,因此现有的数据分类方法存在如下问题:1、需要各方把数据出域到中心节点,有数据暴露的风险;2、若中心节点被攻击,则各方数据都将泄露。
[0004]综上,亟需一种能够保护各方数据不被泄漏,安全性高的数据聚类方法及装置。

技术实现思路

[0005]本专利技术实施例提供一种基于同态加密的数据聚类方法、装置、计算机设备和存储介质,用以解决现有的数据聚类技术中由于需要各方把数据出域到中心节点,存在数据暴露的风险;以及如果中心节点被攻击,则各方数据都将被泄露的问题。
[0006]为了实现上述目的,本专利技术实施例的第一方面,提供一种基于同态加密的数据聚类方法,包括:步骤1:随机抽取预设数量的样本作为初始簇中心;步骤2:发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;步骤3:发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;步骤4:接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;步骤5:发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;
步骤6:基于所述初步归属结果对所有样本进行新簇群的划分;步骤7:计算各个新簇群的均值点,将其作为新簇群的中心点;步骤8:重复步骤2至步骤7,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。
[0007]可选地,在第一方面的一种可能实现方式中,接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方,包括:步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将密态表格发送至第二接收方或者返回发起方;步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格发送至下一接收方或者返回发起方;步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。
[0008]可选地,在第一方面的一种可能实现方式中,所述方法还包括在加解密之前生成用于加密的公钥n和g,以及用于解密的私钥λ和,其中生成过程如下:随机选择两个素数p和q,满足gcd(pq,(p

1)(q

1))=1;计算 n = pq和λ= lcm (p

1,q

1),其中lcm表示最小公倍数;随机选择一个整数g,其中g是的半随机数;定义L函数,L(x)=(x

1)/n;计算,从而确定公钥(n,g),私钥(λ,)。
[0009]可选地,在第一方面的一种可能实现方式中,所述发起方利用公钥对所述发起方距离表格进行加密,包括:输入所述发起方距离表格的明文信息;选择随机数;基于所述明文信息和所述随机数计算加密后的密文,从而得到密态表格。
[0010]可选地,在第一方面的一种可能实现方式中,所述使用私钥进行解密得到所有样本到各个簇中心的总距离,包括:输入处理后的密态表格中的密文;基于所述密文和所述L函数,计算明文信息。
[0011]可选地,在第一方面的一种可能实现方式中,所述根据同态加密算法将接收方距离表格中的距离数值增加至所述密态表格中,包括:
其中,c代表处理后的密态表格中的密文,代表密态表格中的密文,代表接收方距离表格中的密文。
[0012]本专利技术实施例的第二方面,提供一种基于同态加密的数据聚类装置,包括:初始簇中心抽取模块,用于随机抽取预设数量的样本作为初始簇中心;距离表格绘制模块,用于发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;密态表格生成模块,用于发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;同态加密模块,用于接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;样本初步归属模块,用于发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;簇群划分模块,用于基于所述初步归属结果对所有样本进行新簇群的划分;簇群中心点计算模块,用于计算各个新簇群的均值点,将其作为新簇群的中心点;重复执行模块:用于重新执行距离表格绘制模块、密态表格生成模块、同态加密模块、样本初步归属模块、簇群划分模块、簇群中心点计算模块,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。
[0013]可选地,在第二方面的一种可能实现方式中,其特征在于,所述同态加密模块,包括:步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至第二接收方;步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至下一接收方或者返回发起方;步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。
[0014]本专利技术实施例的第三方面,提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于同态加密的数据聚类方法,其特征在于,包括:步骤1:随机抽取预设数量的样本作为初始簇中心;步骤2:发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;步骤3:发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;步骤4:接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;步骤5:发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;步骤6:基于所述初步归属结果对所有样本进行新簇群的划分;步骤7:计算各个新簇群的均值点,将其作为新簇群的中心点;步骤8:重复步骤2至步骤7,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。2.根据权利要求1所述的基于同态加密的数据聚类方法,其特征在于,接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方,包括:步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将密态表格发送至第二接收方或者返回发起方;步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格发送至下一接收方或者返回发起方;步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。3.根据权利要求1所述的基于同态加密的数据聚类方法,其特征在于,所述方法还包括在加解密之前生成用于加密的公钥n和g,以及用于解密的私钥λ和,其中生成过程如下:随机选择两个素数p和q,满足gcd(pq,(p

1)(q

1))=1;计算 n = pq和λ= lcm (p

1,q

1),其中lcm表示最小公倍数;随机选择一个整数g,其中g是的半随机数;定义L函数,L(x)=(x

1)/n;计算,从而确定公钥(n,g),私钥(λ,)。4.根据权利要求3所述的基于同态加密的数据聚类方法,其特征在于,所述发起方利用公钥对所述发起方距离表格进行加密,包括:
输入所述发起方距离表格的明文信息;选择随机数;基于所述明文信息和所述随机数计算加密后...

【专利技术属性】
技术研发人员:宋鎏屹朱振超
申请(专利权)人:蓝象智联杭州科技有限公司
类型:发明
国别省市:

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

1