CN113077054A - 基于多密钥密文的岭回归学习方法、系统、介质和设备 - Google Patents
基于多密钥密文的岭回归学习方法、系统、介质和设备 Download PDFInfo
- Publication number
- CN113077054A CN113077054A CN202110234350.4A CN202110234350A CN113077054A CN 113077054 A CN113077054 A CN 113077054A CN 202110234350 A CN202110234350 A CN 202110234350A CN 113077054 A CN113077054 A CN 113077054A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- data
- matrix
- key
- vector
- 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
- 238000000034 method Methods 0.000 title claims abstract description 133
- 239000011159 matrix material Substances 0.000 claims abstract description 179
- 238000006243 chemical reaction Methods 0.000 claims abstract description 54
- 238000004364 calculation method Methods 0.000 claims abstract description 29
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims description 43
- 230000008569 process Effects 0.000 claims description 39
- 239000003795 chemical substances by application Substances 0.000 claims description 13
- 230000002441 reversible effect Effects 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 10
- 238000013475 authorization Methods 0.000 claims description 6
- 125000004122 cyclic group Chemical group 0.000 claims description 6
- 239000000654 additive Substances 0.000 claims description 2
- 230000000996 additive effect Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 9
- 238000010801 machine learning Methods 0.000 description 12
- 238000011161 development Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000035935 pregnancy Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012417 linear regression Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000002604 ultrasonography Methods 0.000 description 2
- 210000000689 upper leg Anatomy 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001575 pathological effect Effects 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Signal Processing (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Operations Research (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于多密钥密文的岭回归学习方法、系统、介质和设备,获取数据拥有者上传的密文;接收数据分析者发送的公私钥,接收数据分析者使用密文进行岭回归学习的请求;向数据拥有者发送密文转换的请求以及数据分析者发送的公钥,基于数据拥有者同意情况下接收其所发送的代理密钥;利用代理密钥进行密文转换;进入岭回归学习后,根据密文转换所得到的加密后的密文得到密文矩阵,再针对密文矩阵进行矩阵乘法计算得到矩阵A的密文[A]和向量b的密文[b],计算出岭回归模型参数w的密文。本发明扩展了加密密钥单一的应用场景,解决了多密钥加密数据造成的密文运算困难问题,实现了安全高效的岭回归学习算法,有效地降低了计算和通信开销。
Description
技术领域
本发明涉及数据安全技术领域,特别涉及一种基于多密钥密文的岭回归学习方法、系统、介质和设备。
背景技术
随着计算机存储能力的提升和复杂计算的发展,近年来的数据量呈指数型增长。这些趋势使数据分析、数据挖掘、机器学习等的发展日新月异。越来越多的研究者着手于数据信息的挖掘工作,通过提取大量数据中的信息,总结规律,观察数据之间的关系,学习预测某种现象的结果,给未来的工作和生活提供便利。其中机器学习算法是当今知识发现的重要算法之一。机器学习算法是从大量数据中进行自动分析,学习得到某种规律,并利用这种规律对未知数据进行预测。在最近几年,机器学习已经广泛地应用于许多领域,例如:医疗诊断、信用风险评估、垃圾邮件分类等。
其中,岭回归是机器学习中的一种非常重要的回归学习算法,在现实生活中具有非常广泛的应用。岭回归算法是根据特征数据和结果值构造一个线性方程,表示特征数据和结果值之间的关系。岭回归可以用来定量地关联特征和结果,以及用于未来预测。岭回归虽然不具备最小二乘法的无偏性,以及在计算过程中可能丢失部分信息,而且结果精确度也有所降低,但是,相较于最小二乘法,岭回归算法更符合实际应用,结果更可靠,对病态数据有更强的拟合能力。因此,称岭回归为一种改良的最小二乘法。
大数据为机器学习的发展带来了机遇,同时也带来了严峻的挑战。在机器学习算法中,需要在丰富的数据样本上进行模型学习运算,才能得到更精确的预测模型。然而,数据源于生活,其中包含了大量的隐私信息。随着云计算的快速发展,隐私保护已经成为社会发展的焦点。因此,在保证数据隐私的前提下进行机器学习,已经是当前机器学习发展的关键问题。研究具有隐私保护的机器学习方法是信息行业的发展趋势,具有重要的理论意义和应用价值。
通常情况下,为了保证用户的隐私安全,用户通常会把加密的数据存储在云服务器上。通过加密可以保证用户的隐私安全,但是对于实现机器学习增加了一定的难度。目前,全同态加密(Full Homomorphic Encryption,FHE)的最新研究成果,已经使在密文上执行任意运算成为可能。但是由于全同态的效率很低,导致该加密方法在实际场景中并不实用。多密钥全同态加密支持不同公钥加密的密文进行运算,但是它的效率同样是其最大的缺点。另外,在解密阶段,需要所有参与加密的用户交互计算共同解密。因此多密钥全同态加密也不实用。
目前,现有技术中提出了一个可扩展的具有隐私保护的线性回归学习方案,这种方案的主要思想是利用安全多方计算实现隐私保护。在这种方案中,用户把数据分成两部分,分别存储在两个不共谋的云服务器上,云服务器利用安全两方计算(2PC)实现线性回归的学习。安全多方计算需要参与者交互实现,因此在计算过程中会产生大量的通信成本,使得它的实用性降低。在现有技术中,还有利用线性同态加密实现具有隐私保护的岭回归学习算法,这种方案要求每个用户先计算Ai、bi(i表示第i个用户),然后使用第三方的公钥加密计算结果,并把密文上传到云服务器上,云服务器把密文聚合之后,得到A和b,然后利用加密方案的同态性质,与加密服务提供者进行交互实现安全的岭回归的运算,用户在整个计算过程中承担了很大的工作量,另外用户加密数据时使用的是第三方的公钥,上传到云服务器的数据不再是基于存储的目的,这在实际应用中有一定的局限性。
发明内容
本发明的第一目的在于克服现有技术的缺点与不足,提供一种基于多密钥密文的岭回归学习方法,该方法扩展了以往加密密钥单一的应用场景,解决了多密钥加密数据造成的密文运算困难问题,实现了安全高效的岭回归学习算法,并且有效地降低了计算和通信开销。
本发明的第二目的在于提供一种基于多密钥密文的岭回归学习系统。
本发明的第三目的在于提供一种存储介质。
本发明的第四目的在于提供一种计算设备。
本发明的第一目的通过下述技术方案实现:一种基于多密钥密文的岭回归学习方法,步骤包括:
获取数据拥有者针对数据加密后所上传的密文;
接收数据分析者发送的公私钥,接收数据分析者使用密文进行岭回归学习的请求;
基于密文使用请求,向数据拥有者发送密文转换的请求以及数据分析者发送的公钥,基于数据拥有者同意情况下接收其所发送的代理密钥;其中数据拥有者利用自身的私钥和数据分析者的公钥生成代理密钥;
利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文;
进入岭回归学习后,根据密文转换所得到的加密后的密文得到密文矩阵,再针对密文矩阵进行矩阵乘法计算得到矩阵A的密文[A]和向量b的密文[b];
优选的,其中从数据拥有者中获取的密文的加密过程如下:
存在m个数据拥有者,数据拥有者k即用户k持有nk条数据,用矩阵表示为:
其中k=1,…,m,矩阵中每一行分别代表一条数据,其中每条数据包含一个拥有d个特征值特征向量和特征向量对应的结果值,特征向量对应的结果值为矩阵中每一行的最后一个元素;
1)、首先调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;选择随机数ak作为私钥,并计算作为公钥,其中g是循环群的生成元,则数据拥有者k的公私钥对为:skk=ak;
2)、对于矩阵中的每一个数据项i=1,2,…,nk,j=1,2,…,d,选择一个随机数i=1,2,…,nk,j=1,2,…d,并令调用A-AFGH加密方法的加密函数选择一个随机数计算密文其中Z是循环群的生成元;该密文只能被持有私钥skk=ak的数据拥有者k解密;则对于每一个数据项使用LHE加密后的密文形式为
更进一步的,从数据分析者中接收到的公钥的生成过程如下:
数据分析者调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;用户选择随机数a和a*作为私钥,并计算ga和作为公钥;数据分析者的公私钥对为sk*=a*,临时公私钥对为:pk=ga,sk=a。
更进一步的,从数据拥有者中获取到的代理密钥的生成过程如下:根据数据分析者发送的临时公钥pk,确定出数据分析者请求使用密文数据;并且将临时公钥pk转发给数据拥有者,获取数据拥有者的授权同意;其中,数据拥有者在同意的情况下,调用A-AFGH加密方法的代理密钥生成函数利用自己的私钥skk=ak和数据分析者的临时公钥ga=ga得到代理密钥k=1,…,m;
利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文的具体过程如下:
当数据拥有者1到数据拥有者m*同意数据分析者使用数据,则获得数据分析者临时公钥pk加密密文的矩阵为:
令
令
令
令
令
令
…,
以此类推,矩阵中各行元素的对应关系。
更进一步的,进入岭回归学习后,计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
得到矩阵H和向量h的密文记为:
2)、计算矩阵乘法,得到密文[A*]和密文[b*]:
3)、采用数据分析者发送的临时私钥为sk=a,对密文转换所得到的加密后的密文中的[hi,j]和[hi]进行解密操作:求解离散对数问题,得到对应的明文信息hi,j和hi,即获得矩阵H和向量h;根据矩阵H和向量h计算对应的盲化因子,即对称矩阵H*和向量h*:
使用数据分析者的临时公钥pk=ga加密盲化因子对称矩阵H*和向量h*,得到对应加密后的密文[H*]和[h*]:
4)在获取到密文[H*]和[h*]之后,利用A-AFGH加密方法的加法同态的性质消去密文[A*]和密文[b*]中的盲化因子,得到矩阵A和向量b的密文:
更进一步的,根据矩阵A的密文[A]和向量b的密文[b]计算出岭回归模型参数w的具体步骤如下:
利用A-AFGH加密方法的加法同态的性质,计算和d=Ar*+b的密文,得到对应的用数据分析者的临时公钥pk=ga加密的密文结果和[d];此外,使用数据分析者的公钥调用A-AFGH的加密算法加密可逆矩阵R*和向量r*,得到密文矩阵和密文向量
本发明第二目的通过以下技术方案实现:一种基于多密钥密文的岭回归学习系统,包括服务器、数据拥有者和数据分析者;
所述数据拥有者,用于对其所拥有的数据进行加密,并且将加密后的密文上传到服务器中;用于接收和授权服务器发送的密文转换请求,在同意密文转换请求的情况下,利用自身的私钥和数据分析者的公钥生成代理密钥,并且将计算的代理密钥发送给服务器;
所述数据分析者,用于发送公钥和密文使用请求到服务器,用于接收服务器计算的岭回归模型参数w;
所述服务器,用于执行权利要求1至6中任一项所述的基于多密钥密文的岭回归学习方法。
优选的,所述服务器为云服务器,云服务器包括云服务器CS和云服务器ACS;
其中,数据拥有者对数据进行加密得到密文的过程如下:
存在m个数据拥有者,数据拥有者k即用户k持有nk条数据,用矩阵表示为:
其中k=1,…,m,矩阵中每一行分别代表一条数据,其中每条数据包含一个拥有d个特征值特征向量和特征向量对应的结果值,特征向量对应的结果值为矩阵中每一行的最后一个元素;
1)、首先调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;选择随机数ak作为私钥,并计算作为公钥,其中g是循环群的生成元,则数据拥有者k的公私钥对为:skk=ak;
2)、对于矩阵中的每一个数据项i=1,2,…,nk,j=1,2,…,d,选择一个随机数数i=1,2,…,nk,j=1,2,…d,并令调用A-AFGH加密方法的加密函数选择一个随机数计算密文其中Z是循环群的生成元;该密文只能被持有私钥skk=ak的数据拥有者k解密;则对于每一个数据项使用LHE加密后的密文形式为
其中,数据分析者生成公钥的过程如下:
数据分析者调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;用户选择随机数a和a*作为私钥,并计算ga和作为公钥;数据分析者的公私钥对为sk*=a*,临时公私钥对为:pk=ga,sk=a;
云服务器所获取的代理密钥生成过程如下:数据分析者发送临时公钥pk=ga给云服务器CS,请求使用存储在云服务器CS中的密文数据,数据分析者将临时公私钥对pk=ga,sk=a发送给云服务器ACS;云服务器CS将临时公钥pk转发给数据拥有者,获取数据拥有者的授权;
数据拥有者同意云服务器CS使用密文数据,则调用A-AFGH加密方法的代理密钥生成函数利用自己的私钥skk=ak和数据分析者的公钥pk=ga得到代理密钥数据拥有者把代理密钥pkk→DA返回给云服务器CS;
其中,进入岭回归学习后,云服务器计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
得到矩阵H和向量h的密文记为:
2)、云服务器CS计算矩阵乘法,得到密文[A*]和密文[b*]:
3)、云服务器CS在得到密文[A*]和密文[b*]后,将其中的[hi,j]和[hi]发送给云服务器ACS,云服务器ACS采用数据分析者发送的临时私钥为sk=a,对密文转换所得到的加密后的密文中的[hi,j]和[hi]进行解密操作:求解离散对数问题,得到对应的明文信息hi,j和hi,即获得矩阵H和向量h;根据矩阵H和向量h计算对应的盲化因子,即对称矩阵H*和向量h*:
使用数据分析者的临时公钥pk=ga加密盲化因子对称矩阵H*和向量h*,得到对应加密后的密文[H*]和[h*]:
4)云服务器ACS将获取到密文[H*]和[h*]发送给云服务器CS,云服务器CS利用A-AFGH加密方法的加法同态的性质消去密文[A*]和密文[b*]中的盲化因子,得到矩阵A和向量b的密文:
其中,进入岭回归学习后,云服务器计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
云服务器CS利用A-AFGH加密方法的加法同态的性质,计算和d=Ar*+b的密文,得到对应的用数据分析者的临时公钥pk=ga加密的密文结果和[d];此外,云服务器CS使用数据分析者的公钥调用A-AFGH的加密算法加密可逆矩阵R*和向量r*,得到密文矩阵和密文向量
本发明的第三目的通过以下技术方案实现:一种存储介质,存储有程序,所述程序被处理器执行时,实现本发明第一目的所述的基于多密钥密文的岭回归学习方法。
本发明的第四目的通过以下技术方案实现:一种计算设备,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现本发明第一目的所述的基于多密钥密文的岭回归学习方法。
本发明相对于现有技术具有如下的优点及效果:
(1)本发明基于多密钥密文的岭回归学习方法中,首先密文为数据拥有者各自加密后上传的,只有用户本人可以解密获得明文,从而保证数据隐私,同时也保留了数据的管理权,并且本发明方法中允许训练数据集包含不同公钥加密的密文,扩展了以往加密密钥单一的应用场景,有效解决了多密钥场景下的具有隐私保护的岭回归学习难题。其次,本文利用了数据拥有者生成的代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文,能够实现密文的高效转换,方便在密文上进行岭回归学习的运算,解决了多密钥加密数据造成的密文运算困难等问题。最后,本发明方法在支持一次乘法的线性同态加密的基础上实现了安全高效的岭回归模型参数的计算,有效地降低了在岭回归学习过程中的通信开销。
(2)本发明基于多密钥密文的岭回归学习方法中,在密文转换阶段,要求在获得数据拥有者即用户的许可之后才可以在保证数据隐私的前提下使用用户的数据,即用户需要计算一个代理密钥,表示允许对自己的数据执行密文转换操作,因此同意参与回归模型训练的用户需要计算一个代理密钥,则每个用户的计算需要执行一次乘法操作和一次指数操作,只需在用户的密文上执行n(d+1)次双线性映射操作,便可以实现密文的转换,因此本发明方法在密文转换阶段很大程度上提高了计算效率。另外,在岭回归学习的过程中,无需数据拥有者参与计算,能够有效减少数据拥有者的工作量;总体来说,本发明方法有效节省了计算的开销。
(3)本发明基于多密钥密文的岭回归学习系统,包括服务器、数据拥有者和数据分析者;其中数据拥有者对其所拥有的数据进行加密,并且将加密后的密文上传到服务器中;数据拥有者利用自身的私钥和数据分析者的公钥生成代理密钥,并且将计算的代理密钥发送给服务器;数据分析者发送公钥和密文使用请求到服务器,用于接收服务器计算的岭回归模型参数w;服务器执行本发明所述的基于多密钥密文的岭回归学习方法。在本发明系统中,服务器具体可以是云服务器,具体包括通过存储和计算服务的云服务器CS以及提供计算服务的云服务器ACS。在本发明系统中,m个数据拥有者即用户上传m个代理密钥,云服务器便可以在本地实现密文的转换,无需服务器之间的交互,因此通信开销仅取决于用户的数量,能够有效减少云服务器之间的通信开销。
附图说明
图1是本发明方法流程图。
图2是本发明系统原理图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1
本实施例公开了一种基于多密钥密文的岭回归学习方法,该方法可以在计算设备例如服务器中执行,也可以在云服务器中进行执行,如图1中所示,具体步骤包括:
S1、获取数据拥有者针对数据加密后所上传的密文。
在本实施例中,从数据拥有者中获取的密文的加密过程如下:
存在m个数据拥有者,数据拥有者k即用户k持有nk条数据,用矩阵表示为:
其中k=1,…,m,矩阵中每一行分别代表一条数据,其中每条数据包含一个拥有d个特征值特征向量和特征向量对应的结果值,特征向量对应的结果值为矩阵中每一行的最后一个元素;矩阵中至对应为一条数据中的d个特征值特征向量,为特征向量对应的结果值,以此类推,矩阵中各行元素的含义。
数据拥有者在上传数据之前,为了保证数据的隐私,需要用自己的公钥进行加密,然后将加密后的密文上传到执行本实施方法的服务器或云服务器中。本实施例使用的一种线性同态加密方案(LHE),该加密机制不仅拥有加法同态的性质,也可以在密文上实现一次性的乘法同态操作。结合代理重加密方案的变体,实现密文转换。该变体方案具有加法同态的性质,记为A-AFGH。数据拥有者k对所持有的上述数据进行加密的过程具体如下:
1)、首先调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;选择随机数ak作为私钥skk,并计算作为公钥,其中g是循环群的生成元,则数据拥有者k的公私钥对为:skk=ak;
2)、对于矩阵中的每一个数据项i=1,2,…,nk,j=1,2,…,d,选择一个随机数i=1,2,…,nk,j=1,2,…d,并令调用A-AFGH加密方法的加密函数选择一个随机数计算密文其中Z是循环群的生成元;该密文只能被持有私钥skk=ak的数据拥有者k解密;则对于每一个数据项使用LHE加密后的密文形式为
其中,表示用LHE加密方案用公钥pk加密的密文,表示用A-AFGH加密方案中的Enc1(pk,·)函数加密的密文,表示用A-AFGH加密方案中的Enc2(pk,·)函数加密的密文。用户k把加密后的数据上传到服务器或云服务器,一方面可以节省本地存储开销,用户用自己的公钥加密,方便用户查询、下载;另一方面服务器或云服务器可以利用这些数据进行岭回归学习算法。
S2、接收数据分析者发送的公私钥,接收数据分析者使用密文进行岭回归学习的请求。在本步骤中,从数据分析者中接收到的公钥的生成过程如下:
数据分析者调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;用户选择随机数a和a*作为私钥,并计算ga和作为公钥;数据分析者的公私钥对为sk*=a*,临时公私钥对为:pk=ga,sk=a。pk为临时公钥,sk为临时私钥。
S3、基于密文使用请求,向数据拥有者发送密文转换的请求以及数据分析者发送的公钥,基于数据拥有者同意情况下接收其所发送的代理密钥;其中数据拥有者利用自身的私钥和数据分析者的公钥生成代理密钥。
在本步骤中,从数据拥有者中获取到的代理密钥的生成过程如下:
根据数据分析者发送的临时公钥pk,确定出数据分析者请求使用密文数据;并且将临时公钥pk转发给数据拥有者,获取数据拥有者的授权同意;其中,数据拥有者在同意的情况下,调用A-AFGH加密方法的代理密钥生成函数利用自己的私钥skk=ak和数据分析者的临时公钥pk=ga得到代理密钥k=1,…,m。
S4、利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文。其中,数据分析者请求使用服务器或云服务器上的密文进行岭回归学习,服务器或云服务器则会向数据拥有者发送密文转换的请求,如果数据拥有者同意服务器或云服务器在保证数据安全的条件下使用密文数据,则会发送代理密钥给服务器或云服务器,然后服务器或云服务器利用代理密钥实现密文转换。
在本步骤中,利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文的具体过程如下:
其中,当数据拥有者1至数据拥有者m*同意数据分析者使用数据,则云服务器获得数据分析者临时公钥pk加密密文的矩阵:
令
令
令
令
令
令
…
以此类推,矩阵中各行元素的对应关系。
S5、进入岭回归学习后,根据密文转换所得到的加密后的密文得到密文矩阵,再根据LHE加密方案的性质计算得到矩阵A的密文[A]和向量b的密文[b]。
在岭回归中通过求解方程:
Aw=b
其中A=XTX+λI是一个d×d的方阵,b=XTy是一个d维的列向量。由于X是满秩的,所以A为正定矩阵,因此矩阵A总是可逆的(det(A)>0)。
根据岭回归的学习过程,我们把学习算法分为两个阶段:1)矩阵乘;2)计算岭回归模型参数w。
本步骤中,在进入岭回归学习后,计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
得到矩阵H和向量h的密文记为:
2)、计算矩阵乘法,得到密文[A*]和密文[b*]:
3)、采用数据分析者发送的临时私钥为sk=a,对密文转换所得到的加密后的密文中的[hi,j]和[hi]进行解密操作:求解离散对数问题,得到对应的明文信息hij和hi,即获得矩阵H和向量h;根据矩阵H和向量h计算对应的盲化因子,即对称矩阵H*和向量h*:
使用数据分析者的临时公钥pk=ga加密盲化因子对称矩阵H*和向量h*,得到对应加密后的密文[H*]和[h*]:
其中r′i,j为随机数,i=1,…,d,j=1,…d;r′i为随机数,i=1,…,d。4)在获取到密文[H*]和[h*]之后,利用A-AFGH加密方法的加法同态的性质消去密文[A*]和密文[b*]中的盲化因子,得到矩阵A和向量A的密文:
S6、根据矩阵A的密文[A]和向量b的密文[b]计算出岭回归模型参数w,具体过程如下:
上述服务器或云服务器均是指执行本实施例方法的服务器或云服务器。
在本实施例方法学习完成的岭回归模型可以被医院用于预测婴儿体重。医院根据怀孕最后一个月的一些超声波测量结果(例如头围、股骨长等)来预测婴儿出生时的体重。为了避免预测结果出现偏差,通常希望使用不同医院的数据进行岭回归的学习,因此在本实施例中,步骤S1中数据拥有者即对应各医院,数据拥有者所持有的数据即为该医院获取的怀孕最后一个月的一些超声波测量结果,各个不同的医院会使用不同的公钥加密数据,然后上传到服务器或云服务器中。当某个医院会请求使用不同医院的数据进行岭回归学习算法时,该医院即为数据分析者,则服务器或云服务器执行本实施例多密钥密文上的岭回归学习方法,返回学习结果及模型参数w的密文给该医院,该医院可以根据得到的模型对婴儿体重进行预测。
本实施例方法学习完成的岭回归模型可以被银行用于预测客户的信誉度。银行根据已有客户在日常生活、工作中的行为检测结果(如社会信誉、经济实力,信守合约状况等因素)来预测客户的信誉度。为了达到更准确的预测结果,通常希望使用不同银行的数据进行模型学习,因此在本实施例中,步骤S1中的数据拥有者即对应每一个银行,数据拥有者所持有的数据即为该银行存储的每个客户在日常生活、工作中的行为检测结果,各个不同的银行会使用不同的公钥加密数据,然后上传到服务器或云服务器中。当某个银行请求使用不同银行的数据进行岭回归学习算法时,该银行即为数据分析者,则服务器或云服务器执行本实施例多密钥密文上的岭回归学习方法,返回学习结果及模型参数w的密文给该银行,该银行可以根据得到的模型对新客户的信誉度进行预测。
本实施例方法学习完成的岭回归模型可以被房地产公司用于房价的预测。房地产公司根据售房记录(如户型,房屋面积,房屋地段等因素)来预测房价。为了达到更精确的预测结果,房地产公司希望根据不同房地产公司的数据进行模型训练,因此在本实施例中,步骤S1中的数据拥有者即为房地产公司,数据拥有者所持有的数据即为该房地产公司存储的售房记录。各个不同的房地产公司会使用不同的公钥加密数据,然后上传到服务器或云服务器中。当某个房地产公司请求使用不用房地产公司的数据进行岭回归学习算法时,该房地产公司即为数据分析者,则服务器或云服务器执行本实施例多密钥密文上的岭回归学习方法,返回学习结果及模型参数w的密文给该房地产公司,该房地产公司可以根据得到的岭回归模型对未来房价进行预测。
本领域技术人员可以理解,实现本实施例方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,相应的程序可以存储于计算机可读存储介质中。应当注意,尽管在附图中以特定顺序描述了本实施例1的方法操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,描绘的步骤可以改变执行顺序,有些步骤也可以同时执行。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
实施例2
本实施例公开了一种基于多密钥密文的岭回归学习系统,如图2中所示,包括服务器、数据拥有者和数据分析者。其中服务器可以是硬件的计算设备,也可以是云服务器,当为云服务器时,包括用于存储和计算服务的云服务器CS和用于辅助计算服务的云服务器ACS。其中:数据拥有者,对其所拥有的数据进行加密,并且将加密后的密文上传到云服务器中;用于接收和授权云服务器发送的密文转换请求,在同意密文转换请求的情况下,利用自身的私钥和数据分析者的公钥生成代理密钥,并且将计算的代理密钥发送给云服务器。
在本实施例中,数据拥有者对数据进行加密得到密文的过程如下:
存在m个数据拥有者,数据拥有者k即用户k持有nk条数据,用矩阵表示为:
其中k=1,…,m,矩阵中每一行分别代表一条数据,其中每条数据包含一个拥有d个特征值特征向量和特征向量对应的结果值,特征向量对应的结果值为矩阵中每一行的最后一个元素。
1)、首先调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;选择随机数ak作为私钥,并计算作为公钥,其中g是循环群的生成元,则数据拥有者k的公私钥对为:skk=ak;
2)、对于矩阵中的每一个数据项i=1,2,…,nk,j=1,2,…,d,选择一个随机数i=1,2,…,nk,j=1,2,…d,并令调用A-AFGH加密方法的加密函数选择一个随机数计算密文其中Z是循环群的生成元;该密文只能被持有私钥skk=ax的数据拥有者k解密;则对于每一个数据项使用LHE加密后的密文形式为
数据分析者,用于发送公私钥和密文使用请求到云服务器,用于接收云服务器计算的岭回归模型参数w。
在本实施例中,数据分析者生成公私钥的过程如下:数据分析者调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;用户选择随机数a和a*作为私钥,并计算ga和作为公钥;数据分析者的公私钥对为sk*=a*,临时公私钥对为:pk=ga,sk=a;
服务器,用于实施例1所示的基于多密钥密文的岭回归学习方法,如下:
获取数据拥有者针对数据加密后所上传的密文;
接收数据分析者发送的公钥,接收数据分析者使用密文进行岭回归学习的请求;
基于密文使用请求,向数据拥有者发送密文转换的请求以及数据分析者发送的公钥,基于数据拥有者同意情况下接收其所发送的代理密钥;其中数据拥有者利用自身的私钥和数据分析者的公钥生成代理密钥;
利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文;
进入岭回归学习后,根据密文转换所得到的加密后的密文得到密文矩阵,再针对密文矩阵进行矩阵乘法计算得到矩阵A的密文[A]和向量b的密文[b];
根据矩阵A的密文[A]和向量b的密文[b]计算出岭回归模型参数w的密文。
其中,在本实施例中,当服务器为云服务器时,云服务器所获取的代理密钥生成过程如下:
数据分析者发送临时公钥pk=ga给云服务器CS,请求使用存储在云服务器CS中的密文数据,数据分析者将临时公私钥对pk=ga,sk=a发送给云服务器ACS;云服务器CS将临时公钥pk转发给数据拥有者,获取数据拥有者的授权;
数据拥有者同意云服务器CS使用密文数据,则调用A-AFGH加密方法的代理密钥生成函数利用自己的私钥skk=ak和数据分析者的公钥pk=ga得到代理密钥数据拥有者把代理密钥pkk→DA返回给云服务器CS;
其中,云服务器利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文的具体过程如下:
其中,当数据拥有者1至数据拥有者m*同意数据分析者使用数据,则云服务器获得数据分析者临时公钥pk加密密文的矩阵:
令
令
令
令
令
令
…
以此类推,矩阵中各行元素的对应关系。
其中,在进入岭回归学习后,云服务器计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
得到矩阵H和向量h的密文记为:
2)、云服务器CS计算矩阵乘法,得到密文[A*]和密文[b*]:
3)、云服务器CS在得到密文[A*]和密文[b*]后,将其中的[hi,j]和[hi]发送给云服务器ACS,云服务器ACS采用数据分析者发送的临时私钥对为sk=a,对密文转换所得到的加密后的密文中的[hi,j]和[hi]进行解密操作:求解离散对数问题,得到对应的明文信息hij和hi,即获得矩阵H和向量h。很显然,在hij和hi足够大时,求解离散对数时困难的,但当hij和hi足够小时,例如hij和hi为32比特的数,则可以在有效的时间内解决离散对数问题。虽然在一定条件下可以通过解决离散对数问题求得hij和hi,但是在保证私钥安全的情况下,加密后的和仍然是安全的。因此在一定条件下的离散对数求解并不会影响加密方法的安全性。然后,根据矩阵H和向量h计算对应的盲化因子,即对称矩阵H*和向量h*:
使用数据分析者的临时公钥pk=ga加密盲化因子对称矩阵H*和向量h*,得到对应加密后的密文[H*]和[h*]:
4)云服务器ACS将获取到密文[H*]和[h*]发送给云服务器CS,云服务器CS利用A-AFGH加密方法的加法同态的性质消去密文[A*]和密文[b*]中的盲化因子,得到矩阵A和向量b的密文
其中,进入岭回归学习后,云服务器计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
在本实施例中,和d中添加了云服务器CS选择的随机数R*和r*,且云服务器ACS不能解密加密的密文和因此不能获得随机数R*和r*的信息,那么云服务器ACS也获取不到关于矩阵A和向量b的任何信息。由此可知,元数据和模型参数是安全的。
本实施例基于多密钥密文的岭回归学习系统实现岭回归学习,相比现存的方案相比较,有效地解决了多密钥场景下的具有隐私保护的岭回归学习难题。不仅方便用户检索存储在云服务器上的隐私数据,同时方便用户实行管理权,用户可以决定是否参与机器学习的相关学习运算。除此之外,在岭回归学习过程中,无需数据拥有者参与计算,减少了数据拥有者的工作量。
在密文转换阶段,本实施例比现存的基于BCP加密方案实现密文转换(BCP-TR)方式提高了效率,其对比结果如表1所示:
表1
表1中O是时间复杂度的符号。
在密文转换阶段,本实施例要求在获得数据拥有者即用户的许可之后才可以在保证数据隐私的前提下使用用户的数据,即用户需要计算一个代理密钥,表示允许云服务器对自己的数据执行密文转换操作。因此同意参与回归模型训练的用户需要计算一个代理密钥发送给云服务器,则每个用户的计算需要执行一次乘法操作和一次指数操作。云服务器只需在用户的密文上执行n(d+1)次双线性映射操作,便可以实现密文的转换。从表1中可以看出,本实施例在密文转换阶段需要用户参与计算,但是正是因为该运算保证了用户对数据的管理权。基于BCP-TR方案无需用户参与计算,但云服务器需要执行10n(d+1)次指数运算和17n(d+1)次乘法运算。另外,在用户不知情的情况下,使用用户的数据并不利于实际应用。因此,本实施例系统在密文转换阶段很大程度上提高了计算效率。
本实施例系统中,m个用户即m个数据拥有者上传m个代理密钥,云服务器便可以在本地实现密文的转换,无需服务器之间的交互,因此通信开销仅取决于用户的数量。基于BCP加密机制实现的密文转换需要服务器之间交互计算,期间共需发送2n(d+1)个密文数据。很显然,在密文转换阶段,本实施例有效地减少了云服务器之间的通信开销,与BCP-TR方案相比较具有明显优势。
本实施例系统在各个阶段的计算复杂度如表2所示。根据表2可知,影响实施例效率的参数主要是数据集的大小n和数据的维度d。在数据聚合阶段,第一步和第二步的计算复杂度取决于n和d的大小,而在第三步,计算复杂度只取决于维度d。在计算模型阶段,计算复杂度只依赖于维度d。本实施例的通信开销如表3所示。在数据聚合阶段,由于LHE的乘法同态结果中包含了盲化因子,为了消去密文中的盲化因子,需要云服务器交互计算。在该过程中云服务器CS需要发送n(d+1)个随机数的密文给云服务器ACS。云服务器ACS可以解密得到随机数的明文,并计算得到盲化因子。ACS返回d(d+1)/2+d个盲化因子的密文给云服务器CS。在模型计算阶段,需要ACS在明文上求解矩阵A的逆矩阵,因此,需要CS发送盲化后的矩阵D、向量d和盲化因子R*和r*给云服务器ACS,即需要发送2(d2+d)个密文。
表2
表3
当本实施例系统被医院用于预测婴儿体重时,医院根据怀孕最后一个月的一些超声波测量结果(例如头围、股骨长等)来预测婴儿出生时的体重;为了避免预测结果出现偏差,通常希望使用不同医院的数据进行岭回归的学习算法,而不同的医院会使用不同的公钥加密数据存在云服务器上。某个医院会请求使用不用医院的数据进行岭回归学习算法,则云服务器CS和ACS执行多密钥密文上的岭回归学习运算,返回学习结果给该医院。该医院可以根据得到的模型对婴儿体重进行预测。
实施例3
本实施例公开了一种存储介质,存储有程序,所述程序被处理器执行时,实现实施例1所述的基于多密钥密文的岭回归学习方法,如下:
获取数据拥有者针对数据加密后所上传的密文;
接收数据分析者发送的公私钥,接收数据分析者使用密文进行岭回归学习的请求;
基于密文使用请求,向数据拥有者发送密文转换的请求以及数据分析者发送的公钥,基于数据拥有者同意情况下接收其所发送的代理密钥;其中数据拥有者利用自身的私钥和数据分析者的公钥生成代理密钥;
利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文;
进入岭回归学习后,根据密文转换所得到的加密后的密文得到密文矩阵,再针对密文矩阵进行矩阵乘法计算得到矩阵A的密文[A]和向量b的密文[b];
各个过程中具体的实施过程和实施例1一致,参见实施例1,此处不再赘述。
在本实施例中,存储介质可以是磁盘、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、U盘、移动硬盘等介质。
实施例4
本实施例公开了一种计算设备,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现实施例1所述的基于多密钥密文的岭回归学习方法,如下:
获取数据拥有者针对数据加密后所上传的密文;
接收数据分析者发送的公私钥,接收数据分析者使用密文进行岭回归学习的请求;
基于密文使用请求,向数据拥有者发送密文转换的请求以及数据分析者发送的公钥,基于数据拥有者同意情况下接收其所发送的代理密钥;其中数据拥有者利用自身的私钥和数据分析者的公钥生成代理密钥;
利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文;
进入岭回归学习后,根据密文转换所得到的加密后的密文得到密文矩阵,再针对密文矩阵进行矩阵乘法计算得到矩阵A的密文[A]和向量b的密文[b];
各个过程中具体的实施过程和实施例1一致,参见实施例1,此处不再赘述。
本实施例中,计算设备可以是服务器、计算机等终端设备。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.一种基于多密钥密文的岭回归学习方法,其特征在于,步骤包括:
获取数据拥有者针对数据加密后所上传的密文;
接收数据分析者发送的公私钥,接收数据分析者使用密文进行岭回归学习的请求;
基于密文使用请求,向数据拥有者发送密文转换的请求以及数据分析者发送的公钥,基于数据拥有者同意情况下接收其所发送的代理密钥;其中数据拥有者利用自身的私钥和数据分析者的公钥生成代理密钥;
利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文;
进入岭回归学习后,根据密文转换所得到的加密后的密文得到密文矩阵,再针对密文矩阵进行矩阵乘法计算得到矩阵A的密文[A]和向量b的密文[b];
根据矩阵A的密文[A]和向量b的密文[b]计算出岭回归模型参数w的密文。
2.根据权利要求1所述的基于多密钥密文的岭回归学习方法,其特征在于,其中从数据拥有者中获取的密文的加密过程如下:
存在m个数据拥有者,数据拥有者k即用户k持有nk条数据,用矩阵表示为:
其中k=1,...,m,矩阵中每一行分别代表一条数据,其中每条数据包含一个拥有d个特征值特征向量和特征向量对应的结果值,特征向量对应的结果值为矩阵中每一行的最后一个元素;
1)、首先调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;选择随机数ak作为私钥,并计算作为公钥,其中g是循环群的生成元,则数据拥有者k的公私钥对为:skk=ak;
2)、对于矩阵中的每一个数据项选择一个随机数数并令调用A-AFGH加密方法的加密函数选择一个随机数计算密文其中Z是循环群的生成元;该密文只能被持有私钥skk=ak的数据拥有者k解密;则对于每一个数据项使用LHE加密后的密文形式为
4.根据权利要求3所述的基于多密钥密文的岭回归学习方法,其特征在于,
从数据拥有者中获取到的代理密钥的生成过程如下:根据数据分析者发送的临时公钥pk,确定出数据分析者请求使用密文数据;并且将临时公钥pk转发给数据拥有者,获取数据拥有者的授权同意;其中,数据拥有者在同意的情况下,调用A-AFGH加密方法的代理密钥生成函数利用自己的私钥skk=ak和数据分析者的临时公钥pk=ga得到代理密钥
利用代理密钥进行密文转换,将所有密文转换成同一公钥加密后的密文的具体过程如下:
当数据拥有者1到数据拥有者m*同意数据分析者使用数据,则获得数据分析者临时公钥pk加密密文的矩阵为:
令
令
令
令
令
令
以此类推,矩阵中各行元素的对应关系。
5.根据权利要求4所述的多密钥密文的岭回归学习方法,其特征在于,
进入岭回归学习后,计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
得到矩阵H和向量h的密文记为:
2)、计算矩阵乘法,得到密文[A*]和密文[b*]:
3)、采用数据分析者发送的临时私钥为sk=a,对密文转换所得到的加密后的密文中的[hi,j]和[hi]进行解密操作,求解离散对数问题,得到对应的明文信息hi,j和hi,即获得矩阵H和向量h;根据矩阵H和向量h计算对应的盲化因子,即对称矩阵H*和向量h*:
使用数据分析者的临时公钥pk=ga加密盲化因子对称矩阵H*和向量h*,得到对应加密后的密文[H*]和[h*]:
4)在获取到密文[H*]和[h*]之后,利用A-AFGH加密方法的加法同态的性质消去密文[A*]和密文[b*]中的盲化因子,得到矩阵A和向量b的密文:
6.根据权利要求5所述的于多密钥密文的岭回归学习方法,其特征在于,根据矩阵A的密文[A]和向量b的密文[b]计算出岭回归模型参数w的具体步骤如下:
利用A-AFGH加密方法的加法同态的性质,计算和d=Ar*+b的密文,得到对应的用数据分析者的临时公钥pk=ga加密的密文结果和[d];此外,使用数据分析者的公钥调用A-AFGH的加密算法加密可逆矩阵R*和向量r*,得到密文矩阵和密文向量
7.一种基于多密钥密文的岭回归学习系统,其特征在于,包括服务器、数据拥有者和数据分析者;
所述数据拥有者,用于对其所拥有的数据进行加密,并且将加密后的密文上传到服务器中;用于接收和授权服务器发送的密文转换请求,在同意密文转换请求的情况下,利用自身的私钥和数据分析者的公钥生成代理密钥,并且将计算的代理密钥发送给服务器;
所述数据分析者,用于发送公钥和密文使用请求到服务器,用于接收服务器计算的岭回归模型参数w;
所述服务器,用于执行权利要求1至6中任一项所述的基于多密钥密文的岭回归学习方法。
8.根据权利要求7所述的基于多密钥密文的岭回归学习系统,其特征在于,所述服务器为云服务器,云服务器包括云服务器CS和云服务器ACS;
其中,数据拥有者对数据进行加密得到密文的过程如下:
存在m个数据拥有者,数据拥有者k即用户k持有nk条数据,用矩阵表示为:
其中k=1,...,m,矩阵中每一行分别代表一条数据,其中每条数据包含一个拥有d个特征值特征向量和特征向量对应的结果值,特征向量对应的结果值为矩阵中每一行的最后一个元素;
1)、首先调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;选择随机数ak作为私钥,并计算作为公钥,其中g是循环群的生成元,则数据拥有者k的公私钥对为:skk=ak;
2)、对于矩阵中的每一个数据项选择一个随机数数并令调用A-AFGH加密方法的加密函数选择一个随机数计算密文其中Z是循环群的生成元;该密文只能被持有私钥skk=ak的数据拥有者k解密;则对于每一个数据项使用LHE加密后的密文形式为
其中,数据分析者生成公钥的过程如下:
数据分析者调用A-AFGH加密方法的密钥生成函数KeyGen(1κ)生成公私钥对,其中κ为安全参数;用户选择随机数a和a*作为私钥,并计算ga和作为公钥;数据分析者的公私钥对为sk*=a*,临时公私钥对为:pk=ga,sk=a;
云服务器所获取的代理密钥生成过程如下:数据分析者发送临时公钥pk=ga给云服务器CS,请求使用存储在云服务器CS中的密文数据,数据分析者将临时公私钥对pk=ga,sk=a发送给云服务器ACS;云服务器CS将临时公钥pk转发给数据拥有者,获取数据拥有者的授权;
数据拥有者同意云服务器CS使用密文数据,则调用A-AFGH加密方法的代理密钥生成函数利用自己的私钥skk=ak和数据分析者的公钥pk=ga得到代理密钥数据拥有者把代理密钥pkk→DA返回给云服务器CS;
其中,进入岭回归学习后,云服务器计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
得到矩阵H和向量h的密文记为:
2)、云服务器CS计算矩阵乘法,得到密文[A*]和密文[b*]:
3)、云服务器CS在得到密文[A*]和密文[b*]后,将其中的[hi,j]和[hi]发送给云服务器ACS,云服务器ACS采用数据分析者发送的临时私钥对为sk=a,对密文转换所得到的加密后的密文中的[hi,j]和[hi]进行解密操作:求解离散对数问题,得到对应的明文信息hi,j和hi,即获得矩阵H和向量h;根据矩阵H和向量h计算对应的盲化因子,即对称矩阵H*和向量h*:
使用数据分析者的临时公钥pk=ga加密盲化因子对称矩阵H*和向量h*,得到对应加密后的密文[H*]和[h*]:
4)云服务器ACS将获取到密文[H*]和[h*]发送给云服务器CS,云服务器CS利用A-AFGH加密方法的加法同态的性质消去密文[A*]和密文[b*]中的盲化因子,得到矩阵A和向量b的密文:
其中,进入岭回归学习后,云服务器计算得到矩阵A的密文[A]和向量b的密文[b]的具体过程如下:
云服务器CS利用A-AFGH加密方法的加法同态的性质,计算和d=Ar*+b的密文,得到对应的用数据分析者的临时公钥pk=ga加密的密文结果和[d];此外,云服务器CS使用数据分析者的公钥调用A-AFGH的加密算法加密可逆矩阵R*和向量r*,得到密文矩阵和密文向量
9.一种存储介质,存储有程序,其特征在于,所述程序被处理器执行时,实现权利要求1至6中任一项所述的基于多密钥密文的岭回归学习方法。
10.一种计算设备,包括处理器以及用于存储处理器可执行程序的存储器,其特征在于,所述处理器执行存储器存储的程序时,实现权利要求1至6中任一项所述的基于多密钥密文的岭回归学习方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110234350.4A CN113077054B (zh) | 2021-03-03 | 2021-03-03 | 基于多密钥密文的岭回归学习方法、系统、介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110234350.4A CN113077054B (zh) | 2021-03-03 | 2021-03-03 | 基于多密钥密文的岭回归学习方法、系统、介质和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113077054A true CN113077054A (zh) | 2021-07-06 |
CN113077054B CN113077054B (zh) | 2022-11-29 |
Family
ID=76609798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110234350.4A Active CN113077054B (zh) | 2021-03-03 | 2021-03-03 | 基于多密钥密文的岭回归学习方法、系统、介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113077054B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118353716A (zh) * | 2024-06-14 | 2024-07-16 | 中国民用航空飞行学院 | 基于对称加密的民航数据加密方法、系统、设备及介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957109A (zh) * | 2014-05-22 | 2014-07-30 | 武汉大学 | 一种云数据隐私保护安全重加密方法 |
CN104022868A (zh) * | 2014-02-18 | 2014-09-03 | 杭州师范大学 | 一种基于密文策略的属性基加密的外包解密方法 |
CN106170943A (zh) * | 2013-09-25 | 2016-11-30 | 汤姆逊许可公司 | 使用部分同态加密和掩码的隐私保护岭回归 |
US20180218171A1 (en) * | 2017-01-31 | 2018-08-02 | Hewlett Packard Enterprise Development Lp | Performing privacy-preserving multi-party analytics on horizontally partitioned local data |
CN108377237A (zh) * | 2018-02-05 | 2018-08-07 | 江苏大学 | 用于云端密文存储的具有所有权管理的数据去重系统及其数据去重方法 |
CN109379182A (zh) * | 2018-09-04 | 2019-02-22 | 西安电子科技大学 | 支持数据去重的高效数据重加密方法及系统、云存储系统 |
CN109784676A (zh) * | 2018-12-25 | 2019-05-21 | 杨鑫 | 数据分析的学习和使用方法、装置及计算机可读存储介质 |
CN109992979A (zh) * | 2019-03-15 | 2019-07-09 | 暨南大学 | 一种岭回归训练方法、计算设备、介质 |
CN110190945A (zh) * | 2019-05-28 | 2019-08-30 | 暨南大学 | 基于多加密的线性回归隐私保护方法及系统 |
US20200190568A1 (en) * | 2018-12-10 | 2020-06-18 | OneSkin Technologies, Inc. | Methods for detecting the age of biological samples using methylation markers |
US20200244435A1 (en) * | 2019-01-28 | 2020-07-30 | The Toronto-Dominion Bank | Homomorphic computations on encrypted data within a distributed computing environment |
-
2021
- 2021-03-03 CN CN202110234350.4A patent/CN113077054B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106170943A (zh) * | 2013-09-25 | 2016-11-30 | 汤姆逊许可公司 | 使用部分同态加密和掩码的隐私保护岭回归 |
CN104022868A (zh) * | 2014-02-18 | 2014-09-03 | 杭州师范大学 | 一种基于密文策略的属性基加密的外包解密方法 |
CN103957109A (zh) * | 2014-05-22 | 2014-07-30 | 武汉大学 | 一种云数据隐私保护安全重加密方法 |
US20180218171A1 (en) * | 2017-01-31 | 2018-08-02 | Hewlett Packard Enterprise Development Lp | Performing privacy-preserving multi-party analytics on horizontally partitioned local data |
CN108377237A (zh) * | 2018-02-05 | 2018-08-07 | 江苏大学 | 用于云端密文存储的具有所有权管理的数据去重系统及其数据去重方法 |
CN109379182A (zh) * | 2018-09-04 | 2019-02-22 | 西安电子科技大学 | 支持数据去重的高效数据重加密方法及系统、云存储系统 |
US20200190568A1 (en) * | 2018-12-10 | 2020-06-18 | OneSkin Technologies, Inc. | Methods for detecting the age of biological samples using methylation markers |
CN109784676A (zh) * | 2018-12-25 | 2019-05-21 | 杨鑫 | 数据分析的学习和使用方法、装置及计算机可读存储介质 |
US20200244435A1 (en) * | 2019-01-28 | 2020-07-30 | The Toronto-Dominion Bank | Homomorphic computations on encrypted data within a distributed computing environment |
CN109992979A (zh) * | 2019-03-15 | 2019-07-09 | 暨南大学 | 一种岭回归训练方法、计算设备、介质 |
CN110190945A (zh) * | 2019-05-28 | 2019-08-30 | 暨南大学 | 基于多加密的线性回归隐私保护方法及系统 |
Non-Patent Citations (1)
Title |
---|
周宇欢 等: "基于数据随机性特征和极速学习机的加密数据流识别", 《计算机科学》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118353716A (zh) * | 2024-06-14 | 2024-07-16 | 中国民用航空飞行学院 | 基于对称加密的民航数据加密方法、系统、设备及介质 |
CN118353716B (zh) * | 2024-06-14 | 2024-08-20 | 中国民用航空飞行学院 | 基于对称加密的民航数据加密方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113077054B (zh) | 2022-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Lightweight searchable encryption protocol for industrial internet of things | |
CN110008717B (zh) | 支持隐私保护的决策树分类服务系统及方法 | |
JP6253447B2 (ja) | プライベートデータに関する集約統計をセキュアに求める方法 | |
CN106534313B (zh) | 面向云端数据发布保护安全及隐私的频度测定方法和系统 | |
Deng et al. | A flexible privacy-preserving data sharing scheme in cloud-assisted IoT | |
Salinas et al. | Efficient secure outsourcing of large-scale linear systems of equations | |
WO2018184407A1 (zh) | 一种具有隐私保护的K-means聚类方法及系统 | |
CN104521178A (zh) | 安全的多方云计算的方法和系统 | |
EP2965462A1 (en) | Privacy-preserving ridge regression using partially homomorphic encryption and masks | |
Wang et al. | Outsourced privacy-preserving decision tree classification service over encrypted data | |
US20180349577A1 (en) | Device, system and method for token based outsourcing of computer programs | |
Deng et al. | BCTC-KSM: A blockchain-assisted threshold cryptography for key security management in power IoT data sharing | |
Fan et al. | PPMCK: Privacy-preserving multi-party computing for K-means clustering | |
Wang et al. | Privacy preserving computations over healthcare data | |
Mantey et al. | Federated learning approach for secured medical recommendation in internet of medical things using homomorphic encryption | |
CN115473715B (zh) | 前向安全密文等值测试公钥加密方法、装置、系统及介质 | |
CN113077054B (zh) | 基于多密钥密文的岭回归学习方法、系统、介质和设备 | |
Byun et al. | Efficient homomorphic encryption framework for privacy-preserving regression | |
Rajeshkumar et al. | A novel three-factor authentication and optimal mapreduce frameworks for secure medical big data transmission over the cloud with shaxecc | |
Caudhari et al. | Securing IoT devices generated data using homomorphic encryption | |
Zhang et al. | Privacy-preserving verifiable elastic net among multiple institutions in the cloud | |
Feng et al. | Secure outsourced principal eigentensor computation for cyber-physical-social systems | |
CN115062331A (zh) | 一种基于加性同态加密的隐私保护深度学习方法 | |
Guo et al. | Privacy-Preserving Queries Using Multisource Private Data Counting on Real Numbers in IoT | |
Chuang et al. | An Efficient GDPR-Compliant Data Management for IoHT Applications |
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 |