一种基于云计算的同态加密矩阵连乘安全外包方法技术

技术编号:23938202 阅读:78 留言:0更新日期:2020-04-25 03:59
本发明专利技术公开了一种基于云计算的同态加密矩阵连乘安全外包方法,属于同态加密技术领域。该方法在客户端执行加密,将矩阵进行编码加密并且上传给云服务器;云服务器端执行同态计算,在不解密的情况下进行密文矩阵连乘运算,并将计算结果以密文的形式返回给客户端;最后,客户端执行解密模块得到所求矩阵连乘的值。本发明专利技术可以在不泄露矩阵元素即客户端隐私数据的情况下,将矩阵连乘计算任务外包给云服务器,它保护了客户端数据的安全,减轻了客户端的计算量。将矩阵编码成一个密文来进行运算显著地降低空间复杂度和减少密文运算次数,达到提高效率的目的。

A security outsourcing method of homomorphic encryption matrix multiplication based on Cloud Computing

【技术实现步骤摘要】
一种基于云计算的同态加密矩阵连乘安全外包方法
本专利技术属于同态加密的
,具体地涉及一种基于云计算的同态加密矩阵连乘安全外包方法。
技术介绍
矩阵计算是一项基础的科学计算问题,在许多领域都有着广泛的应用,如数据分析和决策、科学计算、机器学习和图像处理等。因此,提高矩阵安全外包计算效率对许多高层问题安全外包计算的性能优化具有十分重要的意义。例如,深度学习中最经典的模型卷积神经网络的训练和预测过程就可以表示成一系列矩阵运算,提高矩阵安全外包计算的效率将极大地提高深度学习安全外包计算的效率。全同态加密是一种新型加密方法,它可以在不解密的前提下对密文进行计算,计算结果也是以密文形式保存。全同态加密解决了在不可靠云环境中对密文计算这一难题,被誉为密码学的圣杯。例如,用户将所需要处理的数据在本地采用全同态加密技术进行加密处理,然后将加密后的数据上传给云服务器;云服务端对加密后的数据进行相应的处理,并将处理结果以密文形式传输给用户;用户使用密钥解密得到数据处理后的结果。整个过程中,云服务器并不知道用户数据的具体内容,用户数据的隐私性得到了完美的保护。2017年,Mishra等人在论文《EnhancementforSecureMultipleMatrixMultiplicationsoverRing-LWEHomomorphicEncryption》中首次研究了基于同态加密的安全矩阵连乘计算问题。然而,该方案有着明显的缺点:为了支持矩阵连乘,它们分别为每个n×n矩阵Ai{i=1,...,m}定义了不同的编码方法,并且下一个矩阵需要比上一个更大的参数。但是,如此大的参数会使计算变得非常慢。因此,随着矩阵数量的增加,他们的方法将渐近地变得不可行。2019年,Wang等人在论文《SecureOutsourcedComputationofMultipleMatrixMultiplicationBasedonFullyHomomorphicEncryption》中提出将一个矩阵按列编码加密成n个密文进行矩阵连乘运算。虽然该方案以固定大小参数来编码加密矩阵,在一定程度上提高了效率,但是仍不是十分理想。本专利技术针对全同态加密技术下矩阵连乘安全外包计算效率不高的问题提出改进方法。
技术实现思路
针对现有技术存在的问题,本专利技术提供了一种基于云计算的同态加密矩阵连乘安全外包方法,通过将整个矩阵编码成一个密文并结合“二分法”计算矩阵连乘,最终解密得到矩阵连乘的值。本专利技术解决其技术问题所采用的技术方案是:一种基于云计算的同态加密矩阵连乘安全外包方法,包括以下步骤:(1)客户端收集工业上需要计算的矩阵数据Ai,并将收集的m个矩阵数据A1,A2...Am组成矩阵集,其中,矩阵A为n阶方阵,n为正整数;i∈{1,2,...,m},表示该矩阵所在矩阵集的位置。(2)将步骤(1)中每个矩阵数据Ai分别进行编码并加密,得到相应的m个密文矩阵并将上传至云服务器端。(3)将每相邻的两个密文矩阵组成一个矩阵对,将所述矩阵对相乘,并且将矩阵对相乘所获得的结果再次两两组成矩阵对进行相乘计算,直至得到最后一个矩阵ctX,即完成计算。(4)云服务器端将所述ctX返回给客户端,客户端对该结果进行解密得到m个矩阵连乘的结果X。进一步地,步骤(3)具体包含以下子步骤:(3.1)将第一密文矩阵和第二密文矩阵组成矩阵对;(3.2)取出第一密文矩阵的对角线,分别为:将上述对角线进行按列复制操作,得到如下n个对角线密文矩阵(3.3)使用旋转操作将第二密文矩阵按行进行j次旋转,得到n个旋转密文矩阵(3.4)将步骤(3.2)所得的n个对角线密文矩阵与步骤(3.3)所得n个旋转密文矩阵点乘,并将n个点乘矩阵相加,得到两个密文矩阵的乘积ctA';(3.5)将其余密文矩阵依次组成矩阵对,重复步骤(3.2)至(3.4),点乘计算其余矩阵对,并将密文矩阵对计算结果存储,重复计算直至求出最终的结果ctX。与现有技术相比,本专利技术的有益效果是:本专利技术公开的基于云计算的同态加密矩阵连乘安全外包方法,可以在不泄露矩阵元素即客户端隐私数据的情况下,将矩阵连乘计算任务外包给云服务器,它保护了客户端数据的安全,减轻了客户端的计算量。将矩阵编码成一个密文来进行运算显著地降低空间复杂度和减少密文运算次数,达到提高效率的目的。采用“二分法”计算矩阵连乘可以有效的降低密文计算时产生的电路深度,可以以更小的参数计算同态矩阵连乘,大大提高了矩阵连乘的计算效率。附图说明图1为本专利技术矩阵连乘计算流程图;图2为本专利技术中“二分法”计算示意图;图3为本专利技术中矩阵乘法计算示意图;图4为本专利技术方案与相关方案的效率对比。具体实施方式为了让本专利技术的特征和优点更加明显,下面结合附图对本专利技术进行详细、完整的说明。图1为本专利技术安全外包方法的流程图,该方法具体包括以下步骤:(1)在云计算日益普及的情况下,人们将大量的计算任务外包给云服务商。客户端收集工业上需要保密的矩阵数据Ai,如医疗数据、交通流量数据、隐私图片数据、财务数据等,并将收集的m个矩阵数据A1,A2...Am组成矩阵集,其中,矩阵A为n阶方阵,n为正整数;i∈{1,2,...,m},表示该矩阵所在矩阵集的位置。(2)将步骤(1)中每个矩阵数据Ai分别进行编码并加密,得到相应的m个密文矩阵并将上传至云服务器端。其中矩阵A为n阶方阵,n为正整数,ct表示密文,i∈{1,2,...,m},表示该矩阵所在矩阵集的位置。将整个矩阵编码并加密成一个密文不仅节省了存储空间,且仅需要有限次密文运算,大大减少了电路深度,提高了计算效率;(3)由于顺序矩阵连乘会造成较深的同态计算深度,因此采用“二分法”进行矩阵连乘,如图2所示。该方法采用树型结构将两个相邻矩阵对相乘,这样m个矩阵连乘只有深度的电路。将每相邻的两个密文矩阵组成一个矩阵对,将所述矩阵对相乘,并且将矩阵对相乘所获得的结果再次两两组成矩阵对进行相乘计算,直至得到最后一个矩阵ctX,即完成计算。具体包括以下子步骤:(3.1)将第一密文矩阵和第二密文矩阵组成矩阵对,如图3为本专利技术中矩阵乘法计算示意图;(3.2)取出第一密文矩阵的对角线分别为:将上述对角线进行按列复制操作,得到如下n个对角线密文矩阵(3.3)使用旋转操作将第二密文矩阵按行进行j次旋转,得到n个旋转密文矩阵(3.4)将步骤(3.2)所得的n个对角线密文矩阵与步骤(3.3)所得n个旋转密文矩阵点乘,并将n个点乘矩阵相加,得到两个密文矩阵的乘积ctA';(3.5)将其余密文矩阵依次组成矩阵对,重复步骤(3.2)至(3.4),点乘计算其余矩阵对,并将密文矩阵对计算结果存储,重复计算直至求出最终的结果ctX。(4)云服务器端将所述ctX返回给客户端,客户端对该结果进行解密得到本文档来自技高网
...

【技术保护点】
1.一种基于云计算的同态加密矩阵连乘安全外包方法,其特征在于,包括以下步骤:/n(1)客户端收集工业上需要计算的矩阵数据A

【技术特征摘要】
1.一种基于云计算的同态加密矩阵连乘安全外包方法,其特征在于,包括以下步骤:
(1)客户端收集工业上需要计算的矩阵数据Ai,并将收集的m个矩阵数据A1,A2...Am组成矩阵集,其中,矩阵A为n阶方阵,n为正整数;i∈{1,2,...,m},表示该矩阵所在矩阵集的位置。
(2)将步骤(1)每个矩阵数据Ai分别进行编码并加密,得到相应的m个密文矩阵并将上传至云服务器端。
(3)将每相邻的两个密文矩阵组成一个矩阵对,将所述矩阵对相乘,并且将矩阵对相乘所获得的结果再次两两组成矩阵对进行相乘计算,直至得到最后一个矩阵ctX,即完成计算。
(4)云服务器端将所述ctX返回给客户端,客户端对该结果进行解密得到m个矩阵连乘的结果X。


2.根据权利要求1所述同态加密矩阵...

【专利技术属性】
技术研发人员:黄海王淑芳
申请(专利权)人:浙江理工大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1