张林(商洛学院 电子信息与电气工程学院,陕西 商洛 726000)
一种支持隐私保护的加密方法在云存储中的应用
张林
(商洛学院 电子信息与电气工程学院,陕西 商洛 726000)
随着云存储技术的快速发展,云存储的数据安全性成了一个最为关键的问题。加密是一种对数据进行保护的有效方法。为了提高云存储环境中对客户隐私的保护,本文设计研究了一种支持隐私保护的云存储加密方法CESVMC。通过对矩阵和向量进行加、减、乘、除运算,完成对云存储数据和客户信息的保密工作。最后经过安全分析和对其性能进行评测,证明CESVMC加密技术具有较高的安全性能,以及合理的运算复杂度,满足日常云存储的工作需要。
云存储;安全;加密;隐私保护
近年来,随着云计算技术和软件即服务(SaaS)思想的兴起,云存储已经成为信息存储领域中的一个热点研究课题[1-3]。云存储是通过网络将本地数据存放到云存储服务提供商(SSP)提供的网络存储空间中,即云存储服务商提供存储服务[4]。因此,用户不再需要建立自己的存储空间,只需向服务商提起存储申请,就可以享受到异地存储和按自己实际需要进行存储的便利服务,为用户大大节约了购买和维护软硬件设备的费用。但是在现有的云存储服务当中,人们一直担心云存储的信息安全可靠性,并已经成为阻碍云存储推广和发展的重要原因之一。用户的隐私数据主要包括两大类,一类是用于识别个人身份的信息,如用户家庭情况、电话号码和银行卡号等信息;另一类是用户比较敏感的个人信息,如个人身体状况、收入情况和机密文件等[5]。
云存储的数据存储安全问题来源于云存储数据的外包服务的特点,客户的数据存储到云环境中,无法直接对数据进行直接的控制,因此可能导致个人信息的泄漏或被盗用[6]。近年来Salesforce.com和Google等云服务商泄漏客户数据信息的事件已经引起人们对云存储的怀疑,因此为了更好的保护客户的数据信息不被盗用或者丢失,合理的对用户数据进行加密是必不可少的。
然而目前的加密方法大都不支持对密文的加密,例如对个人的隐私信息进行模糊检索等。为了对云存储的用户信息进行更好的保护,本文提出了一种支持隐私保护的云存储加密方法,该方法是基于向量和矩阵的可计算云存储加密方案CESVMC(Computable Encryption Scheme Based on vector and Matrix calculations)。CESVMC的加密策略是将数值数据和字符串数据分为两大类,将支持模糊检索的字符串和加密数据进行加、减、乘、除运算,以保证云数据存储与读写等过程的安全性。
可计算的加密技术是是通过将加密后的数据进行某种运算而使用户信息更加安全的策略。目前已有的支持可计算的云存储加密技术主要包括两类:一类是支持可运算的加密技术[7],另一类是支持检索的加密技术。目前的加密方案还不能够支持同时对字符串检索和数据数值进行混合运算,且目前还没有一个实际可行的检索方案实现对字符串的模糊检索,另外目前的加密方案还很难解决整数和浮点数的混合加、减、乘、除运算。针对以上问题设计了一种支持矩阵和向量的加密方案(CESVMC),该加密方案支持对云存储中字符串的模糊检索核对加密数据的四则运算。
CESVNC加密算法是将云存储数据分为字符串和数值两大类,然后将加密字符串的模糊检索和加密数值的数据进行加、减、乘、除基本运算进行加密。
2.1加密过程算法
当User想要检索字符串nq时,用户需要先选择一个随机数r(r>0且r∈R),并将字符串转化为对应的一个(n-1)维的向量q,然后将q进行扩充为一个d维的向量nq(n-1)q′=r×(q,其中rj是随机数,且rj∈ R,即计算的元素为ce′=(q,1),随机元素组可以表示为re′=(w1,随后用户可以根据分裂串S将q′分割为两个d维的向量q1′和q2′子空间,如果S[z]=1,那么就将q′的第z个元素q′[z]分解为x1和x2,即q′[z]=x1+x2,将x1和x2分别记为q1′[z]和q2′[z];如果S[z]=0,那么就将q′的第z个元素q′[z]不进行分解,即q1′[z]=q2′[z]=q′[z];然后对q1′和q2′进行加密运算得到Q1=q1′×(M-1)和Q2=q2′×(M-1),最后将Q= (Q1,Q2)提交给SP,作为解密时的运算密钥。
2.2解密过程算法
当SP收到数据检索请求后,它将对User的权限范围内的Pi进行如下计算:
然后将计算结果与SP进行比较,因此比较得到的值越大,说明nq与npi越相似。
假设p1与p2是两个包外字符串np1和np2所对应的加密向量,Q是检索参数nq的加密向量,因此有:
其中向量p和q的欧几里得距离表示为d(p,q),因此d (pi,q)≥0且r∈R+
所以有
即,通过对pi和Q标量机从大到小进行排列,就可以确定一个相似度从高到低排列的序列SP,因此就实现了模糊检索。
2.3解密过程算法
解密算法Dec:Dec(P,M,S,op)→m,其中op表示计算类型,,当op="add"时,表示对数据进行加运算;当op="sub"时,表示对数据进行减操作;当op="mul"时,表示对数据进行乘操作;当op="div"时,表示对数据进行除运算。
转换一个d维的数值数据np的过程主要包括4个步骤:首先,选择(da-1)个随机数{ar1,ar2,…arda-1}(ari∈R且i∈[1, da-1]),并计算得到一个da维的向量p=(ar1,ar2,…,arda)T;然后再生成da个随机数{cr1,cr2,…crda),(cri∈R且i∈[1,da]),使得p变换为p′=(ar1+cr1+…+arda+crda)T。然后,随机选择(dm-1)个随机序列{mr1,mr2,…,mrdm-1},计算这样用户端自动将p′转换为一个(da+dm)维的向量。随后用户通过加入一系列的随机元素re对p″进行扩充,构造一个(da+dm+k)维的向量最后用户加密的p‴形成了一个外包向量p=M×pm,并将其存储到SP的服务器上。
将CESVMC云存储加密方案与已有的加密方案进行比较分析,对CESVNC的性能进行评估分析。对比的加密方案包括支持乘法同态的unpadded_RSA、支持加法同态的paillier和基于OPES的云加密字符串模糊检索方法。其中,对比的性能指标包括计算性能、加/解密性能和存储与同行负载等指标。实验在华为公司提供的数据存储试验台上进行。
实验中首先对不同长度的字符串进行了加/解密和检索性能分析。其中CESVMC的输入向量维度为d=10;OPES的输入分布的桶数为b1=6,输出分布的桶数为b2=4,实验结果如图1所示。可以发现当数据长度len≤500时,采用本文的CESVMC的数据加密时间比OPES的加密时间要小,但是当len>500时,CESVMC的加密时间要比OPES的加密时间长,并且随着len的增加,时间差距逐渐变大。另外CESVMC的检索参数加密时间和解密时间都比OPES的要小,并且随着len值的增加,节约的时间越多。
为了对CESVMC测试不同维度d读取数据的情况,下面设定长度len=200对字符串加解密和和检索性能进行评价。加解密及检索性能测试如图2所示,可以发现随着字符串长度的增加,加解密及检索所耗费的时间急剧增加,这是由于加解密的运算复杂度O(d2)随着字符串长度的增加而快速增大的结果。
图1 加、解密性能对比
图2 加解密及检索性能分析
存储和通信性能评价结果如图3所示,可以发现随着字符串长度的增加,CESVMC的通信与存储负载能力正比增长,这是因为通信与存储的复杂度为O(d),成一次比例关系。
图3 存储预通信负载测试
通过将CESVMC加密算法的性能与其他加密算法进行对比发现:1)CESVMC的加/解密性能较优;2)CESVMC的加减法效率很高,但是在对字符串模糊检索和乘除法方面的运算速度较慢,花费的时间较大;3)CESVMC在通信与存储时的负载能力较强;4)加密与解密性能随着维度的增加而增加。
针对当前云存储中的隐私安全的问题,本文提出了一种支持隐私保护的云存储加密运算模型(CESVMC),该加密方法支持对加密字符串的迷糊检索以及对加密数值数据进行加、减、乘、除四则运算。最后通过安全分析,证明了对于字符串的操作,当攻击者只获得外包数据时采用CESVMC加密方案具有较高的安全系数;当对于数值数据进行操作时,如果加法算子大于3,则系统具有较高的安全系数。综上,采用CESVMC云存储加密算法能够有效的保证客户的数据的安全,且具有较好的运算速度。
[1]NAMJOSHI J,GUPTE A.Service oriented architecture for cloud based travel reservation software as a service[C]//Proc of the2009IEEEInternational ConferenceonCloud Computing.Washington DC:IEEE Computer Society,2009: 147-150.
[2]HAYES B.Cloud computing[J].Communications of the ACM,2008,51(7):9-11.
[3]LIN G,DASMALCHI G,ZHU J.Cloud computing and IT as a service:opportunities and challenges[C]//Proc of the 6th IEEEInternational ConferenceonWebServices.Los Alamitos:IEEE Computer Society,2008:1-5.
[4]WANGJuan,LIFei,ZHANGLu-qiao.Task scheduling algorithm in cloud storage system using PSO with limited solution domain[J].Application Research of Computers,2013,30(1):127-129.
[5]HUANG Ru-Wei,GUI Xiao-Lin,YU Si,et al.Privacy-preservingcomputableencryptionschemeofcloud computing[J].Chinese journal of computers,2011,34(12):2391-2402.
[6]WANG Guan,FAN Hong,DU Dahai.Security analysis and improvement of access control scheme for cloud storage[J]. Journal of Computer Applications,2014,34(2):373-376.
[7]Agrawal R,Kiernan J,Srikant R,et al Order-preserving encryption for numeric data[C]//Proceedings of the 2004 ACM SIGMOD International Conference on Management of Data(SIGMOD’04).Paris,France,2004:563-574.
A support privacy encryption method in the application of the cloud storage
ZHANG Lin
(School of Electronic Information and Electrical Engineering,Shangluo University,Shangluo 726000,China)
With the rapid development of cloud storage technology,cloud storage data security has become a key problem.Encryption is an effective method for protection of data.In order to improve the cloud storage environment,the protection of customer privacy,this article design research a kind of support CESVMC privacy cloud storage encryption method.Based on the matrix and vector add,subtract,multiply,divide,complete the cloud storage data and customer information confidential work. Finally through security analysis and performance evaluation,prove CESVMC encryption technology has high safety performance,and reasonable operation complexity,meet the needs of the daily work of cloud storage.
cloud storage;safety;encryption;privacy protection
TN03
A
1674-6236(2016)11-0124-03
2015-06-16稿件编号:201506167
张 林(1986—),男,黑龙江讷河人,硕士研究生,助教。研究方向:嵌入式系统的研究与开发。