CN114154554A - 一种基于非共谋双云服务器的隐私保护外包数据knn算法 - Google Patents
一种基于非共谋双云服务器的隐私保护外包数据knn算法 Download PDFInfo
- Publication number
- CN114154554A CN114154554A CN202111266709.2A CN202111266709A CN114154554A CN 114154554 A CN114154554 A CN 114154554A CN 202111266709 A CN202111266709 A CN 202111266709A CN 114154554 A CN114154554 A CN 114154554A
- Authority
- CN
- China
- Prior art keywords
- cloud server
- data
- mvecidxmin
- protocol
- mdist
- 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.)
- Granted
Links
- 238000012946 outsourcing Methods 0.000 title claims description 15
- 238000004364 calculation method Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 14
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 230000009977 dual effect Effects 0.000 claims description 2
- 238000012360 testing method Methods 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 17
- 230000005540 biological transmission Effects 0.000 abstract description 7
- 238000012163 sequencing technique Methods 0.000 abstract description 2
- 238000010801 machine learning Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 3
- 238000007418 data mining Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24147—Distances to closest patterns, e.g. nearest neighbour classification
-
- 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
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Storage Device Security (AREA)
Abstract
本发明提出了一种基于秘密共享、混淆电路、不经意传输协议等技术的双云模型安全高效的KNN算法。首先通过秘密共享技术将数据发送给双云服务器,随后利用混淆电路、不经意传输协议设计了安全欧式距离协议、安全比较协议、安全排序协议等,最后通过模块化顺序组合的方式,实现了安全的KNN算法。与基于同态加密的解决方案不同,我们设计的方案能够实现在同等安全性级别的条件下,具有更高的效率,后者需要在密文上进行比较、乘法等计算,会产生较大的计算开销。与基于差分隐私的解决方案相比,本方案对用户的查询没有隐私预算的要求,用户可以进行无限次的查询。本发明提出的方案中可适用于弱客户端,在计算的过程中均保持离线状态。
Description
技术领域
本发明涉及安全多方计算以及机器学习技术领域,具体来说,是一种基于安全两方计算技术实现数据外包的隐私保护的K近邻(K Nearest Neighbor,KNN)算法,该方案基于秘密共享技术、不经意传输协议、混淆电路等技术将弱客户端的数据以及计算外包给非共谋的双云服务器,使得弱客户端在计算和存储能力有限的情况下也能实现隐私保护的KNN算法。
技术背景
随着云计算技术以及大数据技术的发展,互联网行业的巨头如谷歌、亚马逊、微软等公司开始提供基于云服务器的机器学习服务来解决医疗、金融等领域中出现的问题,这些行业巨头提供的服务使得机器学习算法在实际应用中不断优化,得以改进。但是机器学习算法的训练模型是需要大规模的数据来支撑的,在一定程度内,训练数据量越多,训练的模型准确度越高。将大量的数据外包给云服务器去存储和计算,具有成本低,灵活性高等优点,但是在实际生活中,训练数据大多数都是由互联网公司收集的用户私人数据,可能包含用户的信用卡号码、个人的身份信搜索记录、浏览记录、交易记录以及地址等隐私信息。且存在这样的可能,由于数据是来自不同的数据源,针对同一用户的不同数据源的数据推断出更多的关于用户的隐私信息。如果用户被泄露,不仅对提供基于云服务器机器学习服务公司造成经济和名誉上的损害,而且也会造成一定的社会恐慌,在未来,数据提供者也会因为担心个人的隐私问题而拒绝提供数据,而这会对未来的研究造成阻碍。
对于隐私保护的KNN算法问题,目前已有的相关工作主要是基于数据扰动方法的差分隐私和加密方法的同态加密和安全多方计算。差分隐私通过在数据集中添加单个记录,由于单个记录对数据集的计算结果的影响是微乎其微的,从而攻击而无法通过计算结果来推测数据集中的信息,进而保证了数据集的信息不会被泄露,这满足了KNN 算法中的数据隐私保护要求。这种方案计算开销小,效率高,但是可用性差,数据挖掘人员在有限的隐私预算内可以提交查询,一旦分配的隐私预算用完,数据挖掘人员将被限制进一步的查询。
同态加密可以实现密文上的代数运算,得到的计算结果仍然保持密文的状态,只有持有私钥的参与方可以解密得到计算结果,能够实现KNN算法中的数据集以及计算的中间参数的数据隐私保护。但是基于同态加密技术的方案都存在计算和存储开销大的问题。现存的同态加密算法的效率较低,因此会导致基于同态加密技术的隐私保护的 KNN算法的实用性不强。
安全多方计算技术的特点是计算便宜,实用性强,因为有很多学者致力于基于安全多方计算技术来实现隐私保护的KNN算法,混淆电路、不经意传输协议、秘密共享技术等都是属于安全多方计算领域的技术,这些技术能够满足计算过程中数据隐私的要求,但是多方之间的交互必然会导致通信开销大的问题。因此使用安全多方计算解决数据的隐私保护问题的主要挑战在于如何构建一个安全且高效的多方计算协议。
本发明提出了一种基于秘密共享和混淆电路以及不经意传输协议等技术的安全高效的双云模型下的KNN算法。首先通过秘密共享技术将数据发送给双云服务器,随后利用混淆电路、不经意传输协议设计了安全欧式距离协议,安全的比较协议,安全的排序协议等,最后通过模块化顺序组合的方式,实现了安全的KNN分类协议。与基于同态加密的解决方案不同,我们设计的方案能够实现在同等安全性级别的条件下,具有更高的效率,后者需要在密文上进行比较,乘法等计算,会产生较大的计算开销。此外本发明可适用于弱客户端,因为参与方仅需要完成秘密共享和发送数据,在计算的过程中均保持离线状态。
发明内容
传统的数据外包的隐私保护的KNN算法通常是基于同态加密进行展开,KNN算法分类或者查询中效率较低。本方案提出一种基于非共谋双云服务器的隐私保护外包数据KNN算法,借助云服务器算力高的特点,将弱客户端的数据和计算外包给双云服务器,通过使用秘密共享技术、混淆电路技术以及不经意传输协议实现数据以及计算过程中的中间参数的隐私保护,从而实现了KNN算法全过程的隐私保护。
本发明是通过以下技术方案实现的:
一种基于非共谋双云服务器的隐私保护外包数据KNN算法,包括如下步骤:
步骤1:数据预处理
该步骤主要用于解决数据外包问题,利用算术秘密共享保护数据集,将经秘密共享拆分后的数据集发送给两个云服务器,这样每个云服务器均只有数据的一部分,在本方案的设定中,双云服务器是非共谋的,两个服务器不能合谋恢复原始数据集,因此能够实现数据集的安全外包。
数据拥有者将私有的训练数据集(X,L)经算术秘密共享随机拆分成(X0,L0)和(X1,L1)两个子数据集,分别发送给云服务器S0和S1,其中X是一个n×d的矩阵,n表示样本数,d表示样本的特征数,L是一个n维的列向量,表示数据集X中样本对应的标签。同理,将数据使用者拥有的数据集Y做同样的数据预处理,拆分成Y0和Y1,分别发送给云服务器S0和S1,Y是一个m×d的矩阵,m表示样本数,d表示样本的特征数。
步骤2:安全欧式距离平方计算
安全欧式距离平方协议是两方协议,数据拥有者的数据集中的点记为P,P∈X,用户的查询点记为Q,所有点的维度都是d,点P 和点Q的算术秘密共享记为和分别由服务器S0和云服务器S1持有,点P与点Q之间的欧式距离平方记为可以改写成如下形式:
将可以重写成公式(1)的形式,可以发现其中和是由两方分别持有的数据,可以单独计算并不会泄露任何信息,而 中的第一个乘积项是由云服务器S0持有的第二个乘积项是由云服务器S1持有的,在不泄露信息的情况实现计算,需要调用步骤3的安全乘法计算协议。具体的安全欧式距离平方协议流程如下:
步骤3:安全乘法计算
假定云服务器S0和S1分别持有x和y两个数据,不泄露两方分别持有的x和y的情况下,计算出xy的值。对于安全乘法协议的研究,目前主要是基于同态加密和OT协议这两项技术,ABY框架中的实验数据表明,基于OT扩展的乘法计算的速度比基于同态加密的乘法计算更加高效,基于上述的结论,因此我们将工作的重点放在了基于 OT扩展的安全乘法协议。
两方安全乘法计算协议具体步骤如下:
Step 3.2:云服务器S1作为OT的接受者,输入 (mi,0,mi,1,……,mi,N-1),其中mi,1= (Niy-mi,0)mod 2l,mi,x[i]=(Nix[i]y-mi,0)mod 2l
步骤3.3:云服务器S0作为OT的发送者,输入选择比特x[i]∈N,调用1-out-of-NOT协议,云服务器S0获得mi,x[i]=(Nix[i]y- mi,0)mod 2l
步骤4:安全最小值协议
在步骤3中,双云服务器分别持有矩阵P0.mDist和P1.mDist,接下来需要对步骤3中计算出来的距离进行排序。
以云服务器S0为例,持有以算术秘密共享形式的矩阵P0.mDist,要实现矩阵P0.mDist中相邻元素的两两比较,前人的方案提出的解决方案有以下2种思路:第一种是采用全同态,然而全同态的计算开销巨大,实用性差;第二种是将以算术秘密共享形式的矩阵P0.mDist转换成Yao共享形式,再利用混淆电路实现P0.mDist中相邻的两个元素之间的比较,但是算术秘密共享形式的数据转换成Yao共享,代价是昂贵的。本发明中提出一种新的形式比较混淆电路,避免了数据形式之间的转换。具体步骤如下:
步骤4.1:调用混淆电路比较矩阵P0.mDist中两两相邻的元素,输出01或者10用P0.vecGcMinOutput表示,1所在的位置对应两个比较元素中的较小值;
步骤4.2:将服务器输出P0.vecGcMinOutput连接构成向量 P0.mvecIdxMin,如果P0.mvecIdxMin中比特数为奇数,再 P0.mvecIdxMin的最后补1;
步骤4.3:P0.mvecIdxMin乘以P0.mDist,得到下一层待比较的元素P0.mShareMin;
步骤4.4:判断P0.mShareMin的长度是否大于1,如果小于等于 1,结束;
步骤4.5:如果P0.mShareMin的长度是奇数,将P0.mShareMin 的最后一位存储到P0.mLastNode;
步骤4.6:再次同步骤4.1调用混淆电路,得到比较结果P0.vecGcMinOutput;
步骤4.7:将所有的输出P0.vecGcMinOutput连接构成向量 P0.mvecIdxMin;
步骤4.8:P0.mvecIdxMin乘以P0.mDist,得到下一层待比较的元素P0.mShareMin,将P0.mLastNode添加到P0.mShareMin,
重复步骤4.4~4.8,得到最小值P0.mShareMin以及最小值对应位置的向量P0.mvecIdxMin,将P0.mvecIdxMin存入队列q0中;云服务器S0的操作步骤同S1得到P1.mvecIdxMin存入队列q1中。
步骤5:本步骤解决的问题是找到距离最近的K个样本,在步骤 4中,已经找到距离的一个样本,接下来就是重复K次步骤4,得到 K个样本,具体过程如下所示:
步骤5.1:将P0.mShareMin和P1.mShareMin重新赋值为最大值;
步骤5.2:重复步骤4,得到K个最小值以及最小值对应的向量 P0.mvecIdxMin。
步骤6:云服务器S0和S1根据队列中存储的P0.mvecIdxMin和 P1.mvecIdxMin统计得到的K个样本的标签数量,输出占比最大的标签LA和LB,并将LA和LB发送给数据使用者
步骤7:数据使用者根据LA+LB=L得到完整的标签L。
有益效果:本发明将秘密共享、混淆电路、不经意传输协议等安全多方计算密码学技术应用到KNN算法中,借助不合谋的双云服务器,设计了基于两方的安全的乘法、安全欧式距离、安全最小值协议,实现了KNN算法中的数据和计算的安全外包,使得具有查询需求的用户能够实现查询数据以及查询结果的隐私保护,数据拥有者的私有数据在用户的查询过程中一直以秘密共享拆分后的形式存在,保证了私有数据的隐私性。
附图说明
图1为本发明一种基于非共谋双云服务器的隐私保护外包数据 KNN算法的整体框架结构示意图。
图2为本发明一种基于非共谋双云服务器的隐私保护外包数据 KNN算法是系统流程示意图。
具体实施方式
下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1、2所示,一种基于非共谋双云服务器的隐私保护外包数据KNN算法,包括如下步骤:
步骤1:数据预处理
该步骤主要用于解决数据外包问题,利用算术秘密共享保护数据集,将经秘密共享拆分后的数据集发送给两个云服务器,这样每个云服务器均只有数据的一部分,在本方案的设定中,双云服务器是非共谋的,两个服务器不能合谋恢复原始数据集,因此能够实现数据集的安全外包。
数据拥有者将私有的训练数据集(X,L)经算术秘密共享随机拆分成(X0,L0)和(X1,L1)两个子数据集,分别发送给云服务器S0和S1,其中X是一个n×d的矩阵,n表示样本数,d表示样本的特征数,L是一个n维的列向量,表示数据集X中样本对应的标签。同理,将数据使用者拥有的数据集Y做同样的数据预处理,拆分成Y0和Y1,分别发送给云服务器S0和S1,Y是一个m×d的矩阵,m表示样本数,d表示样本的特征数。
步骤2:安全欧式距离平方计算
安全欧式距离平方协议是两方协议,数据拥有者的数据集中的点记为P,P∈X,用户的查询点记为Q,所有点的维度都是d,点P 和点Q的算术秘密共享记为和分别由服务器S0和云服务器 S1持有,点P与点Q之间的欧式距离平方记为可以改写成如下形式:
将可以重写成公式(1)的形式,可以发现其中和是由两方分别持有的数据,可以单独计算并不会泄露任何信息,而 中的第一个乘积项是由云服务器S0持有的第二个乘积项是由云服务器S1持有的,在不泄露信息的情况实现计算,需要调用步骤3的安全乘法计算协议。具体的安全欧式距离平方协议流程如下:
步骤3:安全乘法计算
假定云服务器S0和S1分别持有x和y两个数据,不泄露两方分别持有的x和y的情况下,计算出xy的值。对于安全乘法协议的研究,目前主要是基于同态加密和OT协议这两项技术,ABY框架中的实验数据表明,基于OT扩展的乘法计算的速度比基于同态加密的乘法计算更加高效,基于上述的结论,因此我们将工作的重点放在了基于 OT扩展的安全乘法协议。
两方安全乘法计算协议具体步骤如下:
Step 3.2:云服务器S1作为OT的接受者,输入(mi,0,mi,1,……,mi,N-1),其中mi,1= (Niy-mi,0)mod 2l,mi,x[i]=(Nix[i]y-mi,0)mod 2l
步骤3.3:云服务器S0作为OT的发送者,输入选择比特x[i]∈N,调用1-out-of-NOT协议,云服务器S0获得mi,x[i]=(Nix[i]y- mi,0)mod 2l
步骤4:安全最小值协议
在步骤3中,双云服务器分别持有矩阵P0.mDist和P1.mDist,接下来需要对步骤3中计算出来的距离进行排序。
以云服务器S0为例,持有以算术秘密共享形式的矩阵P0.mDist,要实现矩阵P0.mDist中相邻元素的两两比较,前人的方案提出的解决方案有以下2种思路:第一种是采用全同态,然而全同态的计算开销巨大,实用性差;第二种是将以算术秘密共享形式的矩阵P0.mDist转换成Yao共享形式,再利用混淆电路实现P0.mDist中相邻的两个元素之间的比较,但是算术秘密共享形式的数据转换成Yao共享,代价是昂贵的。本发明中提出一种新的形式比较混淆电路,避免了数据形式之间的转换。具体步骤如下:
步骤4.1:调用混淆电路比较矩阵P0.mDist中两两相邻的元素,输出01或者10用P0.vecGcMinOutput表示,1所在的位置对应两个比较元素中的较小值;
步骤4.2:将服务器输出P0.vecGcMinOutput连接构成向量 P0.mvecIdxMin,如果P0.mvecIdxMin中比特数为奇数,再 P0.mvecIdxMin的最后补1;
步骤4.3:P0.mvecIdxMin乘以P0.mDist,得到下一层待比较的元素P0.mShareMin;
步骤4.4:判断P0.mShareMin的长度是否大于1,如果小于等于 1,结束;
步骤4.5:如果P0.mShareMin的长度是奇数,将P0.mShareMin 的最后一位存储到P0.mLastNode;
步骤4.6:再次同步骤4.1调用混淆电路,得到比较结果 P0.vecGcMinOutput;
步骤4.7:将所有的输出P0.vecGcMinOutput连接构成向量 P0.mvecIdxMin;
步骤4.8:P0.mvecIdxMin乘以P0.mDist,得到下一层待比较的元素P0.mShareMin,将P0.mLastNode添加到P0.mShareMin,
重复步骤4.4~4.8,得到最小值P0.mShareMin以及最小值对应位置的向量P0.mvecIdxMin,将P0.mvecIdxMin存入队列q0中;云服务器S0的操作步骤同S1得到P1.mvecIdxMin存入队列q1中。
步骤5:本步骤解决的问题是找到距离最近的K个样本,在步骤 4中,已经找到距离的一个样本,接下来就是重复K次步骤4,得到 K个样本,具体过程如下所示:
步骤5.1:将P0.mShareMin和P1.mShareMin重新赋值为最大值;
步骤5.2:重复步骤4,得到K个最小值以及最小值对应的向量 P0.mvecIdxMin。
步骤6:云服务器S0和S1根据队列中存储的P0.mvecIdxMin和 P1.mvecIdxMin统计得到的K个样本的标签数量,输出占比最大的标签LA和LB,并将LA和LB发送给数据使用者
步骤7:数据使用者根据LA+LB=L得到完整的标签L。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (5)
1.一种基于非共谋双云服务器的隐私保护外包数据KNN算法,其特征在于,包括如下步骤:
步骤1:数据预处理
对数据拥有者的数据和用户的测试数据通过秘密共享,随机拆分成两个部分,分别发送给云服务器S0和S1;
步骤2:安全欧式距离平方计算
安全欧式距离平方协议是两方协议,数据拥有者的数据集中的点记为P,P∈X,用户的查询点记为Q,所有点的维度都是d,点P和点Q的算术秘密共享记为和分别由服务器S0和云服务器S1持有,点P与点Q之间的欧式距离平方记为可以改写成如下形式:
将可以重写成公式(1)的形式,可以发现其中和是由两方分别持有的数据,可以单独计算并不会泄露任何信息,而 中的第一个乘积项是由云服务器S0持有的第二个乘积项是由云服务器S1持有的,在不泄露信息的情况实现计算,需要调用步骤3的安全乘法计算协议;
步骤3:将欧式距离平方公式重写成步骤2中公式(1)的形式,双云服务器利用两方安全乘法协议计算公式(1)中的第三项;双云服务器各自计算公式(1)中的第一项和第二项,加上步骤3中得到的两方安全乘法协议计算结果,双云服务器得到P0.mDist和P1.mDist;
步骤4:双云服务器现在分别拥有P0.mDist和P1.mDist,利用安全最小值协议得到P0.mDist和P1.mDist中的最小值P0.mShareMin和P1.mShareMin以及最小值对应的位置P0.mvecIdxMin和P1.mvecIdxMin,并将的P0.mvecIdxMin和P1.mvecIdxMin存入队列q0和q1;
步骤5:双云服务器将P0.mDist和P1.mDist中的最小值P0.mShareMin和P1.mShareMin重新赋值成最大值;
步骤6:重复K次步骤4和5,根据队列q0和q1中存储的P0.mvecIdxMin和P1.mvecIdxMin,找到对应的样本标签,统计标签数量,将占比最大的标签LA和LB发送给用户;
步骤7:用户根据LA+LB=L,恢复秘密得到标签。
3.根据权利要求1所述的一种基于非共谋双云服务器的隐私保护外包数据KNN算法,其特征在于,所述步骤3中的两方安全乘法计算协议具体步骤如下:
Step 3.2:云服务器S1作为OT的接受者,输入(mi,0,mi,1,……,mi,N-1),其中mi,1=(Niy-mi,0)mod 2l,mi,x[i]=(Nix[i]y-mi,0)mod 2l
步骤3.3:云服务器S0作为OT的发送者,输入选择比特x[i]∈N,调用1-out-of-N OT协议,云服务器S0获得mi,x[i]=(Nix[i]y-mi,0)mod 2l
4.根据权利要求1所述的一种基于非共谋双云服务器的隐私保护外包数据KNN算法,其特征在于,所述步骤4中的安全最小值协议,以云服务器S0为例,持有以算术秘密共享形式的矩阵P0.mDist,要实现矩阵P0.mDist中相邻元素的两两比较,前人的方案提出的解决方案有以下2种思路:第一种是采用全同态,然而全同态的计算开销巨大,实用性差;第二种是将以算术秘密共享形式的矩阵P0.mDist转换成Yao共享形式,再利用混淆电路实现P0.mDist中相邻的两个元素之间的比较,但是算术秘密共享形式的数据转换成Yao共享,代价是昂贵的。本发明中提出一种新的形式比较混淆电路,避免了数据形式之间的转换。具体步骤如下:
步骤4.1:调用混淆电路比较矩阵P0.mDist中两两相邻的元素,输出01或者10用P0.vecGcMinOutput表示,1所在的位置对应两个比较元素中的较小值;
步骤4.2:将服务器输出P0.vecGcMinOutput连接构成向量P0.mvecIdxMin,如果P0.mvecIdxMin中比特数为奇数,再P0.mvecIdxMin的最后补1;
步骤4.3:P0.mvecIdxMin乘以P0.mDist,得到下一层待比较的元素P0.mShareMin;
步骤4.4:判断P0.mShareMin的长度是否大于1,如果小于等于1,结束;
步骤4.5:如果P0.mShareMin的长度是奇数,将P0.mShareMin的最后一位存储到P0.mLastNode;
步骤4.6:再次同步骤4.1调用混淆电路,得到比较结果P0.vecGcMinOutput;
步骤4.7:将所有的输出P0.vecGcMinOutput连接构成向量P0.mvecIdxMin;
步骤4.8:P0.mvecIdxMin乘以P0.mDist,得到下一层待比较的元素P0.mShareMin,将P0.mLastNode添加到P0.mShareMin,
重复步骤4.4~4.8,得到最小值P0.mShareMin以及最小值对应位置的向量P0.mvecIdxMin,将P0.mvecIdxMin存入队列q0中;云服务器S0的操作步骤同S1得到P1.mvecIdxMin存入队列q1中。
5.根据权利要求1所述的一种基于非共谋双云服务器的隐私保护外包数据KNN算法,其特征在于,所述步骤5是为了找到距离最近的K个样本,在步骤4中,已经找到距离的一个样本,接下来就是重复K次步骤4,得到K个样本,具体过程如下所示:
步骤5.1:将P0.mShareMin和P1.mShareMin重新赋值为最大值;
步骤5.2:重复步骤4,得到K个最小值以及最小值对应的向量P0.mvecIdxMin。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111266709.2A CN114154554B (zh) | 2021-10-28 | 2021-10-28 | 一种基于非共谋双云服务器的隐私保护外包数据knn方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111266709.2A CN114154554B (zh) | 2021-10-28 | 2021-10-28 | 一种基于非共谋双云服务器的隐私保护外包数据knn方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114154554A true CN114154554A (zh) | 2022-03-08 |
CN114154554B CN114154554B (zh) | 2024-06-28 |
Family
ID=80458540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111266709.2A Active CN114154554B (zh) | 2021-10-28 | 2021-10-28 | 一种基于非共谋双云服务器的隐私保护外包数据knn方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114154554B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114494803A (zh) * | 2022-04-18 | 2022-05-13 | 山东师范大学 | 基于安全计算的图像数据标注方法及系统 |
CN115396101A (zh) * | 2022-10-26 | 2022-11-25 | 华控清交信息科技(北京)有限公司 | 一种基于秘密分享的不经意打乱方法和系统 |
CN116388954A (zh) * | 2023-02-23 | 2023-07-04 | 西安电子科技大学 | 通用密态数据安全计算方法 |
CN117056978A (zh) * | 2023-08-30 | 2023-11-14 | 西安电子科技大学 | 一种基于算术共享的安全并查集方法及其运算方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106209371A (zh) * | 2016-07-25 | 2016-12-07 | 青岛大学 | 应用于rsa算法生成密钥的外包方法 |
WO2018184407A1 (zh) * | 2017-04-07 | 2018-10-11 | 哈尔滨工业大学深圳研究生院 | 一种具有隐私保护的K-means聚类方法及系统 |
US20190007196A1 (en) * | 2017-06-28 | 2019-01-03 | Qatar University | Method and system for privacy preserving computation in cloud using fully homomorphic encryption |
CN110011784A (zh) * | 2019-04-04 | 2019-07-12 | 东北大学 | 支持隐私保护的knn分类服务系统及方法 |
US20200042828A1 (en) * | 2018-08-03 | 2020-02-06 | Cerebri Al Inc. | Privacy & proprietary-information preserving collaborative multi-party machine learning |
CN112182649A (zh) * | 2020-09-22 | 2021-01-05 | 上海海洋大学 | 一种基于安全两方计算线性回归算法的数据隐私保护系统 |
CN113204788A (zh) * | 2021-05-11 | 2021-08-03 | 广州大学 | 一种细粒度属性匹配隐私保护方法 |
-
2021
- 2021-10-28 CN CN202111266709.2A patent/CN114154554B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106209371A (zh) * | 2016-07-25 | 2016-12-07 | 青岛大学 | 应用于rsa算法生成密钥的外包方法 |
WO2018184407A1 (zh) * | 2017-04-07 | 2018-10-11 | 哈尔滨工业大学深圳研究生院 | 一种具有隐私保护的K-means聚类方法及系统 |
US20190007196A1 (en) * | 2017-06-28 | 2019-01-03 | Qatar University | Method and system for privacy preserving computation in cloud using fully homomorphic encryption |
US20200042828A1 (en) * | 2018-08-03 | 2020-02-06 | Cerebri Al Inc. | Privacy & proprietary-information preserving collaborative multi-party machine learning |
CN110011784A (zh) * | 2019-04-04 | 2019-07-12 | 东北大学 | 支持隐私保护的knn分类服务系统及方法 |
CN112182649A (zh) * | 2020-09-22 | 2021-01-05 | 上海海洋大学 | 一种基于安全两方计算线性回归算法的数据隐私保护系统 |
CN113204788A (zh) * | 2021-05-11 | 2021-08-03 | 广州大学 | 一种细粒度属性匹配隐私保护方法 |
Non-Patent Citations (3)
Title |
---|
倪凯敏等: "一种基于对称加密的隐私保护增量真值发现算法", 《物联网技术》, vol. 10, no. 11, 31 December 2020 (2020-12-31) * |
孙茂华;宫哲;: "一种保护隐私集合并集外包计算协议", 密码学报, no. 02, 15 April 2016 (2016-04-15) * |
魏立斐等: "机器学习的安全问题及隐私保护", 《计算机研究与发展》, vol. 57, no. 10, 31 December 2020 (2020-12-31) * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114494803A (zh) * | 2022-04-18 | 2022-05-13 | 山东师范大学 | 基于安全计算的图像数据标注方法及系统 |
CN114494803B (zh) * | 2022-04-18 | 2022-07-05 | 山东师范大学 | 基于安全计算的图像数据标注方法及系统 |
CN115396101A (zh) * | 2022-10-26 | 2022-11-25 | 华控清交信息科技(北京)有限公司 | 一种基于秘密分享的不经意打乱方法和系统 |
CN115396101B (zh) * | 2022-10-26 | 2022-12-27 | 华控清交信息科技(北京)有限公司 | 一种基于秘密分享的不经意打乱方法和系统 |
CN116388954A (zh) * | 2023-02-23 | 2023-07-04 | 西安电子科技大学 | 通用密态数据安全计算方法 |
CN116388954B (zh) * | 2023-02-23 | 2023-09-01 | 西安电子科技大学 | 通用密态数据安全计算方法 |
CN117056978A (zh) * | 2023-08-30 | 2023-11-14 | 西安电子科技大学 | 一种基于算术共享的安全并查集方法及其运算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114154554B (zh) | 2024-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114154554A (zh) | 一种基于非共谋双云服务器的隐私保护外包数据knn算法 | |
Li et al. | Privacy-preserving machine learning with multiple data providers | |
Ma et al. | PDLM: Privacy-preserving deep learning model on cloud with multiple keys | |
CN110011784B (zh) | 支持隐私保护的knn分类服务系统及方法 | |
Liu et al. | Intelligent and secure content-based image retrieval for mobile users | |
EP3075098A1 (en) | Server-aided private set intersection (psi) with data transfer | |
Pang et al. | Privacy-preserving association rule mining using homomorphic encryption in a multikey environment | |
Erkin et al. | Privacy-preserving distributed clustering | |
Beye et al. | Efficient privacy preserving k-means clustering in a three-party setting | |
CN112532383B (zh) | 一种基于秘密分享的隐私保护计算方法 | |
CN112769542B (zh) | 基于椭圆曲线的乘法三元组生成方法、装置、设备及介质 | |
CN115510502B (zh) | 一种隐私保护的pca方法及系统 | |
Vijayakumar et al. | An improved level of security for dna steganography using hyperelliptic curve cryptography | |
CN114640444A (zh) | 基于国产密码算法的隐私保护集合交集获取方法及装置 | |
Zhu et al. | Efficient scalar product protocol and its privacy–preserving application | |
Zhao et al. | SGBoost: An efficient and privacy-preserving vertical federated tree boosting framework | |
Dong et al. | FLEXBNN: fast private binary neural network inference with flexible bit-width | |
Qiu et al. | Efficient privacy-preserving outsourced k-means clustering on distributed data | |
CN114358323A (zh) | 联邦学习环境中基于第三方高效皮尔森系数计算方法 | |
Cheng et al. | Secure similar sequence query over multi-source genomic data on cloud | |
Li et al. | Secure and evaluable clustering based on a multifunctional and privacy-preserving outsourcing computation toolkit | |
Ma et al. | Over-threshold multi-party private set operation protocols for lightweight clients | |
Hong et al. | Secure privacy-preserving association rule mining with single cloud server | |
Yi et al. | Efficient Privacy-preserving Non-exhaustive Nearest Neighbor Search of large-scale databases | |
CN116132029B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |