CN114696991B - 基于同态加密的数据聚类方法及装置 - Google Patents

基于同态加密的数据聚类方法及装置 Download PDF

Info

Publication number
CN114696991B
CN114696991B CN202210609601.7A CN202210609601A CN114696991B CN 114696991 B CN114696991 B CN 114696991B CN 202210609601 A CN202210609601 A CN 202210609601A CN 114696991 B CN114696991 B CN 114696991B
Authority
CN
China
Prior art keywords
distance
receiver
initiator
state table
secret state
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
CN202210609601.7A
Other languages
English (en)
Other versions
CN114696991A (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.)
Lanxiang Zhilian Hangzhou Technology Co ltd
Original Assignee
Lanxiang Zhilian Hangzhou Technology Co ltd
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 Lanxiang Zhilian Hangzhou Technology Co ltd filed Critical Lanxiang Zhilian Hangzhou Technology Co ltd
Priority to CN202210609601.7A priority Critical patent/CN114696991B/zh
Publication of CN114696991A publication Critical patent/CN114696991A/zh
Application granted granted Critical
Publication of CN114696991B publication Critical patent/CN114696991B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

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

Description

基于同态加密的数据聚类方法及装置
技术领域
本申请涉及数据统计领域,具体而言,涉及一种基于同态加密的数据聚类方法、装置、计算机设备和存储介质。
背景技术
Kmeans即k均值聚类算法,是最经典的聚类算法之一。k均值聚类算法(k-meansclustering algorithm)是一种迭代求解的聚类分析算法,其步骤是,欲将数据分为K组,则随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。在联邦场景中,特征数据是分布在两方的,任一一方都无法直接计算样本到聚类中心的距离,也无法重新计算聚类中心。
现有的联邦Kmeans的算法方案是将数据汇集到一个中心节点,在中心节点进行迭代计算,因此现有的数据分类方法存在如下问题:
1、需要各方把数据出域到中心节点,有数据暴露的风险;
2、若中心节点被攻击,则各方数据都将泄露。
综上,亟需一种能够保护各方数据不被泄漏,安全性高的数据聚类方法及装置。
发明内容
本发明实施例提供一种基于同态加密的数据聚类方法、装置、计算机设备和存储介质,用以解决现有的数据聚类技术中由于需要各方把数据出域到中心节点,存在数据暴露的风险;以及如果中心节点被攻击,则各方数据都将被泄露的问题。
为了实现上述目的,本发明实施例的第一方面,提供一种基于同态加密的数据聚类方法,包括:
步骤1:随机抽取预设数量的样本作为初始簇中心;
步骤2:发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;
步骤3:发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;
步骤4:接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;
步骤5:发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;
步骤6:基于所述初步归属结果对所有样本进行新簇群的划分;
步骤7:计算各个新簇群的均值点,将其作为新簇群的中心点;
步骤8:重复步骤2至步骤7,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。
可选地,在第一方面的一种可能实现方式中,接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方,包括:
步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将密态表格发送至第二接收方或者返回发起方;
步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格发送至下一接收方或者返回发起方;
步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。
可选地,在第一方面的一种可能实现方式中,所述方法还包括在加解密之前生成 用于加密的公钥n和g,以及用于解密的私钥λ和
Figure DEST_PATH_IMAGE001
,其中生成过程如下:
随机选择两个素数p和q,满足gcd(pq,(p-1)(q-1))=1;
计算 n = pq和λ= lcm (p-1,q-1),其中lcm表示最小公倍数;
随机选择一个整数g,其中g是
Figure 100002_DEST_PATH_IMAGE002
的半随机数;
定义L函数,L(x)=(x-1)/n;
计算
Figure DEST_PATH_IMAGE003
,从而确定公钥(n,g),私钥(λ,
Figure 86412DEST_PATH_IMAGE001
)。
可选地,在第一方面的一种可能实现方式中,所述发起方利用公钥对所述发起方距离表格进行加密,包括:
输入所述发起方距离表格的明文信息;
选择随机数;
基于所述明文信息和所述随机数计算加密后的密文,从而得到密态表格。
可选地,在第一方面的一种可能实现方式中,所述使用私钥进行解密得到所有样本到各个簇中心的总距离,包括:
输入处理后的密态表格中的密文;
基于所述密文和所述L函数,计算明文信息。
可选地,在第一方面的一种可能实现方式中,所述根据同态加密算法将接收方距离表格中的距离数值增加至所述密态表格中,包括:
Figure 100002_DEST_PATH_IMAGE004
其中,c代表处理后的密态表格中的密文,
Figure DEST_PATH_IMAGE005
代表密态表格中的密文,
Figure 100002_DEST_PATH_IMAGE006
代表接收 方距离表格中的密文。
本发明实施例的第二方面,提供一种基于同态加密的数据聚类装置,包括:
初始簇中心抽取模块,用于随机抽取预设数量的样本作为初始簇中心;
距离表格绘制模块,用于发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;
密态表格生成模块,用于发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;
同态加密模块,用于接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;
样本初步归属模块,用于发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;
簇群划分模块,用于基于所述初步归属结果对所有样本进行新簇群的划分;
簇群中心点计算模块,用于计算各个新簇群的均值点,将其作为新簇群的中心点;
重复执行模块:用于重新执行距离表格绘制模块、密态表格生成模块、同态加密模块、样本初步归属模块、簇群划分模块、簇群中心点计算模块,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。
可选地,在第二方面的一种可能实现方式中,其特征在于,所述同态加密模块,包括:
步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至第二接收方;
步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至下一接收方或者返回发起方;
步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。
本发明实施例的第三方面,提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述各个方法实施例中的步骤。
本发明实施例的第四方面,提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现本发明第一方面及第一方面各种可能设计的所述方法的步骤。
本发明提供的基于同态加密的数据聚类方法、装置、计算机设备和存储介质,通过步骤1:随机抽取预设数量的样本作为初始簇中心;步骤2:发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;步骤3:发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;步骤4:接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;步骤5:发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;步骤6:基于所述初步归属结果对所有样本进行新簇群的划分;步骤7:计算各个新簇群的均值点,将其作为新簇群的中心点;步骤8:重复步骤2至步骤7,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。本发明不需要将各方数据出域到中心节点中,也就不存在数据暴露,以及各方数据被泄漏的风险,安全性高并且可靠。
附图说明
图1是基于同态加密的数据聚类方法的第一种实施方式的流程图;
图2是以有两个接收方为例的基于同态加密的数据聚类方法的实施流程图;
图3是基于同态加密的数据聚类装置的第一种实施方式的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含A、B和C”、“包含A、B、C”是指A、B、C三者都包含,“包含A、B或C”是指包含A、B、C三者之一,“包含A、B和/或C”是指包含A、B、C三者中任1个或任2个或3个。
应当理解,在本发明中,“与A对应的B”、“与A相对应的B”、“A与B相对应”或者“B与A相对应”,表示B与A相关联,根据A可以确定B。根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。A与B的匹配,是A与B的相似度大于或等于预设的阈值。
取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
本发明提供一种基于同态加密的数据聚类方法,如图1、图2所示其流程图,包括:
步骤S1、随机抽取预设数量的样本作为初始簇中心。
在本步骤中,需要人为在所有样本中抽选预设数量个样本作为第一轮的聚类中心,即初始簇中心;然后将第一轮作为簇中心的样本ID同步给接收方,本发明中的接收方数量不作限定,接收方数量决定了后续密态表格的距离数值。其中,图2展示了当有两个接收方时,基于同态加密的数据聚类的方法具体实施的流程图。
步骤S2、发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格。
在步骤S2中,在向所有接收方同步所有样本ID后,发起方和接收方各方都会统计每个样本到每个簇中心的距离,并据此绘制发起方距离表格和接收方距离表格。具体绘制距离表格步骤结合表1、表2所示:
表1
Figure DEST_PATH_IMAGE007
表2
Figure 100002_DEST_PATH_IMAGE008
其中,表1中的特征A与样本1的交点,特征B与样本1的交点代表A方(接收方或者发起方)有两个特征,在特征A下的样本1的距离位置为2,在特征B下的样本1的距离位置为3,因此在计算每个样本到每个簇中心的距离时需要考虑不同方所涉及特征的不同,针对每个特征下均计算每个样本到每个簇中心的距离;即如上图所示,计算样本1与簇中心K1的距离的过程分为两个步骤:1、在特征A的前提下,计算样本1与簇中心K1;2、在特征B的前提下,计算样本1与簇中心K1,合计(2-1)2+(3-2)2。上述各方的特征包括年龄、收入、话费、流量消耗等,不作具体限定。
步骤S3、发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方并将加密得到的密态表格和所述公钥发送至接收方。
在该步骤中,发起方会利用pailliar同态加密算法,对绘制好的发起方距离表格 中的距离数值进行加密。首先需要基于pailliar算法生成用于加密的公钥n和g,以及用于 解密的私钥λ和
Figure DEST_PATH_IMAGE009
,其中生成过程如下:
随机选择两个素数p和q,满足gcd(pq,(p-1)(q-1))=1;
计算 n = pq和λ= lcm (p-1,q-1),其中lcm表示最小公倍数;
随机选择一个整数g,其中g是
Figure 100002_DEST_PATH_IMAGE010
的半随机数;
定义L函数,L(x)=(x-1)/n;
计算
Figure DEST_PATH_IMAGE011
mod n,从而确定公钥(n,g),私钥(λ,
Figure 100002_DEST_PATH_IMAGE012
)。
然后利用生成的公钥n和g对发起方的距离表格中的距离数值进行加密,具体如下:
1、输入所述发起方距离表格的明文信息m,满足
Figure DEST_PATH_IMAGE013
2、选择随机数r,
Figure DEST_PATH_IMAGE014
3、基于所述明文信息和所述随机数计算加密后的密文,从而得到密态表格,即:
Figure DEST_PATH_IMAGE015
发起方在生成密钥后,会将所述密钥发送至各个接收方,以便于接收方利用所述密钥对自身表格中的距离数值进行加密。
步骤S4、接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方。
在该步骤中,接收方接收所述密态表格之前,需要先根据发起方发来的密钥对自身接收方距离表格中的距离数值进行加密,继而再根据同态加密算法将其增加至所述密态表格中。
在步骤S4中,包括:
步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将密态表格发送至第二接收方或者返回发起方;
步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格发送至下一接收方或者返回发起方;
步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。
在该步骤中,如图2所示,会根据接收方数量的多少,进行多次同态加法,也就是说:
当有一个接收方时,接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;
当有多个接收方时,第一接收方在将距离数值增加至所述密态表格后,后将同态后的密态表格发送至下一接收方,继续将下一接收方距离表格中的距离数值增加至所述密态表格,直至所有接收方的距离表格中的距离数值都逐一增加至所述密态表格中为止;然后将最后得到的密态表格返回至发起方。
在步骤S4中,基于如下公式将接收方距离表格中的距离数值增加至所述密态表格中。
Figure DEST_PATH_IMAGE016
其中,c代表处理后的密态表格中的密文,
Figure DEST_PATH_IMAGE017
代表密态表格中的密文,
Figure DEST_PATH_IMAGE018
代表接收 方距离表格中的密文。
步骤S5、发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;
在步骤S5中,在解密的过程中需要先输入处理后的密态表格中的密文c,满足
Figure DEST_PATH_IMAGE019
;然后利用所述密文c和所述L函数,计算明文信息m,
即:
Figure DEST_PATH_IMAGE020
mod n。
步骤S6、基于所述初步归属结果对所有样本进行新簇群的划分。
在该步骤中,发起方通过私钥对密态表格进行解密,得到所有样本到各个簇中心的总距离,从而判断出各个样本归属于哪个簇中心点,具体如表3所示:
表3
Figure DEST_PATH_IMAGE021
据表3可知:样本01距离簇中心K1最近,因此将样本01划分归属于K1;样本02距离簇中心K1最近,因此将样本02划分归属于K1;样本03距离簇中心K3最近,将样本03划分归属于K3。
步骤S7、计算各个新簇群的均值点,将其作为新簇群的中心点。
在步骤S7中,利用如下公式计算各个簇群的均值点;
Figure DEST_PATH_IMAGE022
步骤S8、重复步骤2至步骤7,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。
在步骤S8中,在计算出各个新簇群的均值点后,再分别计算各个样本到每个均值点的距离值,重新绘制距离表格,重复上述步骤S2-S7,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束;然后将最后的分类结果告知各方。
本发明提供的基于同态加密的数据聚类方法,通过步骤1:随机抽取预设数量的样本作为初始簇中心;步骤2:发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;步骤3:发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;步骤4:接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;步骤5:发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;步骤6:基于所述初步归属结果对所有样本进行新簇群的划分;步骤7:计算各个新簇群的均值点,将其作为新簇群的中心点;步骤8:重复步骤2至步骤7,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。本发明不需要将各方数据出域到中心节点中,也就不存在数据暴露,以及各方数据被泄漏的风险,安全性高并且可靠。
本发明的实施例还提供一种基于同态加密的数据聚类装置,如图3所示,包括:
初始簇中心抽取模块,用于随机抽取预设数量的样本作为初始簇中心;
距离表格绘制模块,用于发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;
密态表格生成模块,用于发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;
同态加密模块,用于接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;
样本初步归属模块,用于发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;
簇群划分模块,用于基于所述初步归属结果对所有样本进行新簇群的划分;
簇群中心点计算模块,用于计算各个新簇群的均值点,将其作为新簇群的中心点;
重复执行模块:用于重新执行距离表格绘制模块、密态表格生成模块、同态加密模块、样本初步归属模块、簇群划分模块、簇群中心点计算模块,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。
在一个实施例中,所述同态加密模块,包括:
步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至第二接收方;
步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至下一接收方或者返回发起方;
步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。
其中,可读存储介质可以是计算机存储介质,也可以是通信介质。通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。计算机存储介质可以是通用或专用计算机能够存取的任何可用介质。例如,可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)中。另外,该ASIC可以位于用户设备中。当然,处理器和可读存储介质也可以作为分立组件存在于通信设备中。可读存储介质可以是只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本发明还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得设备实施上述的各种实施方式提供的方法。
在上述终端或者服务器的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,DSP)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

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,以及用于解密的私钥λ和
Figure DEST_PATH_IMAGE002
,其中生成过程如下:
随机选择两个素数p和q,满足gcd(pq,(p-1)(q-1))=1;
计算 n = pq和λ= lcm (p-1,q-1),其中lcm表示最小公倍数;
随机选择一个整数g,其中g是
Figure DEST_PATH_IMAGE004
的半随机数;
定义L函数,L(x)=(x-1)/n;
计算
Figure DEST_PATH_IMAGE006
,从而确定公钥(n,g),私钥(λ,
Figure DEST_PATH_IMAGE002A
)。
4.根据权利要求3所述的基于同态加密的数据聚类方法,其特征在于,所述发起方利用公钥对所述发起方距离表格进行加密,包括:
输入所述发起方距离表格的明文信息;
选择随机数;
基于所述明文信息和所述随机数计算加密后的密文,从而得到密态表格。
5.根据权利要求3所述的基于同态加密的数据聚类方法,其特征在于,所述使用私钥进行解密得到所有样本到各个簇中心的总距离,包括:
输入处理后的密态表格中的密文;
基于所述密文和所述L函数,计算明文信息。
6.根据权利要求3所述的基于同态加密的数据聚类方法,其特征在于,所述根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,包括:
Figure DEST_PATH_IMAGE008
其中,c代表处理后的密态表格中的密文,
Figure DEST_PATH_IMAGE010
代表密态表格中的密文,
Figure DEST_PATH_IMAGE012
代表接收方距 离表格中的密文。
7.一种基于同态加密的数据聚类装置,其特征在于,包括:
初始簇中心抽取模块,用于随机抽取预设数量的样本作为初始簇中心;
距离表格绘制模块,用于发起方和至少一个接收方分别计算所有样本到每个初始簇中心的距离值,并以此绘制距离表格,所述距离表格包括发起方距离表格和接收方距离表格;
密态表格生成模块,用于发起方利用公钥对所述发起方距离表格进行加密,并将加密得到的密态表格和所述公钥发送至接收方;
同态加密模块,用于接收方在接收所述密态表格和所述公钥后,先根据所述公钥对所述接收方距离表格进行加密,再根据同态加密算法将加密后的接收方距离表格中的距离数值增加至所述密态表格中,并将处理后的密态表格返回至发起方;
样本初步归属模块,用于发起方在接收所述处理后的密态表格后,使用私钥进行解密得到所有样本到各个簇中心的总距离,并以此得到所有样本的初步归属结果;
簇群划分模块,用于基于所述初步归属结果对所有样本进行新簇群的划分;
簇群中心点计算模块,用于计算各个新簇群的均值点,将其作为新簇群的中心点;
重复执行模块:用于重新执行距离表格绘制模块、密态表格生成模块、同态加密模块、样本初步归属模块、簇群划分模块、簇群中心点计算模块,直至迭代次数达到预设阈值或者簇中心不再变化,分类结束。
8.根据权利要求7所述的基于同态加密的数据聚类装置,其特征在于,所述同态加密模块还用执行如下步骤,包括:
步骤4.1:第一接收方在接收所述密态表格后,根据同态加密算法将第一接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至第二接收方;
步骤4.2:第二接收方在接收所述密态表格后,根据同态加密算法将第二接收方距离表格中的距离数值增加至所述密态表格中,并将其发送至下一接收方或者返回发起方;
步骤4.3:根据接收方数量重复步骤4.1至步骤4.2,直至将所有接收方距离表格中的距离数值增加至所述密态表格中为止。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任意一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任意一项所述的方法的步骤。
CN202210609601.7A 2022-05-31 2022-05-31 基于同态加密的数据聚类方法及装置 Active CN114696991B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210609601.7A CN114696991B (zh) 2022-05-31 2022-05-31 基于同态加密的数据聚类方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210609601.7A CN114696991B (zh) 2022-05-31 2022-05-31 基于同态加密的数据聚类方法及装置

Publications (2)

Publication Number Publication Date
CN114696991A CN114696991A (zh) 2022-07-01
CN114696991B true CN114696991B (zh) 2022-09-20

Family

ID=82131037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210609601.7A Active CN114696991B (zh) 2022-05-31 2022-05-31 基于同态加密的数据聚类方法及装置

Country Status (1)

Country Link
CN (1) CN114696991B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116402505B (zh) * 2023-05-11 2023-09-01 蓝象智联(杭州)科技有限公司 基于同态加密的图扩散方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009071500A (ja) * 2007-09-12 2009-04-02 Ricoh Co Ltd 画像符号化装置、及び、画像符号化方法
JP2018124513A (ja) * 2017-02-03 2018-08-09 Kddi株式会社 分類装置、分類方法及び分類プログラム
CN109858269A (zh) * 2019-02-20 2019-06-07 安徽师范大学 一种基于同态加密的隐私保护密度峰聚类方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11341281B2 (en) * 2018-09-14 2022-05-24 International Business Machines Corporation Providing differential privacy in an untrusted environment
CN110190946B (zh) * 2019-07-12 2021-09-03 之江实验室 一种基于同态加密的隐私保护多机构数据分类方法
CN111143865B (zh) * 2019-12-26 2022-12-30 国网湖北省电力有限公司 一种密文数据上标签自动生成的用户行为分析系统及方法
CN111444545B (zh) * 2020-06-12 2020-09-04 支付宝(杭州)信息技术有限公司 针对多方的隐私数据进行聚类的方法和装置
CN113239393B (zh) * 2021-04-29 2022-03-22 重庆邮电大学 纵向联邦k-Means隐私保护方法、装置及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009071500A (ja) * 2007-09-12 2009-04-02 Ricoh Co Ltd 画像符号化装置、及び、画像符号化方法
JP2018124513A (ja) * 2017-02-03 2018-08-09 Kddi株式会社 分類装置、分類方法及び分類プログラム
CN109858269A (zh) * 2019-02-20 2019-06-07 安徽师范大学 一种基于同态加密的隐私保护密度峰聚类方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Privacy-preserving HE-based clustering for load profiling over encrypted smart meter data;Haomiao Yang;《ICC 2020 - 2020 IEEE International Conference on Communications (ICC)》;20200727;全文 *

