CN117349685A - 一种通信数据的聚类方法、系统、终端及介质 - Google Patents
一种通信数据的聚类方法、系统、终端及介质 Download PDFInfo
- Publication number
- CN117349685A CN117349685A CN202311236487.9A CN202311236487A CN117349685A CN 117349685 A CN117349685 A CN 117349685A CN 202311236487 A CN202311236487 A CN 202311236487A CN 117349685 A CN117349685 A CN 117349685A
- Authority
- CN
- China
- Prior art keywords
- clustering
- distance
- protocol
- data
- cluster
- 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 99
- 230000006854 communication Effects 0.000 title claims abstract description 48
- 238000004891 communication Methods 0.000 title claims abstract description 45
- 238000004364 calculation method Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims description 30
- 238000004422 calculation algorithm Methods 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 7
- 238000003064 k means clustering Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000002194 synthesizing effect Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 8
- 238000012549 training Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 5
- 241000566146 Asio Species 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005336 cracking Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000007430 reference method Methods 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- 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/602—Providing cryptographic facilities or services
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Small-Scale Networks (AREA)
Abstract
一种通信数据的聚类方法、系统、终端及介质,其特征在于,方法包括:步骤1,采用智能设备SD将用户数据处理为待聚类数据集X,并根据终端用户U的聚类用户请求获取聚类簇数K和迭代轮次T;步骤2,通过智能设备SD和终端用户U分别将X、K、T发送给边缘节点EN,并向边缘节点EN提交聚类服务请求;步骤3,利用边缘节点EN调用范式距离计算协议,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离,调用求最小值协议根据所述距离为所述样本点xi分配对应的聚类中心;步骤4,获取每一个所述样本点xi的聚类中心后,生成聚类结果E(μk),并将所述聚类结果E(μk)转发至提交过所述聚类用户请求的终端用户U进行解密。
Description
技术领域
本发明涉及通信领域,更具体的,涉及一种通信数据的聚类方法、系统、终端及介质。
背景技术
物联网(IoT)为智能城市的各个领域带来了巨大的好处(例如,智能交通系统、5G和虚拟现实)。其快速发展为城市居民带来了更加便捷、高效和个性化的服务,提高了城市的生活质量和竞争力。然而,物联网产生的数据量急剧增加,对计算和存储资源提出了更高的要求。仅通过云服务器存储和处理海量数据将带来严重的带宽和功耗问题。通过使用边缘节点,可以将一部分计算任务从中央数据中心转移到边缘节点,以减少延迟、节省带宽并提高数据隐私。边缘节点通常用于支持一些特殊的应用场景,如智能城市和物联网应用。
在智能城市中,机器学习被用于通过物联网分析复杂的数据和行业预测。由于其简单易实现,K-Means已成为最常见的机器学习模型之一,并被广泛应用于图像分割、社交网络分析、医疗诊断和风险评估等领域。简而言之,聚类算法可以从大量数据中获得有用的知识,并找出数据之间的潜在关系。当收集到足够的训练数据时,模型可以更好地学习数据之间的关系和规则,从而提高其泛化能力和准确性。
外包的K-Means服务可以通过将数据上传到云上为远程机器学习服务提供商进行培训。这些服务提供商通常拥有强大的计算和存储资源,可以提供专门的算法、模型优化和参数调整服务,以更好地训练高质量的模型。用户在使用外包的机器学习服务时,需要注意数据安全和隐私保护,避免敏感数据泄露。此外,边缘的数据很容易被窃取和篡改,导致工业系统的丢失和损坏。因此,有必要提高数据处理过程中的安全性,并引入加密机制。然而,由于资源限制,这意味着数据收集框架不仅必须维护安全和隐私,还必须确保低能耗。
在外包机器学习中,同态加密(HE)可以用于保护数据隐私,同时允许在不暴露原始数据的情况下进行计算和分析。例如,数据可以被加密并上传到云,云提供商可以对数据进行加密和计算,然后将结果返回给用户。通过这种方式,可以实现数据共享和外包计算等需求。
同态加密的主要优点是可以在不暴露原始数据的情况下进行计算,从而保护数据的隐私和安全。然而,同态加密技术也存在两个问题。首先,HE将计算任务分配给云服务,用户需要参与计算过程。中国专利“CN202210609601.7-基于同态加密的数据聚类方法及装置与流程”提出的外包聚类联邦方法中,大多数计算和数据处理技术都需要使用云计算资源进行处理和分析,这导致了云服务器的负担。同时,用户需要参与计算过程,如数据加密、解密、计算等操作,这些操作需要使用本地计算资源进行处理。
其次,中国专利“CN2019104519960-基于向量同态加密的隐私保护k-means聚类方法”使用相同的公钥进行加密,这导致了数据泄露的风险。在HE中,通常采用公钥加密和私钥解密来实现数据的机密性和安全性。在这种情况下,使用相同的公钥加密数据是不安全的。具体而言,如果使用相同的公钥对数据进行加密,则加密后的数据将集中分布在密文空间中,这使其容易受到攻击者的有针对性的攻击。攻击者可以试图通过破解加密算法或暴力破解来获取加密数据,从而导致数据泄露和安全风险。
第三,现有技术中虽然存在聚类与同态加密同时应用,在克服安全风险的同时支持多方训练与隐私学习的技术方案,但是,现有技术中并没有适应性的提供具体的通信协议,以从协议层、数据处理、电路实现等的具体实施方式上提供任何具体方案或参考方法。在此基础上,涉及的数学模型,无法考虑到通信过程、数据处理过程中噪声的影响程度,也无法考虑到通信协议实施过程中的运算代价和电路复杂度。
针对上述问题,亟需一种通信数据的聚类方法、系统、终端及介质。
发明内容
为解决现有技术中存在的不足,本发明提供一种既能保护数据拥有者的隐私信息,又能支持多方共同训练模型的方法,以提升模型准确率。
本发明采用如下的技术方案。
本发明第一方面,涉及一种通信数据的聚类方法,方法包括以下步骤:步骤1,采用智能设备SD将用户数据处理为待聚类数据集X,并根据终端用户U的聚类用户请求获取聚类簇数K和迭代轮次T;步骤2,通过智能设备SD和终端用户U分别将X、K、T发送给边缘节点EN,并向边缘节点EN提交聚类服务请求;步骤3,利用边缘节点EN调用范式距离计算协议,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离,随后调用求最小值协议根据距离为样本点xi分配对应的聚类中心;步骤4,获取每一个样本点xi的聚类中心后,生成聚类结果E(μk),并将聚类结果E(μk)转发至提交过聚类用户请求的终端用户U进行解密。
优选的,步骤3中,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离还包括:IC向每个EN发送聚类算法所需要初始模型参数;每个EN与IC合作,对加密数据进行局部K-Means聚类,并将加密的局部聚类中心发送给IC;IC将加密的本地参数聚合到每个EN,每个EN重复上述聚类,直到结束迭代。
优选的,范式距离计算协议还包括:针对样本点和聚类中心中的每一个维度特征,分别将样本点和聚类中心的维度特征转化为二进制数据,并按位加密;基于二进制数据中每一位数据之间的距离计算每一个对应位的距离,并合成总距离;根据最高位的取值结果,确认是否需要对总距离进行取反操作,最终输出范式距离;对样本点和聚类中心中的所有维度特征求解范式距离,并采用曼哈顿距离计算每一个维度特征的范式距离的和,以得到样本点和聚类中心之间的总距离。
优选的,求最小值协议还包括:调用比较协议对范式距离结果E(dis[k])中的每一个距离值dis[1],dis[2],……,dis[k]进行比较得到数组E(A[i][k]);其中,每一个距离值为当前数据点xi,对应于k个聚类中心c1,c2,……,ck的距离;数组E(A[i][k])中取值为1的项即为距离最小值所对应的聚类中心的索引。
优选的,比较协议还包括:比较两个二进制逐位加密数据E(a)=E(an)E(an-1)...E(a0)和E(b)=E(bn)E(bn-1)...E(b0),计算 其中,E(c)=Select(E(temp),E(c),E(bi)),/>若res=1,则表示a<b;若res=0,则a≥b。
优选的,选择协议还包括:EN将添加有噪声的选择条件E(z)传输给IC后,IC经过私钥对所述选择条件进行解密,并基于噪声和传输条件生成选择结果;当存在噪声r时,选择结果为其中,E(x)和E(y)为待选择项,E(z)通过r⊙z′实现恢复;其中,z′为IC接收、十进制转换和解密后得到的选择条件。
优选的,智能设备SD、边缘节点EN和终端用户U之间通过同态加密算法实现数据交换。
本发明第二方面,涉及一种通信数据的聚类系统,系统用于实现本发明第一方面中的方法;并且,系统包括工业云IC、多个边缘节点EN,通过多个边缘节点EN连接至工业云的多个智能设备SD,连接至工业云IC的多个终端用户U;其中,智能设备SD将用户数据处理为待聚类数据集X,并根据终端用户U的聚类用户请求获取聚类簇数K和迭代轮次T;智能设备SD和终端用户U分别将X、K、T发送给边缘节点EN,并向边缘节点EN提交聚类服务请求;边缘节点EN调用范式距离计算协议,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离,随后调用求最小值协议根据所述距离为所述样本点xi分配对应的聚类中心;工业云IC获取每一个所述样本点xi的聚类中心后,生成聚类结果E(μk),并将所述聚类结果E(μk)转发至提交过所述聚类用户请求的终端用户U进行解密。
本发明第三方面,涉及一种终端,包括处理器及存储介质;存储介质用于存储指令;处理器用于根据指令进行操作以执行本发明第一方面中方法的步骤,以及方法中的范式距离计算协议、求最小值协议、比较协议和选择协议中的一种或多种。
本发明第四方面,涉及计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现本发明第一方面中方法的步骤,,以及所述方法中的范式距离计算协议、求最小值协议、比较协议和选择协议中的一种或多种。
本发明的有益效果在于,与现有技术相比,本发明的一种既能保护数据拥有者的隐私信息,又能支持多方共同训练模型的方法,以提升模型准确率。该方法通过分布式的方法协同EN和IC进行合作,采用同态加密克服实体可能试图将这些信息用于恶意活动或获取商业利益所导致的严重后果,防止了个人隐私泄露。
本发明的有益效果还包括:
1、方法在协议层充分考虑到数据的具体处理方式,通过模拟添加噪声,解调噪声的方式确保了加密数据恢复过程中的准确性,防止了部分实体存在恶意攻击而导致的全局过载问题。
2、方法在协议计算过程中充分考虑了各个步骤的运算量,通过将每个步骤合理在EN与IC之间划分,通过IC实现多个EN之间数据的加密特征交换,不仅提高了算法的复杂度,也确保了方法的可靠,运算过程的合理分配,降低了IC的运行压力。
3、方法通过将加密数据在二进制层面的运算拆解,实现了具体的同态加密后数据的处理与还原,这在过去的技术中不曾提及。另外,方法整体上能够以对应至具体逻辑电路构造的方式实现了方法的实体化,以最简化的逻辑运算方式,误码合理的情况下,保证了算法的实施。
4、在考虑到数据误码、简化运算的前提下,方法采用了例如 等并不唯一的二进制计算方式,使得算法具备充分的可靠性,防止计算过程中的多级误差影响最终结果的准确性。
附图说明
图1为本发明一种通信数据的聚类方法中各个设备的模型架构示意图;
图2为本发明一种通信数据的聚类方法中模型实体之间的通信的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清晰,下面将结合本发明实施例中的附图,对本发明的技术方案进行清楚、完整地描述。本发明所描述的实施例仅仅是本发明一部分的实施例,而不是全部实施例。基于本发明精神,本领域普通技术人员在没有做出创造性劳动的前提下,根据本发明中记载的实施例而获得的所有其它本发明中未记载的实施例,都应当属于本发明的保护范围。
本发明第一方面,涉及一种通信数据的聚类方法,方法包括以下步骤1-4。
步骤1,采用智能设备SD将用户数据处理为待聚类数据集X,并根据终端用户U的聚类用户请求获取聚类簇数K和迭代轮次T。
图1为本发明一种通信数据的聚类方法中各个设备的模型架构示意图。如图1所示,各个设备分别是智能设备(SD)、边缘节点(EN)、工业云(IC)和终端用户(U)。智能设备(如传感器、手机和车辆)收集大量用户(如居民)数据,使用边缘和云计算来训练模型(如工业工厂的自动管理、智能交通控制和医疗保健),并提供集群服务。终端用户(U)可以根据智能设备(SD)、边缘节点(EN)、工业云(IC)对数据的实际采集、分析、处理的过程,来获得与己相关的系统整体层面的统计信息。
为了获得与己相关的系统整体层面的统计信息,方法需要首先依据终端用户U的聚类用户请求和智能设备SD所采集的待聚类数据集X。
具体的,通信过程采用非对称密钥加密方式实现。数据从系统边缘的智能设备SD收集,每个SD根据公共参数pp独立生成不同的公钥。它将加密的数据、其公钥和pp发送到EN进行集群。SD不参与集群阶段。工业云IC,例如云端的服务器等,则可以基于pp独立生成其公钥,并将pp和公钥一起转发到EN。
具体来说,为了实现模型实体之间的通信,可以采用boost::asio库使用TCP协议建立实体之间的通信过程,通信参与方包括:SD、EN和U。图2为本发明一种通信数据的聚类方法中模型实体之间通信的流程图。如图2所示,在EN中,首先创建accepter对象,等待SD连接,再通过socket与SD进行通信,整个通信过程以阻塞方式进行,即读写完毕才会返回结果。SD使用socket连接EN,当连接成功或失败才会返回。SD和EN建立网络通信、密钥交换及数据加密发送过程。
具体的,EN调用Server构造函数,初始化为服务器。EN开启与SD的网络连接,等待连接,随后创建io_service对象,所有asio类都需要io_service iosev对象。io_service对象是asio框架中的调度器,所有异步io事件都是通过它来分发处理的;创建acceptor对象,设置端口号,连接方式选择tcp;创建socket对象,等待直到SD连接进来。此时,SD调用全同态加密(FHE,Fully Homomorphic Encryption)库里密钥生成算法生成加密解密用的公私钥对。SD再进行数据预处理,将整型数据处理为二进制类型,并使用公钥对数据进行加密。SD创建socket对象,连接端点,设置EN的IP地址建立远程连接,与EN进行网络通信。连接成功后SD发送公钥给EN,EN接收密钥;直到SD接收EN返回的消息后,断开与EN的网络连接。
同样的,SD和U也采用boost::asio库进行网络通信,建立通信连接及密钥分配的具体步骤如下:
U创建io_service与acceptor对象;U调用socket对象开启与SD的通信,等待SD连接;SD与U建立TCP连接,发送密钥到U,U接收密钥并保存到文件中;SD获取U发送的消息后,断开与U的网络连接,U不参与后续过程。
通过上述方式,本发明可以完成通信设备之间的初始化过程,而U、SD、EN之间则可以根据实际的需要实现设备之间的数据交换与加解密过程。
步骤2,通过智能设备SD和终端用户U分别将X、K、T发送给边缘节点EN,并向边缘节点EN提交聚类服务请求。
本发明一实施例中,K、T可以通过SD和U之间的通信连接首先从U传输到SD,然后,U不再参与后续过程,而由SD将X、K、T发送给边缘节点EN。
另外,U也可以向边缘节点直接提出聚类服务请求,或者间接的通过SD向EN提出聚类服务请求。在识别到U的数据请求后,EN和IC可以通过协议的方式来实现数据的聚类,以及将聚类的结果通过加密反馈给数据的需求方,也就是提出请求的U。
具体来说,聚类簇数K和迭代次数T两个参数,用于控制聚类过程结束,这两个参数不进行加密。另外,待聚类数据集X中的原始数据首先被处理为二进制形式,然后对数据加密才可发出。
步骤3,利用边缘节点EN调用范式距离计算协议,会同IC迭代计算聚类中心μk与样本点xi之间的距离,随后调用求最小值协议根据所述距离为所述样本点xi分配对应的聚类中心。
具体来说,IC向每个EN发送聚类算法所需要初始模型参数,例如K、T。随后,每个EN与IC合作,对加密数据进行局部K-Means聚类,并将加密的局部聚类中心发送给IC。IC将加密的本地参数聚合到每个EN,每个EN重复上述聚类,直到达到T结束迭代。
EN收到UIC的聚类服务请求后,开始进行聚类。在聚类开始时,从待聚类数据集X中随机选择k个数据点作为初始聚类中心。本发明中,首先对K-means聚类过程分析提取出基本运算,设计了对应基本运算的通信协议,包括:选择协议、范式距离计算协议、比较协议以及求最小值协议。方法基于通信协议进行交互计算,并构建模型。
具体来说,利用边缘节点EN调用范式距离计算协议,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离具体为,计算样本点与聚类中心的曼哈顿距离,用来衡量样本点之间的相似性。
范式距离计算协议是利用多密钥同态加密的加法同态和乘法同态性质,计算由多密钥同态加密的两个数据的绝对值,返回一个加密的运算结果。由于加密的数据用二进制表示,多密钥同态加密会对每一位进行单独加密,共有n+1位,最高位表示二进制数据的正负。
在范式距离计算协议中:EN方的输入是两个加密的数据和用于加密的相应密钥,IC方输入的是用于解密的密钥。EN方希望获得加密的绝对值结果用于后续寻找距离最小值完成簇类分配过程,同时保证数据的隐私。
本发明中,范式距离计算协议可表示为getDistance(E(x),E(μ)),其中,E(x)为依次按位加密的样本点数据E(x)=E(xn)E(xn-1)...E(x0),一共有n+1位。另外,E(μ)表示聚类中心,也是依次按位加密的E(μ)=E(μn)E(μn-1)...E(μ0)。EN方可以输入上述E(x)、E(μ),以及公钥pk,由IC方提供私钥sk。最终EN可以输出计算结果E(dis)。
具体计算过程中,可以设置0≤i≤n+1,由i表征计算到连续的二进制数的第几位。随着i的取值的逐步增加,计算进程也在推进。通过公式E(di)←E(xi)⊙E(μ),也就是对E(xi)和E(μi)进行二元操作,来计算二进制数据之间的距离。由于二进制数据只由1和0组成,所以上述公式实际上计算出了每一位上x-μ的值。提取出最高位的结果进行临时存储,也就是E(temp)←E(dn)。根据最高位的取值结果,最终合成所有位上计算出来的总距离。如果最高位为1,则说明距离为负数,此时需要进行取反才能计算距离的绝对值,也就是E(dis)←MUX(E(temp),Invert(E(d)),E(d))。这里的MUX函数,根据E(temp)取值,来决定输出Invert(E(d))还是E(d)。
本发明方法通过曼哈顿距离,用来衡量样本点与聚类中心之间的相似性。可以理解的是,每个样本点和聚类中心都包含多维度的位置信息,每一个维度可能代表其点所具备的自有属性,例如数据所对应的U和SD的ID号、类别信息等等。因此,每一个维度的数据经过二进制转化后都能够形成一组E(x)=E(xn)E(xn-1)...E(x0)。多个维度之间则通过曼哈顿距离来计算样本点与聚类中心之间的总距离。
待在当前迭代步骤中,计算出所有样本点和当前聚类中心之间的距离后,则可以通过求最小值协议还选择合适的聚类中心。
求最小值协议getMin(E(dis),E(A))是比较k个多密钥同态加密的密文数据,获取最小值的索引,也就是找到距离数据点最近的聚类中心点,用于后续将该数据点分配给距离最小的聚类中心。具体来说,EN方的输入数据是存储多密钥同态加密的范式距离的数组E(dis),其中可以具体包括E(dis)=E(dis1),....,E(disk),也就是当前数据点针对多个聚类中心的距离值。EN方的输入数据还有辅助数组E(A)=E(A[i][1]),....,E(A[i][K])以及公钥pk、私钥sk。辅助数组E(A[i][k])中的i表示当前数据点的索引值,k表示聚类中心的索引值。若E(A[i][k])=1,则表示数据点xi被分配给了簇类ck,也就是说明数据点xi到聚类中心ck的距离值是最小的最终,协议可以生成最小值结果,即数组E(A[i][k])。对该数组进行分析,取值为1的项就对应于最合适的聚类中心的序号了。
虽然首先将第一个距离值赋值为最小距离,即E(min)←E(dis1),然后进行迭代2≤k≤K。对于每个k都计算E(M)=Compare(E(min),E(dk)),也就是比较最小值与当前距离的大小,并得到结果E(M)。
对于任意一个1≤k≤E-1,则有E(A[i][r])←E(A([i][r]))·E(M),也就是根据结果E(M)取值为1或0,可以得到辅助数组E(A[i][r])中某个数据项的取值。另外,根据结果E(M)也可以得到如果k≠K,则选择输出最小值为E(min)=MUX(E(M),E(min),E(dk)),也就是根据E(M)的取值输出E(min)或E(dk),从而重新刷新最小值。另外,根据辅助数组的取值,还可以得到/>也就是在经过传输或数据处理噪声后的辅助数组。将该存在噪声的辅助数据发送给IC后,可通过IC恢复出带有噪声的结果A′←Dec(E(A′),sk)。对于该数据来说,其表征着加噪声后的最小距离。如果A′=0,则计算E(e)←E(1),否则计算E(e)←E(0),最终通过E(e)得到最小距离的结果E(A[i][k])←E(r)⊙E(e)。
该算法的核心思想是:首先调用比较协议对范式距离结果E(dis[k])中的第一个值与第二个值进行比较得到结果E(min),再利用辅助数组E(A[i][k])记录比较结果。此时,E(A[i][1])=E(A[i][1])•E(min)。同时使用变量E(min)跟踪最小值;接着将E(min)与第三个值进行比较,此时,更新E(A[i][k])与E(min)的值;重复上述过程,直到所有数据都比较完毕,数组E(A[i][k])中为1的值就是所求的最小值的索引。
其中,比较协议对两个由多密钥同态加密的密文数据进行比较,得到与在明文上比较一样的结果。加密数据均被处理为二进制表示,其密文加法运算等价于密文异或运算。协议由两方共同参与,EN方的输入是两个按位加密的二进制数据E(a)=E(an)E(an-1)...E(a0)与E(b)=E(bn)E(bn-1)...E(b0)。IC方的输入是用于解密的密钥sk,比较结果仅EN方获知,保证数据的机密性。
构建协议的思想是首先除最高位外,按位进行比较,引入一个临时变量temp用于记录比较结果,调用选择协议判断temp的值,得到c。最后,对最高位进行比较,利用公式res=an·(bn+1)+(an+bn+1)·c计算得到比较结果res,若res=1,则表示a<b;若res=0,则a≥b。
具体的,比较协议Compare(E(a),E(b))需要输入方EN输入待比较加密数据E(a)=E(an)E(an-1)...E(a0)和E(b)=E(bn)E(bn-1)...E(b0),也就是两个距离值,例如dis[1],dis[2]的二进制加密表示。比较的比特位数n,公钥pk。IC输入私钥sk,最终实现比较结果E(t)。
开始时,E(temp)←E(0),E(c)←E(0),设置E(temp)和E(c)的初始值。对于0≤i≤n-1,则有E(c)=Select(E(temp),E(c),E(bi)),E(c)可以根据E(temp)的取值结果进行选取。随后,计算/>也就是对加密的数据计算res=an·(bn+1)+(an+bn+1)·c。
对于任意一个取值为的r来说,/>此时可以将E(res′)的值发给IC。这里的/>可以被认为是表征随机干扰的白噪声的数据集。将E(res′)与私钥sk一同转化为十进制后,解密获得res′的取值。如果res′取值为0,则有,E(e)←E(1),若否则E(e)←E(0)。随后根据E(e)计算E(t)←E(r)⊙E(e),同时得到结果E(t)。此时,如果t取值为1,则有a<b。
上述比较协议中应用了选择协议Select。具体来说,选择协议主要用于在密文上实现if-else表达式,获取与明文一样的结果。选择协议EN方输入的是三个加密数据E(z),E(x),E(y),其中E(z)代表选择条件,IC方输入的是用于解密的密钥。EN方希望获得FHE加密的选择结果,这里需要IC方解密进行辅助计算,为保证输入值的机密性,EN方给需要解密的数据添加一个干扰值。
具体来说,存在三个变量a,b,c,使变量c作为选择条件,函数Select()的值取决于c。也就是
对于任意一个r满足则/>这里的r可以为任意的噪声信号。将E(z′)发送给IC后,IC可以解密得到十进制数据取值为z′←Dec(E(z′),sk),其中存在噪声。IC将该噪声加密后,如果r=0,则说明不存在噪声,恢复的内容无限接近于原始数据z。如果有噪声,则可以将相干噪声与z′进行同态计算,得到E(z)←r⊙z′,而后,再采用公式 计算生成选择结果,也就是E(s)。
步骤4,获取每一个所述样本点xi的聚类中心后,生成聚类结果E(μk),并将所述聚类结果E(μk)转发至提交过所述聚类用户请求的终端用户U进行解密。
具体来说,聚类过程可以为EN输入待聚类数据私钥sk,U输入公钥,未加密的聚类簇数K、迭代次数T,数组E(A[i][k])。其中,U将数据集X中的数据用二进制表示,得到整型训练数据集X。对于任意的0≤i≤m,可以进行明文加密计算E(xi)←Enc(xi,pk),然后,将计算结果E(xi)发送给EN。具体来说,可以初始化数组E(A[i][k]),然后对于任意的1≤j≤T,1≤k≤K计算曼哈顿距离E(dis[k])=||xi-μk||1,同时更新数组的取值E(A[i][k])←getMin(E(dis),E(A[i][k]))。
为了使得聚类结果最优,可以初始化E(μk)←0。以及,对于EN和IC,在此步骤中通过公式/> 来选择距离聚类中心更近的数据点,从而更新聚类簇中合格的数据点,最终得到聚类结果。此时,EN可以对IC中的聚类结果进行同步,则有/>m为聚类点的数量。本发明中,得到的聚类结果发送到终端用户U,并通过终端用户的解密和十进制转换,即μk←Dec(E(μk),sk)得到最终的结果,也就是聚类中心μk。
总的来说,本发明中的通讯协议包括选择协议、范式距离计算协议、比较协议和求最小值协议。选择协议用于实现if-else表达式;范式距离计算协议用于计算两个密文数据之间的范式距离;比较协议用于实现两个密文数据的比较;求最小值协议用于实现从多个加密数据中得到最小加密数据。
聚类主要分为两个过程:聚类分配和聚类中心移动:首先计算加密样本点与聚类中心之间的距离,找到最小值,根据最小值完成聚类分配过程;然后重新计算新的聚类中心以完成聚类中心移动过程。分析上述过程以提取基本操作,并设计了与基本操作相对应的安全通信协议,从协议层确保了上述方法的具体实现。IC和EN通过通信协议进行交互。聚类过程主要在EN中进行,IC辅助计算,降低了IC的计算压力。
经过训练的模型包含来自训练数据的敏感信息和知识,因此未经授权的实体不应访问或使用该模型。这些实体可能试图将这些信息用于恶意活动或获取商业利益,这可能会导致严重后果,包括泄露个人隐私和侵犯知识产权。因此,本发明在协议的各个步骤中采用同态加密算法,确保了数据的安全性。
总的来说,本发明设计了一个基于隐私保护的云-边协作K-Means聚类模型,以扩展物联网的数据量,通过将数据和计算任务分配给不同的计算节点,可以同时处理更大规模的数据和模型,提高聚类模型的准确性和效率。本发明还包括四种基于多密钥的安全通信协议,在此协议的基础上,进一步完成了基于多密钥的聚类过程,防止物联网设备之间的勾结。
在我们的方案中,智能设备生成不同的密钥,支持多方训练。并且训练的K-Means模型被加密并外包给边缘节点和工业云。对模型进行评估,表明边缘节点分担了41.91%~42.75%的通信和47.52%~53.01%的云计算开销。
本发明第二方面,涉及一种通信数据的聚类系统,系统用于实现本发明第一方面的方法;并且,系统包括工业云IC、多个边缘节点EN,通过多个边缘节点EN连接至工业云的多个智能设备SD,连接至工业云IC的多个终端用户U;其中,智能设备SD将用户数据处理为待聚类数据集X,并根据终端用户U的聚类用户请求获取聚类簇数K和迭代轮次T;智能设备SD和终端用户U分别将X、K、T发送给边缘节点EN,并向边缘节点EN提交聚类服务请求;边缘节点EN调用范式距离计算协议,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离,随后调用求最小值协议根据所述距离为所述样本点xi分配对应的聚类中心;工业云IC获取每一个所述样本点xi的聚类中心后,生成聚类结果E(μk),并将所述聚类结果E(μk)转发至提交过所述聚类用户请求的终端用户U进行解密。
本发明第三方面,涉及一种终端,包括处理器及存储介质;存储介质用于存储指令;处理器用于根据指令进行操作以执行根据本发明第一方面方法的步骤,以及方法中的范式距离计算协议、求最小值协议、比较协议和选择协议中的一种或多种。
可以理解的是,终端为了实现上述本申请实施例提供的方法中的各功能,包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
终端包括至少一个处理器,总线系统以及至少一个通信接口。处理器由中央处理器、现场可编程逻辑门阵列、专用集成电路或其他硬件构成。存储器为只读存储器、随机存取存储器等构成。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。硬盘可以为机械盘或固态硬盘等。本发明实施例对此不作限定。上述实施例通常通过软件、硬件来实现。当使用软件程序实现时,可以以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。
本发明第四方面,涉及计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现本发明第一方面方法的步骤,,以及所述方法中的范式距离计算协议、求最小值协议、比较协议和选择协议中的一种或多种。
在计算机上加载和执行计算机程序指令时,按照本发明中实施例所提供的流程来实现相应的功能。其中涉及的计算机程序指令可以是汇编指令、机器指令或者以编程语言实现编写的代码等等。
本发明的有益效果在于,与现有技术相比,一种既能保护数据拥有者的隐私信息,又能支持多方共同训练模型的方法,以提升模型准确率。该方法通过分布式的方法协同EN和IC进行合作,采用同态加密克服实体可能试图将这些信息用于恶意活动或获取商业利益所导致的严重后果,防止了个人隐私泄露。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种通信数据的聚类方法,其特征在于,所述方法包括以下步骤:
步骤1,采用智能设备SD将用户数据处理为待聚类数据集X,并根据终端用户U的聚类用户请求获取聚类簇数K和迭代轮次T;
步骤2,通过智能设备SD和终端用户U分别将X、K、T发送给边缘节点EN,并向边缘节点EN提交聚类服务请求;
步骤3,利用边缘节点EN调用范式距离计算协议,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离,随后调用求最小值协议根据所述距离为所述样本点xi分配对应的聚类中心;
步骤4,获取每一个所述样本点xi的聚类中心后,生成聚类结果E(μk),并将所述聚类结果E(μk)转发至提交过所述聚类用户请求的终端用户U进行解密。
2.根据权利要求1所述的一种通信数据的聚类方法,其特征在于:
所述步骤3中,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离还包括:
IC向每个EN发送聚类算法所需要初始模型参数;
每个EN与IC合作,对加密数据进行局部K-Means聚类,并将加密的局部聚类中心发送给IC;
IC将加密的本地参数聚合到每个EN,每个EN重复上述聚类,直到结束迭代。
3.根据权利要求1所述的一种通信数据的聚类方法,其特征在于:
所述范式距离计算协议还包括:
针对样本点和聚类中心中的每一个维度特征,分别将样本点和聚类中心的维度特征转化为二进制数据,并按位加密;
基于二进制数据中每一位数据之间的距离计算每一个对应位的距离,并合成总距离;
根据最高位的取值结果,确认是否需要对总距离进行取反操作,最终输出范式距离;
对样本点和聚类中心中的所有维度特征求解范式距离,并采用曼哈顿距离计算每一个维度特征的范式距离的和,以得到样本点和聚类中心之间的总距离。
4.根据权利要求1所述的一种通信数据的聚类方法,其特征在于:
所述求最小值协议还包括:
调用比较协议对范式距离结果E(dis[k])中的每一个距离值dis[1],dis[2],......,dis[k]进行比较得到数组E(A[i][k]);
其中,所述每一个距离值为当前数据点xi,对应于k个聚类中心c1,c2,......,ck的距离;
数组E(A[i][k])中取值为1的项即为距离最小值所对应的聚类中心的索引。
5.根据权利要求4所述的一种通信数据的聚类方法,其特征在于:
所述比较协议还包括:
比较两个二进制逐位加密数据E(a)=E(an)E(an-1)…E(a0)和E(b)=E(bn)E(bn-1)…E(b0),计算
若res=1,则表示a<b;若res=0,则a≥b。
6.根据权利要求5所述的一种通信数据的聚类方法,其特征在于:
所述选择协议还包括:
EN将添加有噪声的选择条件E(z)传输给IC后,IC经过私钥对所述选择条件进行解密,并基于噪声和传输条件生成选择结果;
当存在噪声r时,选择结果为其中,E(x)和E(y)为待选择项,E(z)通过r⊙z′实现恢复;
其中,z′为IC接收、十进制转换和解密后得到的选择条件。
7.根据权利要求5所述的一种通信数据的聚类方法,其特征在于:
智能设备SD、边缘节点EN和终端用户U之间通过同态加密算法实现数据交换。
8.一种通信数据的聚类系统,其特征在于:
所述系统用于实现权利要求1-7任一项所述的方法;并且,
所述系统包括工业云IC、多个边缘节点EN,通过多个边缘节点EN连接至工业云的多个智能设备SD,连接至工业云IC的多个终端用户U;其中,
智能设备SD将用户数据处理为待聚类数据集X,并根据终端用户U的聚类用户请求获取聚类簇数K和迭代轮次T;
智能设备SD和终端用户U分别将X、K、T发送给边缘节点EN,并向边缘节点EN提交聚类服务请求;
边缘节点EN调用范式距离计算协议,会同工业云IC迭代计算聚类中心μk与样本点xi之间的距离,随后调用求最小值协议根据所述距离为所述样本点xi分配对应的聚类中心;
工业云IC获取每一个所述样本点xi的聚类中心后,生成聚类结果E(μk),并将所述聚类结果E(μk)转发至提交过所述聚类用户请求的终端用户U进行解密。
9.一种终端,包括处理器及存储介质;其特征在于:
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据权利要求1-8任一项所述方法的步骤,以及所述方法中的范式距离计算协议、求最小值协议、比较协议和选择协议中的一种或多种。
10.计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-8任一项所述方法的步骤,,以及所述方法中的范式距离计算协议、求最小值协议、比较协议和选择协议中的一种或多种。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311236487.9A CN117349685A (zh) | 2023-09-25 | 2023-09-25 | 一种通信数据的聚类方法、系统、终端及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311236487.9A CN117349685A (zh) | 2023-09-25 | 2023-09-25 | 一种通信数据的聚类方法、系统、终端及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117349685A true CN117349685A (zh) | 2024-01-05 |
Family
ID=89367428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311236487.9A Pending CN117349685A (zh) | 2023-09-25 | 2023-09-25 | 一种通信数据的聚类方法、系统、终端及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117349685A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117688502A (zh) * | 2024-02-04 | 2024-03-12 | 山东大学 | 一种局部异常因子检测的安全外包计算方法及系统 |
-
2023
- 2023-09-25 CN CN202311236487.9A patent/CN117349685A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117688502A (zh) * | 2024-02-04 | 2024-03-12 | 山东大学 | 一种局部异常因子检测的安全外包计算方法及系统 |
CN117688502B (zh) * | 2024-02-04 | 2024-04-30 | 山东大学 | 一种局部异常因子检测的安全外包计算方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11902413B2 (en) | Secure machine learning analytics using homomorphic encryption | |
Wu et al. | Secure and efficient outsourced k-means clustering using fully homomorphic encryption with ciphertext packing technique | |
WO2016089710A1 (en) | Secure computer evaluation of decision trees | |
CN111428887B (zh) | 一种基于多个计算节点的模型训练控制方法、装置及系统 | |
US11323255B2 (en) | Methods and systems for encryption and homomorphic encryption systems using Geometric Algebra and Hensel codes | |
Jayapandian et al. | Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption | |
Erkin et al. | Privacy-preserving distributed clustering | |
CN111222645B (zh) | 基于物联网区块链量子算法人工智能的管理系统及方法 | |
Saini et al. | E2EE for data security for hybrid cloud services: a novel approach | |
US11856099B2 (en) | Cryptographic pseudonym mapping method, computer system, computer program and computer-readable medium | |
CN113157778B (zh) | 分布式数据仓库的可代理查询方法、系统、设备及介质 | |
CN117349685A (zh) | 一种通信数据的聚类方法、系统、终端及介质 | |
CN113792890B (zh) | 一种基于联邦学习的模型训练方法及相关设备 | |
CN112765642A (zh) | 数据处理方法、数据处理装置、电子设备及介质 | |
CN115664629A (zh) | 一种基于同态加密的智慧物联平台数据隐私保护方法 | |
CN111865581B (zh) | 基于张量网络的量子秘密共享方法及量子通信系统 | |
Kanimozhi et al. | Secure sharing of IOT data in cloud environment using attribute-based encryption | |
CN109409111B (zh) | 一种面向加密图像的模糊搜索方法 | |
CN116681141A (zh) | 隐私保护的联邦学习方法、终端及存储介质 | |
CN115361196A (zh) | 一种基于区块链网络的业务交互方法 | |
Mohanraj et al. | Hybrid encryption algorithm for big data security in the Hadoop distributed file system | |
CN115130568A (zh) | 支持多参与方的纵向联邦Softmax回归方法及系统 | |
CN117749527B (zh) | 基于大数据分析和云计算的安全防护方法及系统 | |
Ghunaim et al. | Secure kNN query of outsourced spatial data using two-cloud architecture | |
TWI737956B (zh) | 基於秘密共享的門檻式簽章系統及其方法 |
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 |