CN112052466A - 基于多方安全计算协议的支持向量机用户数据预测方法 - Google Patents

基于多方安全计算协议的支持向量机用户数据预测方法 Download PDF

Info

Publication number
CN112052466A
CN112052466A CN202010881831.XA CN202010881831A CN112052466A CN 112052466 A CN112052466 A CN 112052466A CN 202010881831 A CN202010881831 A CN 202010881831A CN 112052466 A CN112052466 A CN 112052466A
Authority
CN
China
Prior art keywords
user
data
support vector
ciphertext
prediction
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
Application number
CN202010881831.XA
Other languages
English (en)
Other versions
CN112052466B (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN202010881831.XA priority Critical patent/CN112052466B/zh
Publication of CN112052466A publication Critical patent/CN112052466A/zh
Application granted granted Critical
Publication of CN112052466B publication Critical patent/CN112052466B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Medical Informatics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开一种基于多方安全计算协议的支持向量机用户数据预测方法,使用同态加密对用户数据进行加密,利用同态加密可以对密文进行计算结果与对明文计算一致的特性,解决了加干扰方法预测准确性不足的问题,提高了支持向量机预测的准确性;同时引入第三方云服务器,使用多方安全计算协议,将计算过程从用户与预测服务方转换为预测服务方与第三方云服务器。用户只需要将数据加密后上传给预测服务方,后续的计算过程无需用户参与,无需全程联网。利用多方安全计算协议,在保护用户与支持向量机数据隐私的情况下简化计算过程,提高了计算效率。

Description

基于多方安全计算协议的支持向量机用户数据预测方法
技术领域
本发明属于计算技术领域,更进一步涉及电数字数据处理技术领域中的一种基于多方安全计算协议的支持向量机用户数据预测方法。本发明可用于基于支持向量机的机器学习预测过程中,通过对用户数据加密并进行多方安全计算,实现保护用户预测数据的安全,且更加高效。
背景技术
支持向量机是机器学习中的一种算法,随着机器学习技术的成熟与发展,大数据与机器学习结合下的数据挖掘变得更加普及,从电商行业到金融服务业,从交通运输业到医疗卫生业,从宏观建模到微观分析都有着重要的应用。伴随着5G技术的全面推广,结合物联网等相关产业,机器学习在未来的智慧生活中的应用前景会是无处不在的。海量的数据交互必然会产生隐私安全问题,机器学习服务提供方无论是在训练还是识别上都会接触用户信息,如果出现恶意的服务提供方他可以轻易获取数据拥有者的隐私数据,从而造成隐私泄露问题并带来巨大的危害。
目前针对支持向量机的主要的隐私保护措施有两种:干扰和加密。对数据进行干扰如k-anonymity,l-diversity虽然可以一定程度保护数据隐私且不影响整体的统计特性,但是却破坏了数据的真实性和完整性。由于干扰的方法破坏了数据的真实性和完整性,在一些要求预测结果精确的领域如工业设计、医疗卫生等不适宜使用加入干扰的方法。使用加密的方法常使用同态加密和多方安全计算协议,既保护用户数据的安全性又不改变数据的精确性,但是通常计算过程较为复杂,需要多方交互,有较大的通信开销,需要参与方保持联网状态。
Yogachandran Rahulamathavan在其发表的论文“Privacy-Preserving ClinicalDecision Support System Using Gaussian Kernel-Based Classification”(Journal:IEEE Journal of Biomedical and Health Informatics 2014,Volume:18,Issue:1)中提出了采用同态加密的方法实现隐私保护的医疗数据的方法。该方法中医疗诊所先对需要预测的医疗数据进行同态加密发送给预测服务方,预测服务方将使用高斯核函数的支持向量机预测模型拆分成多个求指数函数的计算过程,将接受到的加密数据与自身的支持向量做密文计算,将计算的中间加密结果再传回诊所,诊所解密并计算对应的过程并将结果发送回预测服务方,预测服务方计算得到最终的预测结果,将预测结果发送给诊所。该方法虽然通过同态加密实现了对用户数据的隐私保护。但是,该方法仍然存在的不足之处是,用户发送完加密数据后还需要接收服务提供方的中间计算结果并进行处理后再发送回服务提供方,计算过程较为复杂,通信开销较大,效率较低。
Hui Zhu在其发表的论文“Efficient and Privacy-Preserving Online MedicalPrediagnosis Framework Using Nonlinear SVM”(Journal:IEEE Journal ofBiomedical and Health Informatics 2017,Volume:21,Issue:3,Page:838-850)中提出了基于轻量级多方随机掩蔽核多项式聚合技术的高效的隐私保护分类方法。该方法通过双线性对对用户数据加密,利用多项式聚合对支持向量机计算过程进行处理,实现了对用户数据的隐私保护,提高了计算效率,减少了通信开销。但是,该方法仍然存在的不足之处是,用户与服务提供方之间需要进行两次数据交互,需要保持联网状态。
西安理工大学在其申请的专利文献“基于对偶变量扰动的差分隐私保护支持向量机分类器算法”(申请号201910362177.9,公布号CN110097119A)中公开了一种基于对偶变量扰动的隐私保护支持向量机分类器方法。该方法首先利用SMO算法的核心思想去求解支持向量机原始问题的对偶问题,在迭代求解结束之后,对每个支持向量样本点对应的对偶变量进行注入相应的拉普拉斯噪声的噪声,通过隐私性分析,该算法满足差分隐私定义,因此通过该算法发布的支持向量机信息既可以进行分类预测,也可以达到个体隐私保护的目的,该方法存在的不足之处是,由于该方法对每个支持向量样本点对应的对偶变量进行注入相应的拉普拉斯噪声的噪声,破坏了数据的真实性和完整性,使得预测数据的准确性不足。
发明内容
本发明的目的是针对上述现有技术的不足,提出一种基于多方安全计算协议的支持向量机用户数据预测方法,用于解决现有技术中存在的预测数据准确性不足,用户需要参与计算过程,且计算过程较复杂的技术问题。
为实现上述目的,本发明的思路是,使用同态加密对用户数据进行加密,利用同态加密可以对密文进行计算结果与对明文计算一致的特性,同时引入第三方云服务器,使用多方安全计算协议,将计算过程从用户与预测服务方转换为预测服务方与第三方云服务器。用户只需要将数据加密后上传给预测服务方,后续的计算过程无需用户参与,无需全程联网。利用多方安全计算协议,在保护用户与支持向量机数据隐私的情况下简化计算过程。
本发明采取的技术方法包括如下步骤:
(1)生成并分发公共参数和密钥:
(1a)密钥生成中心利用同态DT-PKC密码密钥生成算法,生成公共参数N和g与第一解密密钥λ1和第二解密密钥λ2
(1b)密钥生成中心将公共参数N和g分发给用户、预测服务方以及第三方云服务器;
(1c)将第一解密密钥λ1和第二解密密钥λ2分别发送给预测服务方和第三方云服务器;
(2)生成用户公私钥对;
(2a)利用同态DT-PKC密码密钥生成算法,生成公钥参数hi
(2b)将公共参数N和g、整数θi、公钥参数hi组成同态DT-PKC密码密钥生成算法的公钥pku=(N,g,hi),私钥sku=θi,得到注册中心公私钥对<pku,sku>;
(2c)预测服务方将公共参数N和g、整数θs、公钥参数hs组成同态DT-PKC密码密钥生成算法的公钥pks=(N,g,hs),私钥sks=θs,得到注册中心公私钥对<pks,sks>;
(3)加密并传输用户待预测数据:
(3a)利用的同态DT-PKC密码算法,对用户待预测数据Y=<y1,y2,...yn,...,ym>进行加密,得到密文Eu(Y),其中Y表示用户待预测数据向量,yn表示第n个用户预测数据,m表示用户待预测向量中元素的总数;
(3b)使用预测服务方公钥pks,对用户待预测数据的平方和
Figure BDA0002654317520000041
进行加密,得到密文Es(Z);
(3c)用户将加密后的密文Eu(Y)、Es(Z)发送给预测服务方;
(4)在支持向量中加入随机数:
预测服务方随机选取一个正整数c∈ZN加入到下述的支持向量集合X′中:
X′=<X1+c,X2+c,...Xn+c,...,Xi+c>
其中,Xn表示第n个支持向量,Xn=<xn1,xn2,...xnk,...,xnm>,xnk表示第n个支持向量的第k个数据,m表示第n个支持向量中元素的总数,i表示支持向量的总数。
(5)预测服务方对支持向量进行加密:
预测服务方采用同态DT-PKC加密算法,使用用户公钥pku对加入随机数的支持向量K进行加密,得到加入随机数的支持向量的密文Eu(K);
(6)预测服务方处理加密数据:
(6a)预测服务方将密文Eu(K)除以用户待预测的数据密文Eu(Y)的商作为加入随机数的支持向量和用户待预测的数据之差的密文Eu(Q);
(6b)预测服务方求密文Eu(Q)的λ1次方得到部分解密密文ST11是部分密钥的第一解密密钥;
(6c)预测服务方把密文Eu(Q)和第一解密密文ST1发送给第三方云服务器;
(7)第三方云服务器处理加密数据:
(7a)第三方云服务器求密文Eu(Q)的λ2次方得到第二解密密文ST2,λ2表示部分密钥的第二解密密钥;
(7b)按照下式,第三方云服务器将第一解密密文ST1与第二解密密文ST2一起进行完全解密,得到加入随机数c的支持向量与用户待预测的数据的差的明文T:
Figure BDA0002654317520000051
其中,T=(X′-Y),X′表示加入随机数c的支持向量,Y表示用户待预测的数据;
(8)去除随机数c;
(8a)预测服务方将Eu(X)和Eu(Y)相除,得到支持向量和用户待预测的数据的差的密文Eu(M);
(8b)按照下式,得到中间密文后再将其发送给第三方云服务器:
Eu(2c(M)+c2)=[(Eu(M))2·Eu(c)]c
其中,M表示支持向量和用户待预测的数据的差,Eu(c)表示用户公钥pku加密后的随机数;
(8c)第三方云服务器使用用户的公钥pku加密明文T的平方得到密文P,P表示Eu((X′-Y)2);
(8d)按照下式,第三方云服务器计算支持向量与用户待预测的数据的欧式距离的平方的密文H,H表示Eu((X-Y)2):
Figure BDA0002654317520000052
(9)第三方云服务器和预测服务方合作解密密文H;
(9a)按照
Figure BDA0002654317520000053
第三方云服务器对支持向量与用户待预测的数据的欧式距离的平方的密文H做第二解密,并将第二解密结果ST2′以及H发送给预测服务方;
(9b)按照
Figure BDA0002654317520000054
预测服务方用第一解密密钥λ1求出第一解密结果ST1′;
(9c)按照下式,预测服务方将ST1′和ST2′完全解密得到支持向量与用户待预测的数据的欧式距离的平方的明文R,R表示(X-Y)2
Figure BDA0002654317520000061
(10)对用户的数据进行预测;
利用高斯核函数支持向量机或多项式核函数支持向量机对用户数据进行预测;预测服务方将预测结果发送给用户。
本发明与现有技术相比,具有以下优点:
第一,本发明加密并传输用户待预测数据,预测服务方对支持向量进行加密,在密文状态下利用安全多方计算协议对用户带预测数据与支持向量进行计算,克服了现有技术中存在的对每个支持向量样本点对应的对偶变量进行注入相应的拉普拉斯噪声的噪声,破坏了数据的真实性和完整性的问题,导致预测数据不准确性的问题,使得本发明具有预测准确性更好的优点;
第二,本发明使用第三方云服务器处理加密数据,第三方云服务器和预测服务方合作解密密文,由第三方云服务器负责中间计算过程,克服了现有技术中存在的用户发送完加密数据后还需要接收服务提供方的中间计算结果并进行处理后再发送回服务提供方,计算过程较为复杂,通信开销较大,效率较低的问题,使得本发明具有计算效率高,用户可离线的优点。
附图说明
附图1为本发明的流程图。
具体实施方式
下面结合附图1,对本发明实现的步骤作进一步的详细描述。
步骤1,生成并分发公共参数和密钥。
密钥生成中心利用同态DT-PKC密码密钥生成算法,生成公共参数N和g与第一解密密钥λ1和第二解密密钥λ2
密钥生成中心将公共参数N和g分发给用户、预测服务方以及第三方云服务器。
将第一解密密钥λ1和第二解密密钥λ2分别发送给预测服务方和第三方云服务器。
所述利用同态DT-PKC密码密钥生成算法,生成公共参数N和g与两个部分密钥分别为第一解密密钥λ1和第二解密密钥λ2的步骤如下:
按照N=pq,计算同态DT-PKC密码密钥生成算法的模数N,其中,p和q分别表示均匀且随机选取的两个安全大素数,所述的安全是指满足下式的由p和q计算所得的中间参数p′、q′也是素数:
p′=(p-1)/2
q′=(q-1)/2
按照λ=2p′q′,计算同态DT-PKC密码密钥生成算法的主密钥λ。
按照下式,将主密钥分成两个部分密钥分别为第一解密密钥λ1和第二解密密钥λ2
λ12≡0modλ
λ12≡1modN2
其中,mod表示取模操作,≡表示符号左侧表达式同余于符号右侧表达式,λ表示主密钥,N2是模数。
步骤2,生成用户公私钥对。
利用同态DT-PKC密码密钥生成算法,生成公钥参数hi
Figure BDA0002654317520000071
其中,g表示在剩余类环
Figure BDA0002654317520000072
中选取一个阶为2p′q′的随机数。
将公共参数N和g、整数θi、公钥参数hi组成同态DT-PKC密码密钥生成算法的公钥pku=(N,g,hi),私钥sku=θi,得到注册中心公私钥对<pku,sku>。
预测服务方将公共参数N和g、整数θs、公钥参数hs组成同态DT-PKC密码密钥生成算法的公钥pks=(N,g,hs),私钥sks=θs,得到注册中心公私钥对<pks,sks>。
步骤3,加密并传输用户待预测数据。
利用的同态DT-PKC密码算法,对用户待预测数据Y=<y1,y2,...yn,...,ym>进行加密,得到密文Eu(Y):
Eu(Y)=(A,B)
Figure BDA0002654317520000081
B≡grmod N2
其中,A表示加密后密文的第一部分,mod表示取模操作,B表示加密后密文的第二部分,用户的预测数据Y的范围在剩余类环
Figure BDA0002654317520000082
中,yn表示第n个用户预测数据,m表示用户待预测向量中元素的总数,≡表示符号左侧表达式同余于符号右侧表达式,r表示用户随机选取的一个整数且r∈[1,N/4]。
使用预测服务方公钥pks,对用户待预测数据的平方和
Figure BDA0002654317520000085
进行加密,得到密文Es(Z):
Es(Z)=(C,D)
Figure BDA0002654317520000083
D≡grmod N2
其中,C表示加密后密文的第一结果,D表示加密后密文的第二结果,C和D共同组成加密后的密文(C,D),
Figure BDA0002654317520000084
是预测服务方的公钥。
用户将加密后的密文Eu(Y)、Es(Z)发送给预测服务方。
步骤4,在支持向量中加入随机数。
预测服务方随机选取一个正整数c∈ZN加入到下述的支持向量集合X′中:
X′=<X1+c,X2+c,...Xn+c,...,Xi+c>
其中,Xn表示第n个支持向量,Xn=<xn1,xn2,...xnk,...,xnm>,xnk表示第n个支持向量的第k个数据,m表示第n个支持向量中元素的总数,i表示支持向量的总数。
步骤5,预测服务方对支持向量进行加密。
预测服务方采用同态DT-PKC加密算法,使用用户公钥pku对加入随机数的支持向量K进行加密,得到加入随机数的支持向量的密文Eu(K):
Eu(K)=(A′,B′)
Figure BDA0002654317520000091
B′=gr′mod N2
其中,Eu表示使用用户的公钥进行加密,r′表示由支持向量机选取的随机数,(A′,B′)表示加密后的密文形式。
步骤6,预测服务方处理加密数据。
预测服务方将密文Eu(K)除以用户待预测的数据密文Eu(Y)的商作为加入随机数的支持向量和用户待预测的数据之差的密文Eu(Q)。
预测服务方求密文Eu(Q)的λ1次方得到部分解密密文ST11是部分密钥的第一解密密钥。
预测服务方把密文Eu(Q)和第一解密密文ST1发送给第三方云服务器。
步骤7,第三方云服务器处理加密数据。
第三方云服务器求密文Eu(Q)的λ2次方得到第二解密密文ST2,λ2表示部分密钥的第二解密密钥。
按照下式,第三方云服务器将第一解密密文ST1与第二解密密文ST2一起进行完全解密,得到加入随机数c的支持向量与用户待预测的数据的差的明文T:
Figure BDA0002654317520000092
其中,T=(X′-Y),X′表示加入随机数c的支持向量,Y表示用户待预测的数据。
步骤8,去除随机数c。
预测服务方将Eu(X)和Eu(Y)相除,得到支持向量和用户待预测的数据的差的密文Eu(M)。
按照下式,得到中间密文后再将其发送给第三方云服务器:
Eu(2c(M)+c2)=[(Eu(M))2·Eu(c)]c
其中,M表示支持向量和用户待预测的数据的差,Eu(c)表示用户公钥pku加密后的随机数。
第三方云服务器使用用户的公钥pku加密明文T的平方得到密文P,P表示Eu((X′-Y)2)。
按照下式,第三方云服务器计算支持向量与用户待预测的数据的欧式距离的平方的密文H,H表示Eu((X-Y)2):
Figure BDA0002654317520000101
步骤9,第三方云服务器和预测服务方合作解密密文H。
按照
Figure BDA0002654317520000102
第三方云服务器对支持向量与用户待预测的数据的欧式距离的平方的密文H做第二解密,并将第二解密结果ST2′以及H发送给预测服务方。
按照
Figure BDA0002654317520000106
预测服务方用第一解密密钥λ1求出第一解密结果ST1
按照下式,预测服务方将ST1′和ST2′完全解密得到支持向量与用户待预测的数据的欧式距离的平方的明文R,R表示(X-Y)2
Figure BDA0002654317520000104
步骤10,对用户的数据进行预测。
利用高斯核函数支持向量机或多项式核函数支持向量机对用户数据进行预测;预测服务方将预测结果发送给用户。
所述利用高斯核函数支持向量机进行预测:
将明文R代入下述的高斯核函数支持向量机预测公式,得到预测结果:
Figure BDA0002654317520000105
其中,f(x)表示预测结果,sign(·)表示符号函数,∑表示求和操作,m表示支持向量的总数,αi表示第i个拉格朗日乘子,yi表示第i个支持向量的标签,exp表示以自然常数e为底的指数操作,σ表示高斯核函数的宽度参数,b表示预测超平面沿着垂直于超平面的直线方向移动的距离。
所述利用多项式核函数支持向量机进行预测:
预测服务方将之前收到的Es(Z)用自己的私钥解密得到Z。
按照下式,预测服务方计算支持向量与用户待预测数据的内积XiY:
Figure BDA0002654317520000111
将内积XiY代入下述的多项式核函数支持向量机预测公式,得到预测结果:
Figure BDA0002654317520000112
其中,p表示多项式的最高次数。

Claims (8)

1.一种基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,在用户使用预测服务方提供的数据预测服务的场景下,使用多方安全计算协议作为隐私保护的手段,对用户待预测的数据信息进行加密,并引入第三方云服务器,在多方安全计算中利用同态和部分解密特性实现用户可离线的安全高效的支持向量机预测;该方法的具体步骤包括如下:
(1)生成并分发公共参数和密钥:
(1a)密钥生成中心利用同态DT-PKC密码密钥生成算法,生成公共参数N和g与第一解密密钥λ1和第二解密密钥λ2
(1b)密钥生成中心将公共参数N和g分发给用户、预测服务方以及第三方云服务器;
(1c)将第一解密密钥λ1和第二解密密钥λ2分别发送给预测服务方和第三方云服务器;
(2)生成用户公私钥对;
(2a)利用同态DT-PKC密码密钥生成算法,生成公钥参数hi
(2b)将公共参数N和g、整数θi、公钥参数hi组成同态DT-PKC密码密钥生成算法的公钥pku=(N,g,hi),私钥sku=θi,得到注册中心公私钥对<pku,sku>;
(2c)预测服务方将公共参数N和g、整数θs、公钥参数hs组成同态DT-PKC密码密钥生成算法的公钥pks=(N,g,hs),私钥sks=θs,得到注册中心公私钥对<pks,sks>;
(3)加密并传输用户待预测数据:
(3a)利用的同态DT-PKC密码算法,对用户待预测数据Y=<y1,y2,...yn,...,ym>进行加密,得到密文Eu(Y),其中Y表示用户待预测数据向量,yn表示第n个用户预测数据,m表示用户待预测向量中元素的总数;
(3b)使用预测服务方公钥pks,对用户待预测数据的平方和
Figure FDA0002654317510000021
进行加密,得到密文Es(Z);
(3c)用户将加密后的密文Eu(Y)、Es(Z)发送给预测服务方;
(4)在支持向量中加入随机数:
预测服务方随机选取一个正整数c∈ZN加入到下述的支持向量集合X′中:
X′=<X1+c,X2+c,...Xn+c,...,Xi+c>
其中,Xn表示第n个支持向量,Xn=<xn1,xn2,...xnk,...,xnm>,xnk表示第n个支持向量的第k个数据,m表示第n个支持向量中元素的总数,i表示支持向量的总数。
(5)预测服务方对支持向量进行加密:
预测服务方采用同态DT-PKC加密算法,使用用户公钥pku对加入随机数的支持向量K进行加密,得到加入随机数的支持向量的密文Eu(K);
(6)预测服务方处理加密数据:
(6a)预测服务方将密文Eu(K)除以用户待预测的数据密文Eu(Y)的商作为加入随机数的支持向量和用户待预测的数据之差的密文Eu(Q);
(6b)预测服务方求密文Eu(Q)的λ1次方得到部分解密密文ST11是部分密钥的第一解密密钥;
(6c)预测服务方把密文Eu(Q)和第一解密密文ST1发送给第三方云服务器;
(7)第三方云服务器处理加密数据:
(7a)第三方云服务器求密文Eu(Q)的λ2次方得到第二解密密文ST2,λ2表示部分密钥的第二解密密钥;
(7b)按照下式,第三方云服务器将第一解密密文ST1与第二解密密文ST2一起进行完全解密,得到加入随机数c的支持向量与用户待预测的数据的差的明文T:
Figure FDA0002654317510000031
其中,T=(X′-Y),X′表示加入随机数c的支持向量,Y表示用户待预测的数据;
(8)去除随机数c;
(8a)预测服务方将Eu(X)和Eu(Y)相除,得到支持向量和用户待预测的数据的差的密文Eu(M);
(8b)按照下式,得到中间密文后再将其发送给第三方云服务器:
Eu(2c(M)+c2)=[(Eu(M))2·Eu(c)]c
其中,M表示支持向量和用户待预测的数据的差,Eu(c)表示用户公钥pku加密后的随机数;
(8c)第三方云服务器使用用户的公钥pku加密明文T的平方得到密文P,P表示Eu((X′-Y)2);
(8d)按照下式,第三方云服务器计算支持向量与用户待预测的数据的欧式距离的平方的密文H,H表示Eu((X-Y)2):
Figure FDA0002654317510000032
(9)第三方云服务器和预测服务方合作解密密文H;
(9a)按照
Figure FDA0002654317510000033
第三方云服务器对支持向量与用户待预测的数据的欧式距离的平方的密文H做第二解密,并将第二解密结果ST2′以及H发送给预测服务方;
(9b)按照
Figure FDA0002654317510000034
预测服务方用第一解密密钥λ1求出第一解密结果ST1′;
(9c)按照下式,预测服务方将ST1′和ST2′完全解密得到支持向量与用户待预测的数据的欧式距离的平方的明文R,R表示(X-Y)2
Figure FDA0002654317510000041
(10)对用户的数据进行预测;
利用高斯核函数支持向量机或多项式核函数支持向量机对用户数据进行预测;预测服务方将预测结果发送给用户。
2.根据权利要求1所述的基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,步骤(1)中所述利用同态DT-PKC密码密钥生成算法,生成公共参数N和g与两个部分密钥分别为第一解密密钥λ1和第二解密密钥λ2的步骤如下:
第一步,按照N=pq,计算同态DT-PKC密码密钥生成算法的模数N,其中,p和q分别表示均匀且随机选取的两个安全大素数,所述的安全是指满足下式的由p和q计算所得的中间参数p′、q′也是素数:
p′=(p-1)/2
q′=(q-1)/2
第二步,按照λ=2p′q′,计算同态DT-PKC密码密钥生成算法的主密钥λ;
第三步,按照下式,将主密钥分成两个部分密钥分别为第一解密密钥λ1和第二解密密钥λ2
λ12≡0modλ
λ12≡1modN2
其中,mod表示取模操作,≡表示符号左侧表达式同余于符号右侧表达式,λ表示主密钥,N2是模数。
3.根据权利要求1所述的基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,步骤(2a)中所述利用同态DT-PKC密码密钥生成算法,生成公钥参数hi的步骤如下:
Figure FDA0002654317510000051
其中,g表示在剩余类环
Figure FDA0002654317510000052
中选取一个阶为2p′q′的随机数。
4.根据权利要求1所述的基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,步骤(3a)中所述利用下述的同态DT-PKC密码算法,对用户待预测的数据进行加密:
Eu(Y)=(A,B)
Figure FDA0002654317510000053
B≡gr mod N2
其中,A表示加密后密文的第一部分,mod表示取模操作,B表示加密后密文的第二部分,用户的预测数据Y=<y1,y2,...,ym>且Y的范围在剩余类环
Figure FDA0002654317510000054
中,≡表示符号左侧表达式同余于符号右侧表达式,r表示用户随机选取的一个整数且r∈[1,N/4]。
5.根据权利要求1所述的基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,步骤(3b)中所述用户将数据的平方和
Figure FDA0002654317510000055
用预测服务方的公钥加密得到密文Es(Z):
Es(Z)=(C,D)
Figure FDA0002654317510000056
D≡gr mod N2
其中,C表示加密后密文的第一结果,D表示加密后密文的第二结果,C和D共同组成加密后的密文(C,D),
Figure FDA0002654317510000057
是预测服务方的公钥。
6.根据权利要求1所述的基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,步骤(5)中所述预测服务方使用用户公钥对K进行加密:
Eu(K)=(A′,B′)
Figure FDA0002654317510000058
B′=gr′ mod N2
其中,Eu表示使用用户的公钥进行加密,r′表示由支持向量机选取的随机数,(A′,B′)表示加密后的密文形式。
7.根据权利要求1所述的基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,步骤(10)中所述利用高斯核函数支持向量机进行预测:
将明文R代入下述的高斯核函数支持向量机预测公式,得到预测结果:
Figure FDA0002654317510000061
其中,f(x)表示预测结果,sign(·)表示符号函数,∑表示求和操作,m表示支持向量的总数,αi表示第i个拉格朗日乘子,yi表示第i个支持向量的标签,exp表示以自然常数e为底的指数操作,σ表示高斯核函数的宽度参数,b表示预测超平面沿着垂直于超平面的直线方向移动的距离。
8.根据权利要求1所述的基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,步骤(10)中所述利用多项式核函数支持向量机进行预测:
第一步,预测服务方将之前收到的Es(Z)用自己的私钥解密得到Z;
第二步,按照下式,预测服务方计算支持向量与用户待预测数据的内积XiY:
Figure FDA0002654317510000062
第三步,将内积XiY代入下述的多项式核函数支持向量机预测公式,得到预测结果:
Figure FDA0002654317510000063
其中,p表示多项式的最高次数。
CN202010881831.XA 2020-08-28 2020-08-28 基于多方安全计算协议的支持向量机用户数据预测方法 Active CN112052466B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010881831.XA CN112052466B (zh) 2020-08-28 2020-08-28 基于多方安全计算协议的支持向量机用户数据预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010881831.XA CN112052466B (zh) 2020-08-28 2020-08-28 基于多方安全计算协议的支持向量机用户数据预测方法

Publications (2)

Publication Number Publication Date
CN112052466A true CN112052466A (zh) 2020-12-08
CN112052466B CN112052466B (zh) 2022-04-19

Family

ID=73599425

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010881831.XA Active CN112052466B (zh) 2020-08-28 2020-08-28 基于多方安全计算协议的支持向量机用户数据预测方法

Country Status (1)

Country Link
CN (1) CN112052466B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113068128A (zh) * 2021-03-18 2021-07-02 西安电子科技大学 基于双云安全计算协议的用户地理位置近邻查询方法
CN113726767A (zh) * 2021-08-27 2021-11-30 交通银行股份有限公司 一种基于区块链的分布式多方隐私计算系统及方法
CN114900283A (zh) * 2022-04-01 2022-08-12 西安电子科技大学 基于多方安全计算的深度学习用户梯度聚合方法
CN114944935A (zh) * 2022-04-24 2022-08-26 华控清交信息科技(北京)有限公司 一种多方融合计算系统、多方融合计算方法和可读存储介质
CN117688502A (zh) * 2024-02-04 2024-03-12 山东大学 一种局部异常因子检测的安全外包计算方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105320809A (zh) * 2015-09-30 2016-02-10 西安电子科技大学 一种针对风电场空间相关性的风速预测方法
US10116437B1 (en) * 2015-12-14 2018-10-30 Ingram Micro, Inc. Method for protecting data used in cloud computing with homomorphic encryption
CN110211683A (zh) * 2019-05-30 2019-09-06 北京理工大学 一种基于区块链的支持向量机医疗数据隐私训练系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105320809A (zh) * 2015-09-30 2016-02-10 西安电子科技大学 一种针对风电场空间相关性的风速预测方法
US10116437B1 (en) * 2015-12-14 2018-10-30 Ingram Micro, Inc. Method for protecting data used in cloud computing with homomorphic encryption
CN110211683A (zh) * 2019-05-30 2019-09-06 北京理工大学 一种基于区块链的支持向量机医疗数据隐私训练系统

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
JUSTIN ZHAN ET AL: "privacy-preserving support vector machine classification", 《HTTPS://DL.ACM.ORG/DOI/10.1504/IJIIDS.2007.016686》 *
VALENTIN HARTMANN ET AL.: "Preserving Classification with Secret Vector Machines", 《HTTPS://ARXIV.ORG/ABS/1907.03373V1》 *
WANG BAOCANG ET AL.: "Maximized Privacy-Preserving Outsourcing on Support Vector Clustering", 《ELECTRONICS》 *
孙文礼: "基于安全多方计算的隐私保护支持向量机算法研究", 《HTTPS://D.WANFANGDATA.COM.CN/THESIS/D01827296》 *
王保仓等: "(全)同态加密在基于密文计算模型中的应用", 《密码学报》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113068128A (zh) * 2021-03-18 2021-07-02 西安电子科技大学 基于双云安全计算协议的用户地理位置近邻查询方法
CN113068128B (zh) * 2021-03-18 2021-11-23 西安电子科技大学 基于双云安全计算协议的用户地理位置近邻查询方法
CN113726767A (zh) * 2021-08-27 2021-11-30 交通银行股份有限公司 一种基于区块链的分布式多方隐私计算系统及方法
CN113726767B (zh) * 2021-08-27 2023-09-12 交通银行股份有限公司 一种基于区块链的分布式多方隐私计算系统及方法
CN114900283A (zh) * 2022-04-01 2022-08-12 西安电子科技大学 基于多方安全计算的深度学习用户梯度聚合方法
CN114944935A (zh) * 2022-04-24 2022-08-26 华控清交信息科技(北京)有限公司 一种多方融合计算系统、多方融合计算方法和可读存储介质
CN117688502A (zh) * 2024-02-04 2024-03-12 山东大学 一种局部异常因子检测的安全外包计算方法及系统
CN117688502B (zh) * 2024-02-04 2024-04-30 山东大学 一种局部异常因子检测的安全外包计算方法及系统

Also Published As

Publication number Publication date
CN112052466B (zh) 2022-04-19

Similar Documents

Publication Publication Date Title
CN112052466B (zh) 基于多方安全计算协议的支持向量机用户数据预测方法
Abd El-Latif et al. Secure data encryption based on quantum walks for 5G Internet of Things scenario
CN112822005B (zh) 基于同态加密的安全迁移学习系统
CN110519041B (zh) 一种基于sm9标识加密的属性基加密方法
Abid et al. RETRACTED ARTICLE: An optimised homomorphic CRT-RSA algorithm for secure and efficient communication
CN107154845B (zh) 一种基于属性的bgn型密文解密外包方案
CN112989368A (zh) 多方联合进行隐私数据处理的方法及装置
CN105577368A (zh) 双向隐私保护的医疗诊断服务查询系统及方法
Hassan et al. An efficient outsourced privacy preserving machine learning scheme with public verifiability
CN111783129A (zh) 一种保护隐私的数据处理方法及系统
Gafsi et al. High securing cryptography system for digital image transmission
US10630476B1 (en) Obtaining keys from broadcasters in supersingular isogeny-based cryptosystems
CN112865953A (zh) 基于辅助服务器的安全多方计算方法、装置和系统
Ahamed et al. SMS encryption and decryption using modified vigenere cipher algorithm
Kahla et al. Asymmetric image encryption based on twin message fusion
WO2014030706A1 (ja) 暗号化データベースシステム、クライアント装置およびサーバ、暗号化データ加算方法およびプログラム
Paul et al. Simultaneous encryption of multiple images using pseudo-random sequences generated by modified Newton-Raphson technique
CN114697042A (zh) 一种基于区块链的物联网安全数据共享代理重加密方法
Kavin et al. A Novel M-Commerce Data Security Mechanism using Elliptic Curve Cryptography
Ali et al. Secure IoT framework for authentication and confidentiality using hybrid cryptographic schemes
Panzade et al. FENet: Privacy-preserving neural network training with functional encryption
Moldovyan et al. Deniability of symmetric encryption based on computational indistinguishability from probabilistic ciphering
CN104837131B (zh) 一种基于批处理指数运算乘积的批Cramer-Shoup密码方法
CN114900283A (zh) 基于多方安全计算的深度学习用户梯度聚合方法
Qian et al. CryptoFE: Practical and privacy-preserving federated learning via functional encryption

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