CN109992977B - 一种基于安全多方计算技术的数据异常点清洗方法 - Google Patents
一种基于安全多方计算技术的数据异常点清洗方法 Download PDFInfo
- Publication number
- CN109992977B CN109992977B CN201910156492.6A CN201910156492A CN109992977B CN 109992977 B CN109992977 B CN 109992977B CN 201910156492 A CN201910156492 A CN 201910156492A CN 109992977 B CN109992977 B CN 109992977B
- Authority
- CN
- China
- Prior art keywords
- data
- server
- party
- thre
- representing
- 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
Links
- 238000004140 cleaning Methods 0.000 title claims abstract description 45
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000005516 engineering process Methods 0.000 title claims abstract description 22
- 230000002159 abnormal effect Effects 0.000 claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims abstract description 14
- AYFVYJQAPQTCCC-GBXIJSLDSA-N L-threonine Chemical compound C[C@@H](O)[C@H](N)C(O)=O AYFVYJQAPQTCCC-GBXIJSLDSA-N 0.000 claims description 87
- 230000000052 comparative effect Effects 0.000 claims description 12
- 239000000284 extract Substances 0.000 claims description 12
- 230000014759 maintenance of location Effects 0.000 claims description 12
- 230000000717 retained effect Effects 0.000 claims description 10
- 238000012163 sequencing technique Methods 0.000 claims description 7
- 238000010801 machine learning Methods 0.000 claims description 5
- 238000001514 detection method Methods 0.000 abstract description 8
- 238000012545 processing Methods 0.000 description 8
- 238000012549 training Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 231100000279 safety data Toxicity 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/243—Classification techniques relating to the number of classes
- G06F18/2433—Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
-
- 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
- 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)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于信息安全技术领域,公开了一种基于安全多方计算技术的数据异常点清洗方法,所述基于安全多方计算技术的数据异常点清洗方法包括:将A与B两个参与方的数据统一为矩阵格式,拥有相同维度,并且最后一维为该条数据的AVF值;参与方A与参与方B利用安全多方计算算法ABY中的Yao’s加密算法对数据矩阵进行加密;服务器A与服务器B对各参与方上传的加密数据集进行数据异常点清洗。本发明结合安全多方计算技术和AVF异常值检测算法,利用现有的安全多方计算工具ABY算法,实现了对高维数据的高效检测,并且在保证一定效率的前提下利用安全多方计算技术中的Yao’s加密算法保证了各方数据隐私相当的安全性。
Description
技术领域
本发明属于信息安全技术领域,尤其涉及一种基于安全多方计算技术的数据异常点清洗方法。
背景技术
目前,最接近的现有技术:联合数据源是指机器学习训练过程中,多个参与方拥有同一类型的数据,将这些数据融合起来,可以扩大训练数据集规模,提升模型训练结果的准确度。机器学习发展至今,模型的优劣在很大程度上取决于数据集的规模与质量,因此联合数据源学习成为机器学习发展的一大趋势。但是随着联合数据源训练优势而来的,就是多数据源数据隐私安全保护的新问题,由于在一些场景下,各参与方拥有的数据也许是隐私敏感的,比如一些商业数据或者一些客户的隐私信息,如医疗信息或财产信息等,这样的数据对隐私保护的要求极高,自然也很难做到随意共享。
随着大家对于数据融合的需求逐渐增加,针对保护数据隐私的算法也陆续出现。如增加可信第三方的方法,多个参与方共同认证一个可信的第三方,将各自的明文数据上传给第三方,由第三方进行数据清洗、训练等任务,可信第三方往往是一些具有公信力的组织,或者一些提供收费服务的云计算提供者。这样带来的好处是实现了数据的隐私保护,同时也达到了融合数据的目的。但是这种算法存在一定的安全风险,可信第三方往往是诚实但好奇的,如果在收集到数据进行处理的过程中有不可预料的数据泄露,或者遇到恶意的第三方窃取数据信息,往往会造成严重的后果。
随着各领域技术的融会贯通,密码学的思维被应用在了联合数据源训练的领域,即使用成熟的加密算法,将各参与方的数据进行加密,再将加密数据集合起来送给可信第三方,可信第三方并不拥有敏感的明文数据,只拥有加密后看上去毫无现实意义的密文数据,加密算法往往采用同态加密,即明文加密后,对密文进行怎样的运算,等同于对明文进行同样的运算,这种加密方法保证了密文训练的可行性,这样就极大程度的保证了数据的隐私性。但是同样,这样的算法也存在现实问题,最大的问题就是安全与效率之间的博弈,目前已有的同态加密算法,得到结果往往需要耗费大量的时间和计算资源,在对隐私要求没有那么高的场景下,这种算法只有极低的使用效率,并不适合大量推广。
现有技术一提出了一种利用同态加密算法解决多数据源联合数据异常点清洗的算法,利用同态加密算法对各方数据进行加密,然后采用AVF异常点检测算法对数据集中的异常点进行筛选和清洗,但是由于同态加密本身的效率限制,其加解密所需的时间和计算资源较多,导致该算法相对计算效率较低,不能满足大量的数据处理需求;现有技术二提出了基于LOF异常点检测算法的隐私保护数据清洗方案,但是由于其基于数据分布密度而决策数据是否为异常点的性质,如果数据的维度较高,则无法有效的根据分布密度的区别来分辨异常点的存在,因此该技术存在一定的面对高维数据集时处理效率较低的问题。
综上所述,现有技术存在的问题是:
(1)现有利用同态加密算法解决多数据源联合数据异常点清洗的算法,计算效率较低,不能满足大量的数据处理需求。
(2)现有基于LOF异常点检测算法的隐私保护数据清洗方案存在面对高维数据集时处理效率较低的问题。
针对以上技术存在问题,需要一种能够平衡计算效率与安全性的新的技术,能够改进传统同态加密算法的低效率和高能耗,还能够保证必要的数据隐私安全需求,同时为了更好地适应实际实施实例,还需要能够支持高维数据的处理。
解决上述技术问题的意义:
针对以上技术存在的问题进行改进之后,可以使算法更加适应实际使用环境,提升了实际使用效率,增加了算法的可实施度,能够更好地保护敏感数据的隐私安全。
发明内容
针对现有技术存在的问题,本发明提供了一种基于安全多方计算技术的数据异常点清洗方法。
本发明是这样实现的,一种基于安全多方计算技术的数据异常点清洗方法,所述基于安全多方计算技术的数据异常点清洗方法包括:
第一步,将A与B两个参与方的数据统一为矩阵格式,拥有相同维度,并且最后一维为该条数据的AVF值;
第二步,参与方A与参与方B利用安全多方计算算法ABY中的Yao’s加密算法对数据矩阵进行加密;
第三步,服务器A与服务器B对各参与方上传的加密数据集进行数据异常点清洗。
进一步,所述第一步参与方A与参与方B按照规定统一自有数据集格式:
其中,D1表示参与方A的N×(M+1)的数据集矩阵,aij表示参与方A数据集中的任意数据,avfai表示参与方A第i条数据的AVF值,i∈[1,N],j∈[1,M],M,N∈N+;D2表示参与方B的P×(M+1)的数据集矩阵,bkj表示参与方B数据集中的任意数据,avfbk表示参与方A第k条数据的AVF值,k∈[1,P],j∈[1,M],M,P∈N+。其中两个参与方的数据维度相同。
进一步,所述第二步参与方A与参与方B按照规定加密自有数据集具体包括:
1)利用安全多方计算加密ABY算法中的Yao’s加密算法对参与方A的数据集D1进行加密:
具体按照下式加密每一个元素:
其中,表示加密后的数据交给服务器A的部分,表示加密后的数据交给服务器B的部分,aij表示参与方A的任意数据;表示加密后的参与方A的第i条数据的AVF值交给服务器A的部分,表示加密后的参与方A的第i条数据的AVF值交给服务器B的部分,avfai表示参与方A的第i条数据的AVF值;
2)利用下式表示加密后的参与方A的数据集:
其中,X10表示服务器A持有的参与方A的加密数据集,X11表示服务器B持有的参与方A的加密数据集,i∈[1,N],j∈[1,M],M,N∈N+;
3)利用安全多方计算加密ABY算法中的Yao’s加密算法对参与方B的数据集D2进行加密:
具体按照下式加密每一个元素:
其中,表示加密后的数据交给服务器A的部分,表示加密后的数据交给服务器B的部分,bkj表示参与方A的任意数据;表示加密后的参与方B的第k条数据的AVF值交给服务器A的部分,表示加密后的参与方B的第k条数据的AVF值交给服务器B的部分,avfbk表示参与方B的第k条数据的AVF值;
4)利用下式表示加密后的参与方B的数据集:
其中,X20表示服务器A持有的参与方B的加密数据集,X21表示服务器B持有的参与方B的加密数据集,k∈[1,P],j∈[1,M],M,P∈N+;
5)参与方A与参与方B分别将加密后的数据上传至对应服务器。
进一步,所述第三步服务器A与服务器B对各参与方上传的加密数据集进行数据异常点清洗具体包括:
1)服务器A提取自己拿到的参与方A的加密数据集中的最后一维数据:
服务器A使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A10进行排序:
A′10=Sort(A10);
其中,A10表示服务器A拥有的参与方A的加密数据集中最后一维数据,A′10表示A10按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法;
以A10为基准将X10也同时排序,即按照A10降序排列X10,排序完成后:
其中,X′10为以X10最后一维数据,即A10为基准降序排序完成后的参与方A提交给服务器A的数据集,i∈[1,N],j∈[1,M],M,N∈N+;
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′10中的数据,按顺序与Thre比较大小:
Resi=Comp(A′10i,Thre);
其中,A′10i表示A′10中的元素,i∈[1,N],N∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resi表示A′10i与Thre比较的结果,若Resi值为1,表示A′10i≥Thre;若Resi值为0,表示A′10i<Thre,将A′10中的数据,按顺序与Thre比较大小,直到Resi=0,停止比较,将X′10中的前i行数据保留:
其中,I=i,为排序之后保留的前i行数据,j∈[1,M],M∈N+,X″10为最终数据清洗完成后服务器A所拥有的参与方A的数据集;
2)服务器A提取自己拿到的参与方B的加密数据集中的最后一维数据:
服务器A使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A20进行排序:
A′20=Sort(A20);
其中,A20表示服务器A拥有的参与方B的加密数据集中最后一维数据,A′20表示A20按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法;
以A20为基准将X20也同时排序,即按照A20降序排列X20,排序完成后:
其中,X′20为以X20最后一维数据,即A20为基准降序排序完成后的参与方B提交给服务器A的数据集,k∈[1,P],j∈[1,M],M,P∈N+;
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′20中的数据,按顺序与Thre比较大小:
Resk=Comp(A′20k,Thre);
其中,A′20k表示A′20中的元素,k∈[1,P],P∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resk表示A′20k与Thre比较的结果,若Resk值为1,表示A′20k≥Thre;若Resk值为0,表示A′20k<Thre,将A′20中的数据,按顺序与Thre比较大小,直到Resk=0,停止比较,将X′20中的前k行数据保留:
其中,K=k,为排序之后保留的前k行数据,j∈[1,M],M∈N+,X″20为最终数据清洗完成后服务器A所拥有的参与方B的数据集;
3)服务器B提取自己拿到的参与方A的加密数据集中的最后一维数据:
服务器B使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A11进行排序:
A′11=Sort(A11);
其中,A11表示服务器B拥有的参与方A的加密数据集中最后一维数据,A′11表示A11按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法;
以A11为基准将X11也同时排序,即按照A11降序排列X11,排序完成后:
其中,X′11为以X11最后一维数据,即A11为基准降序排序完成后的参与方A提交给服务器B的数据集,i∈[1,N],j∈[1,M],M,N∈N+;
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′11中的数据,按顺序与Thre比较大小:
Resi=Comp(A′11i,Thre);
其中,A′11i表示A′11中的元素,i∈[1,N],N∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resi表示A′11i与Thre比较的结果,若Resi值为1,表示A′11i≥Thre;若Resi值为0,表示A′11i<Thre,将A′11中的数据,按顺序与Thre比较大小,直到Resi=0,停止比较,将X′11中的前i行数据保留:
其中,I=i,为排序之后保留的前i行数据,j∈[1,M],M∈N+,X″11为最终数据清洗完成后服务器B所拥有的参与方A的数据集;
4)服务器B提取自己拿到的参与方B的加密数据集中的最后一维数据:
服务器B使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A21进行排序:
A′21=Sort(A21);
其中,A21表示服务器B拥有的参与方B的加密数据集中最后一维数据,A′21表示A21按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法。
以A21为基准将X21也同时排序,即按照A21降序排列X21,排序完成后:
其中,X′21为以X21最后一维数据,即A21为基准降序排序完成后的参与方B提交给服务器B的数据集,k∈[1,P],j∈[1,M],M,P∈N+。
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′21中的数据,按顺序与Thre比较大小:
Resk=Comp(A′21k,Thre);
其中,A′21k表示A′21中的元素,k∈[1,P],P∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resk表示A′21k与Thre比较的结果,若Resk值为1,表示A′21k≥Thre;若Resk值为0,表示A′21k<Thre,将A′21中的数据,按顺序与Thre比较大小,直到Resk=0,停止比较,将X′21中的前k行数据保留:
其中,K=k,为排序之后保留的前k行数据,j∈[1,M],M∈N+,X″21为最终数据清洗完成后服务器B所拥有的参与方B的数据集;
5)最终得到的X″10,X″11,X″20,X″21为最终数据清洗完成后的数据集。
本发明的另一目的在于提供一种应用所述基于安全多方计算技术的数据异常点清洗方法的机器学习系统。
综上所述,本发明的优点及积极效果为:本发明结合安全多方计算技术和AVF异常值检测算法,利用现有的安全多方计算工具ABY算法,实现了对高维数据的高效检测,并且在保证一定效率的前提下利用安全多方计算技术中的Yao’s加密算法保证了各方数据隐私相当的安全性。
表1技术性能对比
附图说明
图1是本发明实施例提供的基于安全多方计算技术的数据异常点清洗方法流程图。
图2是本发明实施例提供的实施例的场景示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有利用同态加密算法解决多数据源联合数据异常点清洗的算法,计算效率较低,不能满足大量的数据处理需求;现有基于LOF异常点检测算法的隐私保护数据清洗方案存在面对高维数据集时处理效率较低的问题。本发明主要用于实现联合数据源环境下的安全数据异常点清洗算法;基于安全多方计算技术,实现了隐私保护前提下的多个数据源联合机器学习场景下的数据异常点清洗工作。
下面结合附图对本发明的应用原理作详细的描述。
如图1所示,本发明实施例提供的基于安全多方计算技术的数据异常点清洗方法包括以下步骤:
S101:参与方A与参与方B按照规定统一自有数据集格式:将A与B两个参与方的数据统一为矩阵格式,拥有相同维度,并且最后一维为该条数据的Attribute ValueFrequency(AVF)值;
S102:参与方A与参与方B按照规定加密自有数据集:参与方A与参与方B利用安全多方计算算法ABY中的Yao’s加密算法对数据矩阵进行加密;
S103:服务器A与服务器B对各参与方上传的加密数据集进行数据异常点清洗。
下面结合具体实施例对本发明的应用原理作进一步的描述。
本发明实施例提供的基于安全多方计算技术的数据异常点清洗方法具体包括以下步骤:
步骤一,参与方A与参与方B按照规定统一自有数据集格式:
其中,D1表示参与方A的N×(M+1)的数据集矩阵,aij表示参与方A数据集中的任意数据,avfai表示参与方A第i条数据的Attribute Value Frequency(AVF)值,i∈[1,N],j∈[1,M],M,N∈N+;D2表示参与方B的P×(M+1)的数据集矩阵,bkj表示参与方B数据集中的任意数据,avfbk表示参与方A第k条数据的Attribute Value Frequency(AVF)值,k∈[1,P],j∈[1,M],M,P∈N+。其中两个参与方的数据维度(即M的值)相同。
步骤二,参与方A与参与方B按照规定加密自有数据集:
2a)利用安全多方计算加密ABY算法中的Yao’s加密算法对参与方A的数据集D1进行加密:
具体按照下式加密每一个元素:
其中,表示加密后的数据交给服务器A的部分,表示加密后的数据交给服务器B的部分,aij表示参与方A的任意数据;表示加密后的参与方A的第i条数据的AVF值交给服务器A的部分,表示加密后的参与方A的第i条数据的AVF值交给服务器B的部分,avfai表示参与方A的第i条数据的AVF值。
2b)利用下式表示加密后的参与方A的数据集:
其中,X10表示服务器A持有的参与方A的加密数据集,X11表示服务器B持有的参与方A的加密数据集,i∈[1,N],j∈[1,M],M,N∈N+。
2c)利用安全多方计算加密ABY算法中的Yao’s加密算法对参与方B的数据集D2进行加密:
具体按照下式加密每一个元素:
其中,表示加密后的数据交给服务器A的部分,表示加密后的数据交给服务器B的部分,bkj表示参与方A的任意数据;表示加密后的参与方B的第k条数据的AVF值交给服务器A的部分,表示加密后的参与方B的第k条数据的AVF值交给服务器B的部分,avfbk表示参与方B的第k条数据的AVF值。
2d)利用下式表示加密后的参与方B的数据集:
其中,X20表示服务器A持有的参与方B的加密数据集,X21表示服务器B持有的参与方B的加密数据集,k∈[1,P],j∈[1,M],M,P∈N+。
2e)参与方A与参与方B分别将加密后的数据上传至对应服务器。
步骤三,服务器A与服务器B对各参与方上传的加密数据集进行数据异常点清洗:
3a)服务器A提取自己拿到的参与方A的加密数据集中的最后一维数据,即:
服务器A使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A10进行排序:
A′10=Sort(A10);
其中,A10表示服务器A拥有的参与方A的加密数据集中最后一维数据,A′10表示A10按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法。
以A10为基准将X10也同时排序,即按照A10降序排列X10,排序完成后:
其中,X′10为以X10最后一维数据,即A10为基准降序排序完成后的参与方A提交给服务器A的数据集,i∈[1,N],j∈[1,M],M,N∈N+。
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′10中的数据,按顺序与Thre比较大小:
Resi=Comp(A′10i,Thre);
其中,A′10i表示A′10中的元素,i∈[1,N],N∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resi表示A′10i与Thre比较的结果,若Resi值为1,表示A′10i≥Thre;若Resi值为0,表示A′10i<Thre,将A′10中的数据,按顺序与Thre比较大小,直到Resi=0,停止比较,将X′10中的前i行数据保留:
其中,I=i,为排序之后保留的前i行数据,j∈[1,M},M∈N+,X″10为最终数据清洗完成后服务器A所拥有的参与方A的数据集。
3b)服务器A提取自己拿到的参与方B的加密数据集中的最后一维数据,即:
服务器A使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A20进行排序:
A′20=Sort(A20);
其中,A20表示服务器A拥有的参与方B的加密数据集中最后一维数据,A′20表示A20按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法。
以A20为基准将X20也同时排序,即按照A20降序排列X20,排序完成后:
其中,X′20为以X20最后一维数据,即A20为基准降序排序完成后的参与方B提交给服务器A的数据集,k∈[1,P],j∈[1,M],M,P∈N+。
规定一个固定值Thre(同上文Thre),表示AVF值在正常范围内的阈值,将A′20
中的数据,按顺序与Thre比较大小:
Resk=Comp(A′20k,Thre);
其中,A′20k表示A′20中的元素,k∈[1,P],P∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resk表示A′20k与Thre比较的结果,若Resk值为1,表示A′20k≥Thre;若Resk值为0,表示A′20k<Thre,将A′20中的数据,按顺序与Thre比较大小,直到Resk=0,停止比较,将X′20中的前k行数据保留:
其中,K=k,为排序之后保留的前k行数据,j∈[1,M],M∈N+,X″20为最终数据清洗完成后服务器A所拥有的参与方B的数据集。
3c)服务器B提取自己拿到的参与方A的加密数据集中的最后一维数据,即:
服务器B使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A11进行排序:
A′11=Sort(A11);
其中,A11表示服务器B拥有的参与方A的加密数据集中最后一维数据,A′11表示A11按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法。
以A11为基准将X11也同时排序,即按照A11降序排列X11,排序完成后:
其中,X′11为以X11最后一维数据,即A11为基准降序排序完成后的参与方A提交给服务器B的数据集,i∈[1,N],j∈[1,M],M,N∈N+。
规定一个固定值Thre(同上文Thre),表示AVF值在正常范围内的阈值,将A′11中的数据,按顺序与Thre比较大小:
Resi=Comp(A′11i,Thre);
其中,A′11i表示A′11中的元素,k∈[1,N],P∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resi表示A′11i与Thre比较的结果,若Resi值为1,表示A′11i≥Thre;若Resi值为0,表示A′11i<Thre,将A′11中的数据,按顺序与Thre比较大小,直到Resi=0,停止比较,将X′11中的前i行数据保留:
其中,I=i,为排序之后保留的前i行数据,j∈[1,M],M∈N+,X″11为最终数据清洗完成后服务器B所拥有的参与方A的数据集。
3d)服务器B提取自己拿到的参与方B的加密数据集中的最后一维数据,即:
服务器B使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A21进行排序:
A′21=Sort(A21);
其中,A21表示服务器B拥有的参与方B的加密数据集中最后一维数据,A′21表示A21按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法。
以A21为基准将X21也同时排序,即按照A21降序排列X21,排序完成后:
其中,X′21为以X21最后一维数据,即A21为基准降序排序完成后的参与方B提交给服务器B的数据集,k∈[1,P],j∈[1,M],M,P∈N+。
规定一个固定值Thre(同上文Thre),表示AVF值在正常范围内的阈值,将A′21中的数据,按顺序与Thre比较大小:
Resk=Comp(A′21k,Thre);
其中,A′21k表示A′21中的元素,k∈[1,P],P∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resk表示A′21k与Thre比较的结果,若Resk值为1,表示A′21k≥Thre;若Resk值为0,表示A′21k<Thre,将A′21k中的数据,按顺序与Thre比较大小,直到Resk=0,停止比较,将X′21中的前k行数据保留:
其中,K=k,为排序之后保留的前k行数据,j∈[1,M],M∈N+,X″21为最终数据清洗完成后服务器B所拥有的参与方B的数据集。
3e)最终得到的X″10,X″11,X″20,X″21为最终数据清洗完成后的数据集。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于安全多方计算技术的数据异常点清洗方法,其特征在于,所述基于安全多方计算技术的数据异常点清洗方法包括:
第一步,将A与B两个参与方的数据统一为矩阵格式,拥有相同维度,并且最后一维为该条数据的AVF值;
第二步,参与方A与参与方B利用安全多方计算算法ABY中的Yao’s加密算法对数据矩阵进行加密;
第三步,服务器A与服务器B对各参与方上传的加密数据集进行数据异常点清洗。
3.如权利要求1所述的基于安全多方计算技术的数据异常点清洗方法,其特征在于,所述第二步参与方A与参与方B按照规定加密自有数据集具体包括:
1)利用安全多方计算加密ABY算法中的Yao’s加密算法对参与方A的数据集D1进行加密:
具体按照下式加密每一个元素:
其中,表示加密后的数据交给服务器A的部分,表示加密后的数据交给服务器B的部分,aij表示参与方A的任意数据;表示加密后的参与方A的第i条数据的AVF值交给服务器A的部分,表示加密后的参与方A的第i条数据的AVF值交给服务器B的部分,avfai表示参与方A的第i条数据的AVF值;
2)利用下式表示加密后的参与方A的数据集:
其中,X10表示服务器A持有的参与方A的加密数据集,X11表示服务器B持有的参与方A的加密数据集,i∈[1,N],j∈[1,M],M,N∈N+;
3)利用安全多方计算加密ABY算法中的Yao’s加密算法对参与方B的数据集D2进行加密:
具体按照下式加密每一个元素:
其中,表示加密后的数据交给服务器A的部分,表示加密后的数据交给服务器B的部分,bkj表示参与方A的任意数据;表示加密后的参与方B的第k条数据的AVF值交给服务器A的部分,表示加密后的参与方B的第k条数据的AVF值交给服务器B的部分,avfbk表示参与方B的第k条数据的AVF值;
4)利用下式表示加密后的参与方B的数据集:
其中,X20表示服务器A持有的参与方B的加密数据集,X21表示服务器B持有的参与方B的加密数据集,k∈[1,P],j∈[1,M],M,P∈N+;
5)参与方A与参与方B分别将加密后的数据上传至对应服务器。
4.如权利要求1所述的基于安全多方计算技术的数据异常点清洗方法,其特征在于,所述第三步服务器A与服务器B对各参与方上传的加密数据集进行数据异常点清洗具体包括:
1)服务器A提取自己拿到的参与方A的加密数据集中的最后一维数据:
服务器A使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A10进行排序:
A′10=Sort(A10);
其中,A10表示服务器A拥有的参与方A的加密数据集中最后一维数据,A′10表示A′10按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法;
以A10为基准将X10也同时排序,即按照A10降序排列X10,排序完成后:
其中,X′10为以X10最后一维数据,即A10为基准降序排序完成后的参与方A提交给服务器A的数据集,i∈[1,N],j∈[1,M],M,N∈N+;
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′10中的数据,按顺序与Thre比较大小:
Resi=Comp(A′10i,Thre);
其中,A′10i表示A′10中的元素,i′[1,N],N∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resi表示A′10i与Thre比较的结果,若Resi值为1,表示A′10i≥Thre;若Resi值为0,表示A′10i<Thre,将A′10中的数据,按顺序与Thre比较大小,直到Resi=0,停止比较,将X′10中的前i行数据保留:
其中,I=i,为排序之后保留的前i行数据,j∈[1,M],M∈N+,X″10为最终数据清洗完成后服务器A所拥有的参与方A的数据集;
2)服务器A提取自己拿到的参与方B的加密数据集中的最后一维数据:
服务器A使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A′20进行排序:
A′20=Sort(A20);
其中,A20表示服务器A拥有的参与方B的加密数据集中最后一维数据,A′20表示A20按照降序排序完成后的数据,Sore()表示Yao’s加密算法中的排序算法;
以A20为基准将X20也同时排序,即按照A20降序排列X20,排序完成后:
其中,X′20为以X20最后一维数据,即A20为基准降序排序完成后的参与方B提交给服务器A的数据集,k∈[1,P],j∈[1,M],M,P∈N+;
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′20中的数据,按顺序与Thre比较大小:
Resk=Comp(A′20k,Thre);
其中,A′20k表示A′20中的元素,k∈[1,P],P∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resk表示A′20k与Thre比较的结果,若Resk值为1,表示A′20k≥Thre;若Resk值为0,表示A′20k<Thre,将A′20中的数据,按顺序与Thre比较大小,直到Resk=0,停止比较,将X′20中的前k行数据保留:
其中,K=k,为排序之后保留的前k行数据,j∈[1,M],M∈N+,X″20为最终数据清洗完成后服务器A所拥有的参与方B的数据集;
3)服务器B提取自己拿到的参与方A的加密数据集中的最后一维数据:
服务器B使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A11进行排序:
A′11=Sort(A11);
其中,A11表示服务器B拥有的参与方A的加密数据集中最后一维数据,A′11表示A11按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法;
以A11为基准将X11也同时排序,即按照A11降序排列X11,排序完成后:
其中,A′11为以X11最后一维数据,即A11为基准降序排序完成后的参与方A提交给服务器B的数据集,i∈[1,N],j∈[1,M],M,N∈N+;
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′11中的数据,按顺序与Thre比较大小:
Resi=Comp(A′11i,Thre);
其中,A′11i表示A′11中的元素,i∈[1,N],N∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resi表示A′11i与Thre比较的结果,若Resi值为1,表示A′11i≥Thre;若Resi值为0,表示A′11i<Thre,将A′11中的数据,按顺序与Thre比较大小,直到Resi=0,停止比较,将X′11中的前i行数据保留:
其中,I=i,为排序之后保留的前i行数据,j∈[1,M],M∈N+,X″11为最终数据清洗完成后服务器B所拥有的参与方A的数据集;
4)服务器B提取自己拿到的参与方B的加密数据集中的最后一维数据:
服务器B使用安全加密算法ABY中的Yao’s加密算法中的排序算法对A21进行排序:
A′21=Sort(A21);
其中,A′21表示服务器B拥有的参与方B的加密数据集中最后一维数据,A′21表示A21按照降序排序完成后的数据,Sort()表示Yao’s加密算法中的排序算法;
以A21为基准将X21也同时排序,即按照A21降序排列X21,排序完成后:
其中,X′21为以X21最后一维数据,即A21为基准降序排序完成后的参与方B提交给服务器B的数据集,k∈[1,P],j∈[1,M],M,P∈N+;
规定一个固定值Thre,表示AVF值在正常范围内的阈值,将A′21中的数据,按顺序与Thre比较大小:
Resk=Comp(A′21k,Thre);
其中,A′21k表示A′21中的元素,k∈[1,P],P∈N+,Comp()表示Yao’s加密算法中的比较大小算法,Resk表示A′21k与Thre比较的结果,若Resk值为1,表示A′21k≥Thre;若Resk值为0,表示A′21k<Thre,将A′21中的数据,按顺序与Thre比较大小,直到Resk=0,停止比较,将X′21中的前k行数据保留:
其中,K=k,为排序之后保留的前k行数据,j∈[1,M],M∈M+,X″21为最终数据清洗完成后服务器B所拥有的参与方B的数据集;
5)最终得到的X″10,X″11,X″20,X″21为最终数据清洗完成后的数据集。
5.一种应用权利要求1~4任意一项所述基于安全多方计算技术的数据异常点清洗方法的机器学习系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910156492.6A CN109992977B (zh) | 2019-03-01 | 2019-03-01 | 一种基于安全多方计算技术的数据异常点清洗方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910156492.6A CN109992977B (zh) | 2019-03-01 | 2019-03-01 | 一种基于安全多方计算技术的数据异常点清洗方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109992977A CN109992977A (zh) | 2019-07-09 |
CN109992977B true CN109992977B (zh) | 2022-12-16 |
Family
ID=67130167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910156492.6A Active CN109992977B (zh) | 2019-03-01 | 2019-03-01 | 一种基于安全多方计算技术的数据异常点清洗方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109992977B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046409B (zh) * | 2019-12-16 | 2021-04-13 | 支付宝(杭州)信息技术有限公司 | 一种私有数据多方安全计算方法和系统 |
CN111125735B (zh) * | 2019-12-20 | 2021-11-02 | 支付宝(杭州)信息技术有限公司 | 一种基于隐私数据进行模型训练的方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013102488A1 (en) * | 2012-01-02 | 2013-07-11 | Telecom Italia S.P.A. | Method and system for comparing images |
CN108712260A (zh) * | 2018-05-09 | 2018-10-26 | 曲阜师范大学 | 云环境下保护隐私的多方深度学习计算代理方法 |
CN108809628A (zh) * | 2018-06-13 | 2018-11-13 | 哈尔滨工业大学深圳研究生院 | 基于安全多方下的时间序列异常检测方法与系统 |
-
2019
- 2019-03-01 CN CN201910156492.6A patent/CN109992977B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013102488A1 (en) * | 2012-01-02 | 2013-07-11 | Telecom Italia S.P.A. | Method and system for comparing images |
CN108712260A (zh) * | 2018-05-09 | 2018-10-26 | 曲阜师范大学 | 云环境下保护隐私的多方深度学习计算代理方法 |
CN108809628A (zh) * | 2018-06-13 | 2018-11-13 | 哈尔滨工业大学深圳研究生院 | 基于安全多方下的时间序列异常检测方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109992977A (zh) | 2019-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hao et al. | Towards efficient and privacy-preserving federated deep learning | |
CN110557245B (zh) | 用于spdz的容错和安全多方计算的方法和系统 | |
CN112906044B (zh) | 多方安全计算方法、装置、设备及存储介质 | |
CN110084063B (zh) | 一种保护隐私数据的梯度下降计算方法 | |
CN112380565A (zh) | 一种基于可信硬件与区块链的安全多方计算方法 | |
CN113518092A (zh) | 实现多方隐私的集合交集方法 | |
CN114614983B (zh) | 一种基于安全多方计算的特征融合隐私保护方法 | |
CN109992977B (zh) | 一种基于安全多方计算技术的数据异常点清洗方法 | |
CN114548418A (zh) | 一种基于秘密分享的横向联邦iv算法 | |
CN109617900A (zh) | 基于物联网与区块链技术结合的信息数据加密的方法 | |
Li et al. | Privacy-aware secure anonymous communication protocol in CPSS cloud computing | |
CN114614970A (zh) | 一种基于多计算方和同态加密的隐私数据安全处理方法 | |
CN115664629A (zh) | 一种基于同态加密的智慧物联平台数据隐私保护方法 | |
Zhang et al. | Vertical federated learning based on consortium blockchain for data sharing in mobile edge computing | |
CN114866312B (zh) | 一种保护数据隐私的共有数据确定方法及装置 | |
CN115276986B (zh) | 一种通用场景下的云代理池分流重加密共享方法 | |
CN113328989B (zh) | 端云协同的用户隐私保护车辆保险保费计算模型及方法 | |
CN115426127A (zh) | 一种基于o-cp-abe云边端协同环境下数据安全分享方法 | |
CN115776375A (zh) | 基于Shamir门限人脸信息识别加密认证和数据安全传输的方法 | |
Wang et al. | General survey on massive data encryption | |
Liu et al. | Power grid data sharing technology based on communication data fusion | |
Feng et al. | Secure outsourced principal eigentensor computation for cyber-physical-social systems | |
CN116028969B (zh) | 一种基于数据加密技术的隐私计算方法 | |
CN116582341B (zh) | 异常检测方法、装置、设备及存储介质 | |
CN114257412B (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 |