Also Published As

Publication number Publication date
CN114696991A (zh) 2022-07-01

Similar Documents

Publication Publication Date Title
Liu et al. An efficient privacy-preserving outsourced calculation toolkit with multiple keys
Liu et al. Efficient and privacy-preserving outsourced calculation of rational numbers
CN111083631B (zh) 一种保护位置隐私和查询隐私的高效查询处理方法
WO2018184407A1 (zh) 一种具有隐私保护的K-means聚类方法及系统
CN107508678B (zh) 基于机器学习的rsa掩码防御算法的侧信道攻击方法
WO2019014425A1 (en) SAFE PARTY WITH SEVERAL PARTIES KNOWING NO VOICE IMPRESSIONS
CN108111294B (zh) 一种基于ML-kNN的保护隐私的多标记分类方法
CN109615021B (zh) 一种基于k均值聚类的隐私信息保护方法
Rao et al. Privacy techniques for edge computing systems
Yum et al. Order-preserving encryption for non-uniformly distributed plaintexts
CN109858269B (zh) 一种基于同态加密的隐私保护密度峰聚类方法
Jarrous et al. Secure hamming distance based computation and its applications
Gu et al. New public key cryptosystems based on non‐Abelian factorization problems
CN104011781A (zh) 信息处理设备、信息处理方法以及程序
CN113114454B (zh) 一种高效隐私的外包k均值聚类方法
CN113987558B (zh) 离线/在线基于格的属性基加密方法
CN114696991B (zh) 基于同态加密的数据聚类方法及装置
CN114553395B (zh) 一种风控场景下的纵向联邦特征衍生方法
CN114564730A (zh) 基于对称加密的联邦分组统计量计算方法、设备及介质
WO2008022158A2 (en) System for non-interactive zero-knowledge proofs
WO2024138854A1 (zh) 联邦学习预测阶段隐私保护方法及系统
CN112132578A (zh) 一种基于区块链的高效交易处理方法、追踪方法及装置
CN116842574A (zh) 数据查询方法、装置、设备及存储介质
CN116094708A (zh) Dbscan算法的隐私保护方法、终端及存储介质
WO2023059501A1 (en) Statistically private oblivious transfer from cdh

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