【技术实现步骤摘要】
基于多方安全计算协议的支持向量机用户数据预测方法
本专利技术属于计算
,更进一步涉及电数字数据处理
中的一种基于多方安全计算协议的支持向量机用户数据预测方法。本专利技术可用于基于支持向量机的机器学习预测过程中,通过对用户数据加密并进行多方安全计算,实现保护用户预测数据的安全,且更加高效。
技术介绍
支持向量机是机器学习中的一种算法,随着机器学习技术的成熟与发展,大数据与机器学习结合下的数据挖掘变得更加普及,从电商行业到金融服务业,从交通运输业到医疗卫生业,从宏观建模到微观分析都有着重要的应用。伴随着5G技术的全面推广,结合物联网等相关产业,机器学习在未来的智慧生活中的应用前景会是无处不在的。海量的数据交互必然会产生隐私安全问题,机器学习服务提供方无论是在训练还是识别上都会接触用户信息,如果出现恶意的服务提供方他可以轻易获取数据拥有者的隐私数据,从而造成隐私泄露问题并带来巨大的危害。目前针对支持向量机的主要的隐私保护措施有两种:干扰和加密。对数据进行干扰如k-anonymity,l-diversity虽然可 ...
【技术保护点】
1.一种基于多方安全计算协议的支持向量机用户待预测的数据预测方法,其特征在于,在用户使用预测服务方提供的数据预测服务的场景下,使用多方安全计算协议作为隐私保护的手段,对用户待预测的数据信息进行加密,并引入第三方云服务器,在多方安全计算中利用同态和部分解密特性实现用户可离线的安全高效的支持向量机预测;该方法的具体步骤包括如下:/n(1)生成并分发公共参数和密钥:/n(1a)密钥生成中心利用同态DT-PKC密码密钥生成算法,生成公共参数N和g与第一解密密钥λ
【技术特征摘要】 【专利技术属性】
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,对用户待预测数据的平方和进行加密,得到密文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次方得到部分解密密文ST1,λ1是部分密钥的第一解密密钥;
(6c)预测服务方把密文Eu(Q)和第一解密密文ST1发送给第三方云服务器;
(7)第三方云服务器处理加密数据:
(7a)第三方云服务器求密文Eu(Q)的λ2次方得到第二解密密文ST2,λ2表示部分密钥的第二解密密钥;
(7b)按照下式,第三方云服务器将第一解密密文ST1与第二解密密文ST2一起进行完全解密,得到加入随机数c的支持向量与用户待预测的数据的差的明文T:
其中,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):
(9)第三方云服务器和预测服务方合作解密密文H;
(9a)按照第三方云服务器对支持向量与用户待预测的数据的欧式距离的平方的密文H做第二解密,并将第二解密结果ST2′以及H发送给预测服务方;
技术研发人员:毛钦宇,王保仓,
申请(专利权)人:西安电子科技大学,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。