一种基于循环矩阵变换的支持密文计算的加密方法

文档序号:7778784阅读:1032来源:国知局
一种基于循环矩阵变换的支持密文计算的加密方法
【专利摘要】本发明公开一种基于循环矩阵变换的支持密文计算的加密方法,包括:步骤一、原始数据的加密:将原始数据转换为向量,再将向量转化为循环矩阵,并通过密钥矩阵进行加密,得到一个加密的外包矩阵;步骤二、计算参数的加密:将计算参数转换为向量,再将向量转化为循环矩阵,并通过密钥矩阵进行加密,得到一个加密的计算参数矩阵;步骤三、加密矩阵的算术运算得到加密的运算结果;步骤四、通过密钥矩阵对加密的运算结果进行解密得到循环矩阵,再任取循环矩阵的一行/列相加得到运算结果的明文。本发明特别适合于云计算环境下的机密数据的外包存储和计算,可用于个人或企业机密数据的保护;支持加密数值数据的无限次加、减、乘、除四则混合运算。
【专利说明】一种基于循环矩阵变换的支持密文计算的加密方法
【【技术领域】】
[0001]本发明涉及数据加密【技术领域】,特别涉及一种基于循环矩阵变换的支持密文计算的加密方法。
【【背景技术】】
[0002]云计算作为一种新兴的技术,通过将大量的计算资源集合起来,以服务的形式向用户提供按需的、可扩展的计算 请求和存储服务,主要包括虚拟化技术和分布式存储技术。用户只需要通过网络就能随时随地地使用这些服务。但是,用户不愿意将个人数据存储到云计算服务中,其主要原因是用户担心失去对数据和计算的控制力,将数据外包存储到云计算服务中,可能导致敏感数据被泄露、滥用、丢失;将应用程序运行在云计算服务中,程序可能被盗用或篡改,运行的中间和最终结果被泄露。安全和隐私问题已经成为阻碍云计算普及和推广的主要因素之一。因此,为了持续和深入地发展,云计算必须解决隐私安全问题。
[0003]保护用户隐私数据的最直接的方法是对数据进行加密,用户在本地对隐私数据进行加密,将密文存储在云计算服务中,但是传统的加密方法不能对密文进行计算,用户处理加密数据时需要频繁的与服务器交互,这降低了用户使用云计算服务的积极性。支持计算的加密技术是这样的一种加密方法,它通过加密保证数据安全,同时能够支持对加密后的数据进行某些计算,如加减乘除四则运算。
[0004]国内外学者对支持密文计算的加密方法进行深入的研究,其研究的核心内容是支持算术运算的同态加密算法。目前已有一些同态加密算法,例如unpadded RSA、Paillier等,但它们只支持加法同态和乘法同态运算中的一种。2009年Gentry首次设计出了一种基于理想格的全同态加密方案,之后,Di jk、Smart等人对Gentry的方案进行了改进,使其更符合实际,但是这些全同态方案都太复杂且计算量太大,还不适合应用到云计算中。
[0005]根据以上分析,我们发现:(i)目前还没有一种加密方案能够完全支持数值数据(包括整数和浮点数)的算术运算(四则混合运算);(ii)目前已有的一些方案复杂度高、计算量大,不适合云计算环境;(iii)加密数值数据的算术运算对于密码学领域一直是一个挑战。

【发明内容】

[0006]本发明的目的在于,提供一种基于循环矩阵变换的支持密文计算的加密方法,以解决上述技术问题。
[0007]为了实现上述目的,本发明采用如下技术方案:
[0008]一种基于循环矩阵变换的支持密文计算的加密方法,包括以下步骤:
[0009]步骤一、原始数据的加密:将原始数据转换为向量,再将向量转化为循环矩阵,并通过密钥矩阵进行加密,得到一个加密的外包矩阵;
[0010]步骤二、计算参数的加密:将计算参数转换为向量,再将向量转化为循环矩阵,并通过密钥矩阵进行加密,得到一个加密的计算参数矩阵;
[0011]步骤三、加密矩阵的算术运算:对加密的外包矩阵和计算参数矩阵进行算术运算,得到加密的运算结果;
[0012]步骤四、加密的运算结果的解密:通过密钥矩阵对加密的运算结果进行解密得到循环矩阵,再任取循环矩阵的一行/列相加得到运算结果的明文。
[0013]本发明进一步的改进在于:所述原始数据和计算参数均为有理数。
[0014]本发明进一步的改进在于:步骤一中原始数据为有理数P1,步骤一具体包括以下步骤:
[0015](I)将P1随机分解成向量reh, a2,…,an)T,其中n表示向量的维数Ai为随机有理数,
【权利要求】
1.一种基于循环矩阵变换的支持密文计算的加密方法,其特征在于,包括以下步骤: 步骤一、原始数据的加密:将原始数据转换为向量,再将向量转化为循环矩阵,并通过密钥矩阵进行加密,得到一个加密的外包矩阵; 步骤二、计算参数的加密:将计算参数转换为向量,再将向量转化为循环矩阵,并通过密钥矩阵进行加密,得到一个加密的计算参数矩阵; 步骤三、加密矩阵的算术运算:对加密的外包矩阵和计算参数矩阵进行算术运算,得到加密的运算结果; 步骤四、加密的运算结果的解密:通过密钥矩阵对加密的运算结果进行解密得到循环矩阵,再任取循环矩阵的一行/列相加得到运算结果的明文。
2.根据权利要求1所述的一种基于循环矩阵变换的支持密文计算的加密方法,其特征在于,所述原始数据和计算参数均为有理数。
3.根据权利要求1所述的一种基于循环矩阵变换的支持密文计算的加密方法,其特征在于,步骤一中原始数据为有理数P1,步骤一具体包括以下步骤: (IMfP1随机分解成向量A= (a” a2,…,an)T,其中n表示向量的维数为随机有理数,
4.根据权利要求3所述的一种基于循环矩阵变换的支持密文计算的加密方法,其特征在于,步骤二中计算参数为有理数P2,步骤二具体包括以下步骤: (1)将P2随机分解成向量I^2=Od1,b2,…,bn)T,其中n表示向量的维数,IDi为随机有理数,
5.根据权利要求1所述的一种基于循环矩阵变换的支持密文计算的加密方法,其特征在于,步骤三中所述算术运算为加、减、乘、除中一种或多种混合运算。
6.根据权利要求1所述的一种基于循环矩阵变换的支持密文计算的加密方法,其特征在于,步骤四中通过密钥矩阵M和M—1对加密的运算结果C进行解密,得到循环矩阵R,R=M^OM15
【文档编号】H04L29/08GK103684742SQ201310638878
【公开日】2014年3月26日 申请日期:2013年11月29日 优先权日:2013年11月29日
【发明者】桂小林, 林建财, 余思, 杨攀, 杨建伟, 李子彦 申请人:西安交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1