CN112163228B - 一种基于幺模矩阵加密的岭回归安全外包方法及系统 - Google Patents
一种基于幺模矩阵加密的岭回归安全外包方法及系统 Download PDFInfo
- Publication number
- CN112163228B CN112163228B CN202010928076.6A CN202010928076A CN112163228B CN 112163228 B CN112163228 B CN 112163228B CN 202010928076 A CN202010928076 A CN 202010928076A CN 112163228 B CN112163228 B CN 112163228B
- Authority
- CN
- China
- Prior art keywords
- matrix
- ridge regression
- unimodular
- client
- permutation
- 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
Images
Classifications
-
- 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
- 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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Analysis (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computational Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Algebra (AREA)
- Evolutionary Computation (AREA)
Abstract
本发明提供一种基于幺模矩阵加密的岭回归安全外包方法及系统,设客户端C需要将数据计算外包给云服务器端S,外包过程包括:客户端C进行初始化设置,包括初始化参数,构造置换矩阵和幺模矩阵;客户端C向云服务端S发送保密消息,客户端C响应计算请求,生成加密后的训练集矩阵发送给云服务端S;云服务端S计算生成密文消息;客户端C收到来自云服务器S的密文消息,进行验证,并且利用相应置换矩阵以及幺模矩阵进行乘法计算,得出最后所需要的结果。本发明利用幺模矩阵的性质,基于幺模矩阵加密的岭回归安全外包方案可以使用在多方数据安全通信,实现了提高破解难度和安全性的技术效果。本发明无需昂贵通信代价,提供轻量级安全外包方案。
Description
技术领域
本发明涉及数据安全和隐私保护领域,尤其涉及基于幺模矩阵加密的岭回归安全外包方法及系统。
背景技术
随着机器学习理论技术不断走向成熟,很多领域都取得了很好的应用成果,机器学习模型的可用性以及准确性与可用于训练的数量成正比,训练集越大使得模型的精确度越高。在大数据、云环境发展迅速的背景下,由于客户端有限的资源,所以外包计算得到广泛利用,客户端将复杂繁琐的计算外包给计算能力强大的云服务器上。但是这样会出现利用外包也可能出现隐私问题,例如机器学习应用到推荐系统上,其训练集包含用户的个人喜好、身份信息、年龄、地理位置,在进行训练的时候,这些信息可能存在泄露,用户也不希望本身的一些敏感信息以及隐私泄露给攻击者。
安全外包计算是作为一个重要的服务的风向标,资源受限的客户端求解繁琐复杂的问题的代价非常昂贵,对于资源有限的客户端进行大规模的数据计算提供了一个高效且经济的服务,因此客户端需要将大量的计算的任务外包给云服务器,安全外包计算的最终目标是使客户端计算成本最小化,并保持原始数据的机密性和完整性,对于得到的结果保证其正确性,故安全外包计算方法至少满足以下要求:(1)输入输出隐私性:计算方法要保证云服务器得不到客户端输入的数据以及输出结果。(2)可验证性:方法必须保证客户端收到来自云服务器的结果后,能够验证其正确与否(3)高效性:外包计算中客户端的本地计算开销应该远远小于对原始任务的计算开销。
发明内容
为了解决上述的技术问题,本发明提供了一种基于幺模矩阵加密的岭回归安全外包方案。
本发明所采用的技术方案提供一种基于幺模矩阵加密的岭回归安全外包方法,设客户端C需要将数据计算外包给云服务器端S,外包过程包括以下步骤,
步骤1,客户端C进行初始化设置,包括初始化参数,构造置换矩阵和幺模矩阵,所述参数包括模数q和有限域Fq,所述置换矩阵包括P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3,幺模矩阵记为U∈Fq n×n,其中n,m代表岭回归数据集矩阵的维数,w1=n,w2=m,w3=n;
步骤2,客户端C向云服务端S发送保密消息,客户端C响应计算请求,生成加密后的训练集矩阵发送给云服务端S,所述加密后的训练集矩阵包括岭回归数据集矩阵的转置矩阵、岭回归数据集矩阵、岭回归系数矩阵和岭回归因变量分别经过置换矩阵和幺模矩阵两次乘法计算所得结果,分别记为{X”}n×m、{Y”}n×m、{(λI)”}n×n和{b”}n×1;
步骤3,云服务端S计算{A”}n×n={X”}n×m{Y”}m×n+{(λI)”}n×n,计算方法和外包计算采用的岭回归公式相应,生成密文消息;
步骤4,客户端C收到来自云服务器S的密文消息,进行验证,并且利用相应置换矩阵以及幺模矩阵进行乘法计算,得出最后所需要的结果。
而且,步骤1的实现包括以下子步骤,
步骤1.1,根据置换映射双射构造置换矩阵;
步骤1.2,构造幺模矩阵U,维数为n×n的幺模矩阵U∈Fq n×n,Fq n×n表示n×n维数的模q后的幺模矩阵;
步骤1.3,客户端C根据岭回归数据集矩阵Xm×n的维数,生成对应可乘积维数的置换矩阵,得到P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3;经过恒等变换的幺模矩阵U∈Fq n ×n,持有客户端C的置换矩阵、幺模矩阵对应的模逆矩阵,外包计算方法遵循岭回归方法公式Aβ=b,变型后公式β=A-1b,矩阵A=XTX+λI,其中λI代表岭回归系数λ乘以单位矩阵I,b表示数据集矩阵的结果,β代表所需要求得的岭回归参数,X代表Xm×n。
而且,步骤2的实现包括以下子步骤,
步骤2.1,根据步骤1.3所得置换矩P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3,生成对应的置换矩阵的逆矩阵P1 -1∈{0,1}w1×w1,P2 -1∈{0,1}w2×w2,P3 -1∈{0,1}w3×w3;
步骤2.2,根据岭回归数据集矩阵Xm×n将生成的幺模矩阵进行恒等变换为对应的维数,得到幺模矩阵U1∈Fq m×m和U2∈Fq n×n,基于幺模矩阵U1∈Fq m×m和U2∈Fq n×n分别生成对应的模逆矩阵U1 -1∈Fq m×m、U2 -1∈Fq n×n;
步骤2.3,客户端C利用其随机生成的置换矩阵对岭回归数据集矩阵Xm×n、以及相应转置{XT}n×m、岭回归系数λ和向量{b}n×1进行乘法运算,包括将对应的岭回归系数λ乘以n×n维的单位矩阵得到岭回归系数矩阵(λI)n×n,然后得到以下矩阵,
{X'}n×m={P1}n×n{XT}n×m{P2 -1}m×m,
{Y'}m×n={P2}m×mXm×n{P3 -1}n×n,
{(λI)'}n×n={P1}n×n(λI)n×n{P3 -1}n×n,
{b'}n×1={P1}n×n{b}n×1。
其中,{X'}n×m代表进行一次矩阵乘积处理的岭回归数据集矩阵,{Y'}m×n、{(λI)'}n×n、{b'}n×1表示经过一次置换矩阵乘法计算的数据集矩阵、岭回归系数矩阵、数据集矩阵的结果;
步骤2.4,客户端C利用其随机生成的恒等变换的幺模矩阵再次进行乘法计算,然后得到以下矩阵,
{X”}m×n=U1(…(Uw1-1({X'}m×nVw2-1 -1…V1 -1)),
{Y”}m×n=V1(…(Vw2-1({Y'}m×nWw3-1 -1…W1 -1)),
{(λI)”}n×n=U1(…(Uw1-1({(λI)'}n×nWw3-1 -1…W1 -1)),
{b”}n×1=U1…Uw1-1{b'}n×1,
其中,U1…Uw1-1的下标代表w1-1个恒等变换的幺模矩阵,Vw2-1 -1…V1 -1,Ww3-1 -1…W1 -1分别代表w2-1和w3-1个恒等变换后幺模矩阵Vw2-1…V1,Ww3-1…W1的模逆矩阵;
步骤2.5,客户端C发送消息以及选择好的模数q以及有限域Fq给云服务端S,发送给云服务器的消息包括岭回归数据集矩阵的转置矩阵、岭回归数据集矩阵、岭回归系数矩阵和岭回归因变量分别经过置换矩阵和幺模矩阵两次乘法计算所得结果,分别记为{X”}n×m、{Y”}n×m、{(λI)”}n×n和{b”}n×1。
而且,步骤3的实现包括以下子步骤,
步骤3.1,云服务端S根据所得消息计算{A”}n×n={X”}n×m{Y”}m×n+{(λI)”}n×n,对{A”}n×n取模数q保证矩阵里面的元素都在有限域Fp范围内;
步骤3.2,云服务端S根据生成的{A”}n×n以及客户端C发送的b”,求出{A”}n×n的模逆矩阵{(A”)-1}n×n,然后与b”进行乘法计算,得到{β”}n×1={(A”)-1}n×n{b”}n×1;
步骤3.3,云服务端S生成的密文消息{β”}n×1={(A”)-1}n×n{b”}n×1发送给客户端C,完成交互。而且,步骤4的实现包括以下子步骤,
步骤4.1,客户端C根据矩阵{A”}n×n,{β”}n×1,判断{A”}n×n{β”}n×1-{b”}n×1是否为0;若{A”}n×n{β”}n×1-{b”}n×1等于0,则判断正确,否则判断有误;
步骤4.2,客户端C接受到云服务端S发送的密文消息之后,判断正确,则利用β={P3 -1}n×nW1 -1…Ww3-1 -1{β”}n×1,得到最终所需的结果β。
本发明还提供一种基于幺模矩阵加密的岭回归安全外包系统,用于实现如上所述的一种基于幺模矩阵加密的岭回归安全外包方法。
本发明利用幺模矩阵的性质,提出基于幺模矩阵加密的岭回归安全外包技术方案,可以使用在多方数据安全通信。实现了提高破解难度和安全性的技术效果。
附图说明
图1为本发明的方法流程图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实例化对本发明做进一步的详细描述,应当理解,此处所描述的实例仅用于说明和解释说明,并不限定本发明。
本发明实施例提供的方法涉及到两方(客户端C和云服务器S)。客户端C含有用户的隐私信息,由于数据集计算的复杂性,为了提高计算的效率,需要外包给云服务器,与此同时不被云服务器获取客户端发送数据中的任何隐私信息,客户端通过基于幺模矩阵加密的岭回归安全外包,得到回归参数。具体包括下述步骤:首先,客户端方进行初始化,生成置换矩阵以及幺模矩阵,加密自己的数据集发送给回云服务器S;云服务器S接受数据计算出结果,将结果发送给客户端C;客户端C收到来自云服务器的结果后,进行正确性验证,确认验证无误后,利用生成的幺模矩阵和置换矩阵计算出结果。
参见图1,本发明实施例提供的一种基于幺模矩阵加密的岭回归安全外包方法,详细实现流程如下:
步骤1:客户端C进行初始化设置,包括初始化参数和构造置换矩阵和幺模矩阵。
实施例中,初始化的参数包括客户端C选取模数q和有限域Fq,客户端生成构造的置换矩阵P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3,以及幺模矩阵U∈Fq n×n,其中w1,w2,w3代表数据集矩阵的维数。
注:此时w1,w2,w3根据岭回归数据集矩阵的转置以及岭回归数据集矩阵的维数来进行选择w1,w2,w3的值。根据岭回归数据集矩阵的转置的维数{XT}n×m,确定w1的值等于岭回归数据集矩阵的转置的行维数n,w2的值等于岭回归数据集矩阵的转置的列维数m,根据岭回归数据集矩阵Xm×n的维数,确定w3的值等于岭回归数据集矩阵的列维数n,即w1=n,w2=m,w3=n,P1∈{0,1}n×n,P2∈{0,1}m×m,P3∈{0,1}n×n。P1∈{0,1}w1×w1和P3∈{0,1}w3×w3维数一样但是生成的元素不同。
实施例中构造置换矩阵和幺模矩阵具体实现方式如下,
步骤1.1:构造置换矩阵,置换矩阵P是由置换映射双射π所得来,定义在有限集S={1,2…,n}上的置换映射是由有限集上的双射函数S→S所得来。设π(1)、π(2)…π(n)为置换后对应的置换位置,例如1对应位置为π(1),其中π(1)的值为1到n,置换映射双射π表示如下:
步骤1.2:构造幺模矩阵U,维数为n×n的幺模矩阵U∈Fq n×n,Fq n×n表示n×n维数的模q后的幺模矩阵,幺模矩阵内的元素在有限域内,其中从有限域中选取的模数q为素数,可以保证模q之后的矩阵可以进行模逆计算,幺模矩阵的行列式的值为1,其矩阵的逆行列式的值也为1。
步骤1.3:客户端C根据岭回归数据集矩阵Xm×n的维数,生成对应可乘积维数的置换矩阵P(包括P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3),经过恒等变换的幺模矩阵U∈Fq n×n,持有客户端C的置换矩阵、幺模矩阵对应的模逆矩阵,外包计算方法遵循岭回归方法公式Aβ=b,变型后公式β=A-1b,矩阵A代表岭回归数据集矩阵Xm×n(简写为X)的转置乘以其本身XTX加上λI,即A=XTX+λI,λI代表岭回归系数λ乘以单位矩阵I,加上λI可以保证A的可逆,防止数据集元素的共线性,b表示数据集矩阵的因变量,β代表所需要求得的岭回归参数。
客户端对数据集进行置换矩阵的盲化以及幺模矩阵乘法计算后,相当于加密X之后,云服务器再计算还是遵循公式Aβ=b。
注:P1∈{0,1}w1×w1和P3∈{0,1}w3×w3维数一样但是生成的元素不同。
步骤2:客户端C向云服务端S发送保密消息,客户端C响应计算请求,生成加密后的训练集矩阵发送给云服务端S。
实施例中,本步骤是第一次数据传输,客户端C将经过置换矩阵以及幺模矩阵两轮乘法计算的岭回归数据集{X”}n×m,{Y”}m×n,{(λI)”}n×n,{b”}n×1发送给云服务端S。实施例中步骤2的具体实现如下:
步骤2.1:根据步骤1.3中客户端C利用置换映射已经生成的置换矩阵P1∈{0,1}w1×w1、P2∈{0,1}w2×w2和P3∈{0,1}w3×w3,生成对应的置换矩阵的逆矩阵P1 -1∈{0,1}w1×w1,P2 -1∈{0,1}w2×w2,P3 -1∈{0,1}w3×w3。
其中,m,l,n代表置换矩阵的维数。
步骤2.2:步骤1.2中客户端C已经生成的幺模矩阵U∈Fq n×n,并选取的模q,生成幺模矩阵的个数为(w1-1)+(w2-1)+(w3-1)(即每个置换矩阵的维数减去1再相加),本步骤则提出根据岭回归数据集矩阵Xm×n将生成的幺模矩阵进行恒等变换为对应的维数得到幺模矩阵U1∈Fq m×m和U2∈Fq n×n,U1∈Fq m×m代表m乘以m维模q下的幺模矩阵,U2∈Fq n×n代表n乘以n维模q下的幺模矩阵;然后进一步根据恒等变换的幺模矩阵以及步骤1.2中已经选取的模q,基于幺模矩阵U1∈Fq m×m和U2∈Fq n×n分别生成对应的模逆矩阵U1 -1∈Fq m×m、U2 -1∈Fq n×n。
步骤2.3:客户端C利用其随机生成的置换矩阵对岭回归数据集矩阵Xm×n、以及其转置{XT}n×m、岭回归系数λ和{b}n×1进行乘法运算,其中{b}n×1代表数据集矩阵的因变量为n乘以1的向量,包括将对应的岭回归系数λ乘以n×n维的单位矩阵得到岭回归系数矩阵(λI)n×n(维数为n乘以n维),以及得到以下矩阵:
{X'}n×m={P1}n×n{XT}n×m{P2 -1}m×m,
{Y'}m×n={P2}m×mXm×n{P3 -1}n×n,
{(λI)'}n×n={P1}n×n(λI)n×n{P3 -1}n×n,
{b'}n×1={P1}n×n{b}n×1。
其中,{X'}n×m代表岭回归数据集矩阵的转置矩阵经过一次矩阵乘法计算的结果(维数为n乘以m),{Y'}m×n、{(λI)'}n×n、{b'}n×1表示岭回归数据集矩阵、岭回归系数矩阵(岭回归系数乘以单位矩阵)、数据集矩阵的因变量经过一次乘法计算的结果。
步骤2.4:客户端C利用其随机生成的恒等变换的幺模矩阵再次进行乘法计算,此时岭回归数据集矩阵Xm×n已经进行置换矩阵乘积,再对其进行乘以幺模矩阵的计算,其中幺模矩阵U1…Uw1-1维数均为n×n,Vw2-1 -1…V1 -1,Ww3-1 -1…W1 -1维数分别为m×m,n×n,计算后的结果如下,
{X”}m×n=U1(…(Uw1-1({X'}m×nVw2-1 -1…V1 -1)),
{Y”}m×n=V1(…(Vw2-1({Y'}m×nWw3-1 -1…W1 -1)),
{(λI)”}n×n=U1(…(Uw1-1({(λI)'}n×nWw3-1 -1…W1 -1)),
{b”}n×1=U1…Uw1-1{b'}n×1,
其中,U1…Uw1-1的下标代表w1-1个恒等变换的幺模矩阵,Vw2-1 -1…V1 -1,Ww3-1 -1…W1 -1分别代表w2-1和w3-1个恒等变换后幺模矩阵Vw2-1…V1,Ww3-1…W1的模逆矩阵,{X”}m×n代表岭回归数据集矩阵的转置矩阵经过两次乘法计算的结果,维数为n乘以m。{Y”}m×n代表岭回归数据集矩阵经过两次乘法计算的结果,维数为m乘以n。{(λI)”}n×n代表岭回归系数矩阵经过两次乘法计算的结果,维数为n乘以n。{b”}n×1代表岭回归数据集矩阵的因变量经过两次乘法计算的结果,维数为n乘以1的向量。
例如以维数为3x2数据集矩阵为例,数据集矩阵m、n值为3和2:
首先数据集矩阵、岭回归系数矩阵、岭回归结果矩阵以及数据集矩阵的因变量经过置换矩阵的乘法计算使其对原本的矩阵进行盲化,置换矩阵P1∈{0,1}2×2P2∈{0,1}3×3P3∈{0,1}2×2:
{X'}2×3={P1}2×2{XT}2×3{P2 -1}3×3
{Y'}3×2={P2}3×3{X}3×2{P3}2×2
{(λI)}2×2={P1}2×2(λI)2×2{P3}2×2
{b'}2×1={P1}2×2{b}2×1
经过置换矩阵计算后得到的矩阵再次进行幺模矩阵的乘法计算,此时选取的幺模矩阵的个数较少,对应矩阵的阶数高则选取的个数增加,个数满足{P1}2×2,{P2}3×3,{P3}2×2每个对应的维数减去1然后相加,即(2-1)+(3-1)+(2-1)=4,共生成4个幺模矩阵:
{X”}2×3={U1}2×2{X'}2×3{U2 -1}3×3{U3 -1}3×3
{Y”}3×2={U2}3×3{U3}3×3{Y'}3×2{U4 -1}2×2
{(λI)”}2×2={U1}2×2{(λI)'}2×2{U4 -1}2×2
{b”}2×1={U1}2×2{b'}2×1
其中,{U2}3×3{U3}3×3代表由2x2阶矩阵3x3恒等变换的幺模矩阵,例如是一个2x2的幺模矩阵,进行恒等变换后为一个3x3的恒等变换的幺模矩阵,不改变幺模矩阵行列式的值,其中{U2 -1}3×3{U3 -1}3×3代表幺模矩阵的模逆矩阵。
步骤2.5:客户端C发送消息以及选择好的模数q以及有限域Fq给云服务端S,发送给云服务器的消息包括分别经过置换矩阵和幺模矩阵两次乘法计算的岭回归数据集矩阵{X”}n×m和矩阵{Y”}n×m,岭回归系数矩阵{(λI)”}n×n,以及岭回归因变量矩阵{b”}n×1。
步骤3:云服务端S计算{A”}n×n={X”}n×m{Y”}m×n+{(λI)”}n×n,其计算方法由步骤1.3中岭回归公式中Aβ=b得到。
此时的{A”}n×n由岭回归数据集以及岭回归矩阵进行置换矩阵和幺模矩阵两轮乘法计算后得来的,{A”}n×n代表经过两次乘法计算的岭回归数据集矩阵的转置和数据集矩阵本身的积,然后再经过两次乘法计算岭回归系数矩阵相加得到,维数为n乘以n。客户端C返回经过处理后的消息{β”}n×1={(A”)-1}n×n{b”}n×1,云服务器S响应计算请求,计算出经过矩阵乘法处理后的岭回归参数{β”}n×1发送给客户端C。
实施例中,本步骤是第二次数据传输,云服务端S经过计算{A”}n×n={X”}n×m{Y”}m×n+{(λI)”}n×n,{β”}n×1={(A”)-1}n×n{b”}n×1,得到{β”}n×1将其发送给客户端C。
步骤3.1:云服务端S根据消息中的矩阵X”,矩阵Y”,矩阵(λI)”,进行计算{A”}n×n={X”}n×m{Y”}m×n+{(λI)”}n×n,对{A”}n×n取模数q保证矩阵里面的元素都在有限域Fq范围内。
步骤3.2:云服务端S根据生成的{A”}n×n以及客户端C发送的b”,求出{A”}n×n的模逆矩阵{(A”)-1}n×n,然后与b”进行乘法计算,得到{β”}n×1={(A”)-1}n×n{b”}n×1。
步骤3.3:云服务端S生成的密文消息{β”}n×1={(A”)-1}n×n{b”}n×1发送给客户端C,完成交互。
步骤4:客户端C验证后求解结果。
本步骤中,进行结果的验证以及计算结果,客户端C收到来自云服务器S的{β”}n×1,将其进行验证,并且利用之前生成的置换矩阵以及幺模矩阵进行乘法计算,得出最后所需要的结果{P3 -1}n×nW1 -1…Ww3-1 -1{β”}n×1。
步骤4.1:客户端C根据矩阵{A”}n×n,{β”}n×1,判断{A”}n×n{β”}n×1-{b”}n×1是否为0;若{A”}n×n{β”}n×1-{b”}n×1等于0,则判断正确;否则判断有误。
步骤4.2:客户端C接受到云服务端S发送的密文消息之后,判断正确,利用β={P3 -1}n×nW1 -1…Ww3-1 -1{β”}n×1,得到最终所需的结果β。
如上述3x2的数据集为例,验证成功后,计算β的值为β={P3 -1}2×2{U4 -1}2×2{β”}2×1。
本发明是可以通过具体的推导过程证明该方法的完整性和正确性,并且此方法是可以充分利用的。这种基于幺模矩阵加密的岭回归安全外包方法保证用户的隐私数据不被泄露的前提下,可以利用云的强大的计算资源来提高客户端的运行效率,云服务器发送的结果客户端可以进行验证结果是否正确,保证了方法的可验证性,基于幺模矩阵加密的方式使得计算更加简单方便,具有计算效率高,复杂性低的有点;最重要的是本发明不需要借助对称密码体制和公钥密码体制中密钥来进行求解,这使得不需要昂贵的通信代价,是一种轻量级的岭回归。
具体实施时,本发明技术方案提出的方法可由本领域技术人员采用计算机软件技术实现自动运行流程,实现方法的系统装置例如存储本发明技术方案相应计算机程序的计算机可读存储介质以及包括运行相应计算机程序的计算机设备,也应当在本发明的保护范围内。
应当理解的是,本说明书未详细阐述部分属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求书所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (6)
1.一种基于幺模矩阵加密的岭回归安全外包方法,其特征在于:设客户端C需要将数据计算外包给云服务端S,外包过程包括以下步骤,
步骤1,客户端C进行初始化设置,包括初始化参数,构造置换矩阵和幺模矩阵,所述参数包括模数q和有限域Fq,所述置换矩阵包括P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3,幺模矩阵记为U∈Fq n×n,其中n,m代表岭回归数据集矩阵的维数,w1=n,w2=m,w3=n;
步骤2,客户端C向云服务端S发送保密消息,客户端C响应计算请求,生成加密后的训练集矩阵发送给云服务端S,所述加密后的训练集矩阵包括岭回归数据集矩阵的转置矩阵、岭回归数据集矩阵、岭回归系数矩阵和岭回归因变量分别经过置换矩阵和幺模矩阵两次乘法计算所得结果,分别记为{X”}n×m、{Y”}m×n、{(λI)”}n×n和{b”}n×1;置换矩阵和幺模矩阵两次乘法计算实现如下,
{X'}n×m={P1}n×n{XT}n×m{P2 -1}m×m
{Y'}m×n={P2}m×mXm×n{P3 -1}n×n
{(λI)'}n×n={P1}n×n(λI)n×n{P3 -1}n×n
{b'}n×1={P1}n×n{b}n×1
{X″}n×m=U1(…(Uw1-1({X′}n×mVw2-1 -1…V1 -1)))
{Y″}m×n=V1(…(Vw2-1({Y′}m×nWw3-1 -1…W1 -1)))
{(λI)″}n×n=U1(…(Uw1-1({(λI)′}n×nWw3-1 -1…W1 -1)))
{b″}n×1=U1…Uw1-1{b′}n×1
其中,{X'}n×m代表进行一次矩阵乘积处理的岭回归数据集矩阵,{Y'}m×n、{(λI)'}n×n、{b'}n×1表示经过一次置换矩阵乘法计算的数据集矩阵、岭回归系数矩阵、岭回归因变量的结果;
U1…Uw1-1的下标代表w1-1个恒等变换的幺模矩阵,Vw2-1 -1…V1 -1,Ww3-1 -1…W1 -1分别代表w2-1和w3-1个恒等变换后幺模矩阵Vw2-1…V1,Ww3-1…W1的模逆矩阵;
步骤3,云服务端S计算{A”}n×n={X”}n×m{Y”}m×n+{(λI)”}n×n,计算方法和外包计算采用的岭回归公式相应,生成密文消息;
步骤4,客户端C收到来自云服务端S的密文消息,进行验证,并且利用相应置换矩阵以及幺模矩阵进行乘法计算,得出最后所需要的结果。
2.根据权利要求1所述基于幺模矩阵加密的岭回归安全外包方法,其特征在于:步骤1的实现包括以下子步骤,
步骤1.1,根据置换映射双射构造置换矩阵;
步骤1.2,构造幺模矩阵U,维数为n×n的幺模矩阵U∈Fq n×n,Fq n×n表示n×n维数的模数q后的幺模矩阵;
步骤1.3,客户端C根据岭回归数据集矩阵Xm×n的维数,生成对应可乘积维数的置换矩阵,得到P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3;经过恒等变换的幺模矩阵U∈Fq n×n,持有客户端C的置换矩阵、幺模矩阵对应的模逆矩阵,外包计算方法遵循岭回归方法公式Aβ=b,变型后公式β=A-1b,矩阵A=XTX+λI,其中λI代表岭回归系数λ乘以单位矩阵I,b表示数据集矩阵的结果,β代表所需要求得的岭回归参数,X代表Xm×n。
3.根据权利要求2所述基于幺模矩阵加密的岭回归安全外包方法,其特征在于:步骤2的实现包括以下子步骤,
步骤2.1,根据步骤1.3所得置换矩P1∈{0,1}w1×w1,P2∈{0,1}w2×w2,P3∈{0,1}w3×w3,生成对应的置换矩阵的逆矩阵P1 -1∈{0,1}w1×w1,P2 -1∈{0,1}w2×w2,P3 -1∈{0,1}w3×w3;
步骤2.2,根据岭回归数据集矩阵Xm×n将生成的幺模矩阵进行恒等变换为对应的维数,得到幺模矩阵U1∈Fq m×m和U2∈Fq n×n,基于幺模矩阵U1∈Fq m×m和U2∈Fq n×n分别生成对应的模逆矩阵U1 -1∈Fq m×m、U2 -1∈Fq n×n;
步骤2.3,客户端C利用其随机生成的置换矩阵对岭回归数据集矩阵Xm×n、以及相应转置{XT}n×m、岭回归系数λ和向量{b}n×1进行乘法运算,包括将对应的岭回归系数λ乘以n×n维的单位矩阵得到岭回归系数矩阵(λI)n×n,然后得到以下矩阵,
{X'}n×m={P1}n×n{XT}n×m{P2 -1}m×m,
{Y'}m×n={P2}m×mXm×n{P3 -1}n×n,
{(λI)'}n×n={P1}n×n(λI)n×n{P3 -1}n×n,
{b'}n×1={P1}n×n{b}n×1;
其中,{X'}n×m代表进行一次矩阵乘积处理的岭回归数据集矩阵,{Y'}m×n、{(λI)'}n×n、{b'}n×1表示经过一次置换矩阵乘法计算的数据集矩阵、岭回归系数矩阵、岭回归因变量的结果;
步骤2.4,客户端C利用其随机生成的恒等变换的幺模矩阵再次进行乘法计算,然后得到以下矩阵,
{X″}n×m=U1(…(Uw1-1({X′}n×mVw2-1 -1…V1 -1))),
{Y″}m×n=V1(…(Vw2-1({Y′}m×nWw3-1 -1…W1 -1))),
{(λI)″}n×n=U1(…(Uw1-1({(λI)′}n×nWw3-1 -1…W1 -1))),
{b″}n×1=U1…Uw1-1{b′}n×1,
其中,U1…Uw1-1的下标代表w1-1个恒等变换的幺模矩阵,Vw2-1 -1…V1 -1,Ww3-1 -1…W1 -1分别代表w2-1和w3-1个恒等变换后幺模矩阵Vw2-1…V1,Ww3-1…W1的模逆矩阵;
步骤2.5,客户端C发送消息以及选择好的模数q以及有限域Fq给云服务端S,发送给云服务端的消息包括岭回归数据集矩阵的转置矩阵、岭回归数据集矩阵、岭回归系数矩阵和岭回归因变量分别经过置换矩阵和幺模矩阵两次乘法计算所得结果,分别记为{X”}n×m、{Y”}m×n、{(λI)”}n×n和{b”}n×1。
4.根据权利要求3所述基于幺模矩阵加密的岭回归安全外包方法,其特征在于:步骤3的实现包括以下子步骤,
步骤3.1,云服务端S根据所得消息计算{A”}n×n={X”}n×m{Y”}m×n+{(λI)”}n×n,对{A”}n×n取模数q保证矩阵里面的元素都在有限域Fp范围内;
步骤3.2,云服务端S根据生成的{A”}n×n以及客户端C发送的b”,求出{A”}n×n的模逆矩阵{(A”)-1}n×n,然后与b”进行乘法计算,得到{β”}n×1={(A”)-1}n×n{b”}n×1;
步骤3.3,云服务端S生成的密文消息{β”}n×1={(A”)-1}n×n{b”}n×1发送给客户端C,完成交互。
5.根据权利要求4所述基于幺模矩阵加密的岭回归安全外包方法,其特征在于:步骤4的实现包括以下子步骤,
步骤4.1,客户端C根据矩阵{A”}n×n,{β”}n×1,判断{A”}n×n{β”}n×1-{b”}n×1是否为0;若{A”}n×n{β”}n×1-{b”}n×1等于0,则判断正确,否则判断有误;
步骤4.2,客户端C接受到云服务端S发送的密文消息之后,判断正确,则利用β={P3 -1}n× nW1 -1…Ww3-1 -1{β”}n×1,得到最终所需的结果β。
6.一种基于幺模矩阵加密的岭回归安全外包系统,其特征在于:用于实现如权利要求1-5任一项所述的一种基于幺模矩阵加密的岭回归安全外包方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010928076.6A CN112163228B (zh) | 2020-09-07 | 2020-09-07 | 一种基于幺模矩阵加密的岭回归安全外包方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010928076.6A CN112163228B (zh) | 2020-09-07 | 2020-09-07 | 一种基于幺模矩阵加密的岭回归安全外包方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112163228A CN112163228A (zh) | 2021-01-01 |
CN112163228B true CN112163228B (zh) | 2022-07-19 |
Family
ID=73857731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010928076.6A Active CN112163228B (zh) | 2020-09-07 | 2020-09-07 | 一种基于幺模矩阵加密的岭回归安全外包方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112163228B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014138754A2 (en) * | 2013-03-04 | 2014-09-12 | Thomson Licensing | A method and system for privacy-preserving recommendation based on matrix factorization and ridge regression |
CN109460536A (zh) * | 2018-11-16 | 2019-03-12 | 青岛大学 | 大规模矩阵运算的安全外包算法 |
CN110826089A (zh) * | 2019-12-12 | 2020-02-21 | 四川大学 | 一种实现大尺度矩阵乘法安全高效的可验证外包计算方法、客户端及云计算系统 |
CN111107076A (zh) * | 2019-12-16 | 2020-05-05 | 电子科技大学 | 一种安全高效的矩阵乘法外包方法 |
-
2020
- 2020-09-07 CN CN202010928076.6A patent/CN112163228B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014138754A2 (en) * | 2013-03-04 | 2014-09-12 | Thomson Licensing | A method and system for privacy-preserving recommendation based on matrix factorization and ridge regression |
CN109460536A (zh) * | 2018-11-16 | 2019-03-12 | 青岛大学 | 大规模矩阵运算的安全外包算法 |
CN110826089A (zh) * | 2019-12-12 | 2020-02-21 | 四川大学 | 一种实现大尺度矩阵乘法安全高效的可验证外包计算方法、客户端及云计算系统 |
CN111107076A (zh) * | 2019-12-16 | 2020-05-05 | 电子科技大学 | 一种安全高效的矩阵乘法外包方法 |
Non-Patent Citations (4)
Title |
---|
Securing Fast Learning!Ridge Regreesion over Encrypted Big Data;S Hu;《IEEE Trustcom》;20180801;全文 * |
基于同态加密的多分类Logistic回归模型;许心炜;《密码学报》;20200430;全文 * |
面向机器学习的安全外包计算研究;胡胜山;《中国优秀博硕士学位论文全文数据库(博士)》;20200815;全文 * |
高效可验证的隐私保护推荐系统;宋春芝;《华东师范大学学报》;20180331;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112163228A (zh) | 2021-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gai et al. | Blend arithmetic operations on tensor-based fully homomorphic encryption over real numbers | |
CN112989368B (zh) | 多方联合进行隐私数据处理的方法及装置 | |
CN110912713B (zh) | 多方联合进行模型数据处理的方法及装置 | |
CN112104619B (zh) | 基于外包密文属性加密的数据访问控制系统和方法 | |
CN110826089B (zh) | 一种实现大尺度矩阵乘法安全高效的可验证外包计算方法、客户端及云计算系统 | |
US11979492B2 (en) | Computer-implemented system and method for distributing shares of digitally signed data | |
Jayapandian et al. | Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption | |
CN110365469B (zh) | 一种支持数据隐私保护的云存储中数据完整性验证方法 | |
WO2006051517A1 (en) | Identity based encryption | |
Zhou et al. | How to securely outsource the extended euclidean algorithm for large-scale polynomials over finite fields | |
CN111639345B (zh) | 基于同态加密的安全的多方云计算的方法和系统 | |
Meshram et al. | A subtree‐based transformation model for cryptosystem using chaotic maps under cloud computing environment for fuzzy user data sharing | |
Kosba et al. | C $\emptyset $ C $\emptyset $: A Framework for Building Composable Zero-Knowledge Proofs | |
CN113132104A (zh) | 一种主动安全的ecdsa数字签名两方生成方法 | |
Biksham et al. | A lightweight fully homomorphic encryption scheme for cloud security | |
Liu et al. | An efficient fine-grained data access control system with a bounded service number | |
CN112163228B (zh) | 一种基于幺模矩阵加密的岭回归安全外包方法及系统 | |
Celi et al. | Distefano: Decentralized infrastructure for sharing trusted encrypted facts and nothing more | |
Jiang et al. | Efficient authentication protocol with anonymity and key protection for mobile Internet users | |
CN113468597A (zh) | 一种适用于电网大数据的同态映射方法及系统 | |
Wu et al. | A publicly verifiable PCAE scheme for confidential applications with proxy delegation | |
CN112995189A (zh) | 一种基于隐私保护的公开验证矩阵乘法正确性的方法 | |
Kumar et al. | Privacy Preserving and Efficient Outsourcing Algorithm to Public Cloud: A Case of Statistical Analysis | |
Jain et al. | Homomorphic framework to ensure data security in cloud environment | |
Roy | A homomorphic computational model for Chinese remainder theorem-based secret sharing |
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 |