纪 倩 杨 超 赵文红 张俊伟
一种新的云存储数据容错存储方式检验方法
纪 倩①杨 超*①赵文红②张俊伟①
①(西安电子科技大学计算机学院 西安 710071)②(嘉兴学院南湖学院 嘉兴 314001)
云存储中,防止数据丢失的关键是实现文件容错。然而,云存储服务商可能没有提供承诺的容错水平,导致用户蒙受数据丢失和经济损失的双重风险。现有云存储数据容错存储方式检验方法存在服务器预读取欺骗攻击,并且效率低、实用性差,不能达到在一定概率范围内,快速、轻量级地检测出犯规的服务器行为的要求。针对上述问题,该文利用磁盘顺序存取和随机存取的差异性设计了一种远程数据容错存储方式检验方法随机与顺序访问时间差异化(DRST)方法,其原理是文件块被分散地放在不同磁盘上,读取一个磁盘上顺序存储的文件块比随机读取不同磁盘上的文件块所需的响应时间短。最后,对所提方法进行了严格的理论证明和深入的性能分析,结果表明,所提方法能够快速检验出服务器是否为用户提供了其承诺的容错水平,并且比现有方案更安全,更高效。
云存储;云文件安全;数据容错能力;随机存取;顺序存取
云存储中安全问题是用户最大的质疑和担心。用户将数据放到云端,就丧失了对数据的绝对控制权。实际的云存储环境下,数据主要分布存储在数据中心上,存储其上的数据规模往往达到PB级甚至EB级,数据失效成了一种常态行为,极大地限制了云存储的应用和推广[1]。因此,云存储系统的数据容错十分重要,直接关系到整个系统的可用性。
早先,文献[6,7]采用纠错码与随机抽样相结合的请求响应式协议进行了数据拥有证明(PDPs)[8]和可恢复性证明(PORs),用于远程验证存储在云端的文件的完整性。发表于2011年ACM CCS的文献[3]针对远程验证云服务供应商是否将文件均衡存储在多个磁盘设备的问题,首次提出了一种实用性评估方法RAFT(Remote Assessment of Fault Tolerance)。其核心思路是用户与服务商事先商量,就文件布局策略达成一致的前提下,将文件分配到多个磁盘,磁盘数目越多,文件块分布越均衡,服务器并行读取文件块的速度越快,若服务商使用较少的磁盘或文件分布不均衡,会使响应时间变长,以此来判断服务商没有将文件存储到承诺的多个磁盘上。但RAFT方案在安全性及实用效率方面存在如下2个问题:
(1)服务器预读取的欺骗攻击: 若服务器没有按照要求根据上一步访问的文件块内容做哈希产生下一步要读取的块序号,而是把预先读取的块作为随机产生的请求块返回,从而使响应时间降低,用户将无法根据响应时间察觉服务商的作弊行为,就会被云服务供应商所欺骗,数据被置于极大的丢失风险中。。
(2)效率低实用性差: 该方案本质上只利用了数据并行读取和串行读取的时间差,该时间差比较小,尤其是在高性能磁盘情况下,要区分诚实服务商与狡诈服务商,需要进行很多步请求,才能使总的时间差比较明显,性能较低。
文献[11,12]也针对远程验证云服务供应商是否将文件均衡存储在多个磁盘设备的问题提出了新方案,其主要特点是文件被随机存储于任意磁盘上,要求云服务供应商针对不同程度的容错冗余程度发布官方的响应时间。但实际上,由于文件存储布局是随机的,即使存储文件的冗余程度相同,其响应时间也可能不尽相同,因此要求服务商提供官方的响应时间不合理,而且文献[12,13]缺少相关的性能分析、评估及对比。
2.1 DRST方法设计思想
服务供应商可能是廉价且懒惰的[3],即存储较少的冗余在较少的磁盘上,这些“狡诈服务供应商”可能提供不合格的容错,但不会恶意攻击故障磁盘的安全漏洞。针对这个问题,新方案的设计思路是文件块被分散地放到不同的磁盘上,读取一个磁盘上顺序存储的文件块比随机读取不同磁盘上的文件块所需的响应时间短。即基于磁盘顺序存取和随机存取的差异性,我们设计了一种远程数据容错存储方式检验方法DRST,该方案不仅可以检测服务商是否将文件分布存储在多个磁盘上,还可以证明文件分布是否均衡。
DRST方法特点:(1)在服务器端按照规定的存储策略存储文件的前提下,由用户端提出请求向服务器端说明每一步要读取的文件块序号,服务器并不知道用户端下一步要读取哪一块,无法预取来迷惑用户,可防止服务器将预取的文件块返回;(2)每步只请求一个文件块,多步请求的文件块实际是顺序放在一个磁盘上的,而服务器事先不知道也无法预测,若服务商不诚实没有遵守约定,而使用较少磁盘的话,文件块可能分布在不同磁盘上,这样读取的文件块的存储位置呈现一定的随机性,寻道次数增多,用户则可通过变长的响应时间辨别服务质量。由于磁盘随机读取和顺序读取的时间差相对较长,使用较少的步数,便可快速、轻量级地检测出犯规的服务器行为。
2.2 DRST方法详细设计
图1 用户端与云服务商交互图
具体步骤如下:
3.1 DRST方法安全性分析
本文方案的设计目标是通过多步请求来识别在容错级别上欺骗用户的存储服务商,具体来讲,用户与存储服务器事先约定好存储布局,然后通过随机多步的挑战响应交互时间差来判别存储服务商是否按照用户要求对数据进行了容错存储。本文方案使得存储服务器在约定好的容错级别和存储布局的前提下,不能通过预先读取等手段来欺骗用户,除非存储服务器可以提前猜测到用户随机的数据块请求顺序。实际上,我们有定理1如下:
定理1 对于所提出的DRST方法,如果随机数据请求的次数为,存储服务器能欺骗用户通过容错级别验证的复杂度远远小于猜中随机数的概率,即。
证明 假设用户在DRST方法中对存储服务器进行次随机数据块的请求,远程的存储服务器能够在没有按照容错级别要求存储用户数据的前提下通过DRST方法的挑战应答响应,使得用户不能觉察响应时间较长,即用户返回验证正确,进而欺骗用户已经达到承诺的容错水平。这需要远程存储服务器对用户的次随机数据请求的响应时间(包括磁盘寻道和数据读取时间)与同一个磁盘上顺序存放数据块请求的响应时间非常接近,即,其中是个可以忽略的值。即,需要远程存储服务器读取随机磁盘位置数据的时间与读取顺序磁盘位置数据的时间几乎一样。为了达到这样的要求,要么磁盘寻道不需要时间,要么服务器能提前预先读取数据块。当磁盘寻道不需要时间为真时,这与现有物理磁盘寻道时间不为零相互矛盾;当服务器能提前预先读取数据块为真时,这要求服务器能正确猜测用户次的随机位置的数据请求,在这种情况下,假设一个磁盘可存放数据的位置共有处,则服务器正确猜测次用户随机位置的数据请求的概率为;因为本文方案的查询次数一般小于100,而磁盘的数据存储位置一般要比100大几个数量级,所以,即,则;进一步而言,当时,正确猜测次用户随机位置的数据请求的概率为比直接正确猜测一个128比特位的加密密钥还要小。
证毕
3.2 DRST方法性能的理论分析
根据DRST方法,诚实服务商读取文件块时间:
狡诈服务商读取文件块时间:
时间差:
RAFT方法[3]中诚实服务商读取文件块时间:
狡诈服务商读取文件块时间:
时间差:
其中,表示请求读取的文件块数,表示诚实服务商存储文件使用的磁盘数目,表示狡诈服务商存储文件使用的磁盘数目,是网络延迟间,是磁盘寻道时间与读取文件块的总时间,。根据文献[3]前期研究,云服务商按每块64 kB来存储文件效率最高,平均值约为6 ms,平均值约为3.4 ms,即, DRST和RAFT方法的差别如下:
3.3 DRST方法性能的测试与分析
文献[1]对RAFT方法进行了测试,并在相同网络条件下对诚实服务商和狡诈服务商具体的延迟时间进行了实验,结果表明网络延迟时间分布稳定,因此本文测试实验不关心网络延迟。本小节对DRST方法进行测试,与文献[1]中RAFT方法的测试结果进行对比。根据3.2式(3)及式(6),要区分诚实服务商与狡诈服务商,DRST方法与即磁盘寻道时间有关,RAFT方法与,即磁盘寻道时间与读取文件块的总时间有关,。本测试旨在对比两个方案的性能,不需要对两个方案相同的网络延迟时间进行测试与比较,只需进行DRST的核心步骤即发送请求、读取文件块及记录响应时间,最后与文献[1]中RAFT方法的测试时间进行比较。
3.3.1 DRST测试场景与测试方案
(1)测试场景: 由于不关心网络延迟,我们在本地搭建了测试系统,使用HP Compad dx7408 MT DT PC主机,具有ms-7352主板,双核Intel(R) Core (TM)2 Duo CPU E8400 @3.00 GHz, 2 GB内存,其上挂载4个空的Seagate Barracuda 7200.10.250 G硬盘,平均寻道时间为3.4 ms,安装Ubuntu-14.04系统,C语言编写测试程序。
(2)测试方案: 所服务商承诺,在4个磁盘上存储一个大小为2 GB的文件,根据DRST步骤3的算法,若服务商是诚实的,将如图2所示存储文件,若服务商是狡诈的,就可能使用较少数量的磁盘,如使用3个磁盘,如图3,图中只画出部分块,每块64 kB。可以看到图3每个磁盘上存储的文件块集合与约定的形式有很大差异。该情况下,根据DRST方法不难检测出服务商的犯规行为。用户端向服务商提出读取文件块请求,发出多步请求,如依次请求第1号,第5号,第9号,第13号,发出51步请求。若服务商是诚实的,按照规定的策略存储文件,那么第1号,第5号,第9号,第13号刚好位于同一磁盘,服务器只需顺序访问1, 5, 9, 13,即可,只需要一次寻道时间。若服务商是狡诈的,本应在一个磁盘上顺序存储的文件块就会分散存储到其他磁盘上,出现一定的随机性,如图3,此时要读取1, 5, 9, 13,,就需要多次寻道时间,使总的响应时间变长。因此,我们可以记录读取文件块的响应时间,若时间在一定的范围内,则认为服务商是诚实的,否则,认为服务商有犯规行为。
图2 诚实服务商存储文件形式(4个磁盘)
图3 狡诈服务商存储文件形式(3个磁盘)
3.3.2 DRST测试数据 按照上述测试方案及参数,我们进行了200次实验得到200组数据。本应顺序存放在1个磁盘上的文件块被狡诈服务商分散存储到了3个磁盘上,用户发出51步请求,记录每一步读取文件块的时间,1表示随机读取51块的总时间。诚实服务商按照承诺将文件分配到4个磁盘,我们所请求的文件块刚好存储在1个磁盘上,用户同样发出51步请求,2表示顺序读取51块的总时间。将200组1和2进行统计,表1展示出部分数据。
表1 51步狡诈服务商和诚实服务商读取时间
3.3.3 DRST测试结果分析 根据200次实验统计的200组数据,我们求出狡诈服务商的平均响应时间,最短响应时间,及诚实服务商的平均响应时间,最长响应时间。我们将通过这4个参数与RAFT方法[3]进行对比。
(1)平均情况: 根据统计数据得到1和2分布图,如图4和图5。将1和2画于图6,每次实验两者均有明显差异,说明我们利用顺序读取和随机读取的寻道时间差来区分诚实与狡诈服务商是可行的且有效的。
图4 51步随机读取时间T1(ms)分布图
图5 51步顺序读取时间T2(ms)分布图
图6 51步随机读取时间T1(ms) 和顺序读取时间T2(ms)分布图
(2)完全区分情况: 根据统计数据得到1和2概率分布图如图7和图8。将1和2画于图9,1和2分布的范围相距较远,更有力地说明我们利用顺序读取和随机读取的寻道时间差来区分诚实与狡诈服务商是有效的。
图7 51步随机读取时间T1概率分布图
图8 51步顺序读取时间T2概率分布图
图9 51步随机读取时间T1(ms)和顺序读取时间T2(ms)概率分布图
本文的DRST方法只需要51步就能达到99 ms的时间差来完全区分诚实服务商与狡诈服务商,而文献[3]中RAFT方法需使用100步才能达到107 ms的时间差,如图10。
图10 100步完全区分诚实服务商与狡诈服务商概率分布图
从以上两方面的数据分析结果,可以得出:
(1)平均情况下,DRST方法用50步达到约149 ms的时间差,与理论预测的170 ms相差不多,即实际测试和理论预测在一定的误差范围内是匹配的,说明本文的理论是可信的,测试是可靠的,进一步说明DRST方法优于RAFT方法。
(2)完全区分诚实与狡诈服务商的情况下,DRST方法使用51步就可达到约99 ms的时间差。相同情况下RAFT方法使用100步才能达到107 ms的时间差。本文方法使用的步数约是RAFT方法的一半,效率提高了一倍。
(3)本文采用由用户端提出请求,每步都向服务器说明要读取的文件块序号,服务器并不知道也无法预测用户端下一步要读取哪一块,无法预取来迷惑用户,可防止服务器将预取的文件块返回,DRST方法更安全。
(4)RAFT方法中,不论是诚实服务商还是狡诈服务商,进行远程验证时服务器都需要从多个磁盘读取文件,开销大;本文的DRST方法中若是诚实服务商,只需要从一个磁盘读取文件,更节省开销。
(5)DRST方法最重要的价值在于,以测试数据为基准可以检测云存储数据存储方式,即判断服务商是否是按约定将文件均衡存储在多个磁盘的。例如,用户端发出51步请求,记录响应时间并验证文件块的正确性,多次测试求平均值,减去实时网络传输时延,若时间落在 71~83 ms之间则认为是遵守承诺的,若响应时间更长说明服务商有犯规行为,存储文件时使用了较少的磁盘。因此,可事先进行多次实验求平均值,将该平均值作为后续用户进行判断的依据,方便更多的用户方便、轻量级地辨别云服务提供商是否作弊。
综上所述,本文的DRST方法效率更高,更安全,能够实现快速、轻量级地检测出犯规的服务器行为的要求,从而判断服务商是否是按照约定将文件均衡存储在多个磁盘,具有很高的应用价值。
云计算作为一种新型的计算模式,在科学计算和商业领域发挥着重要作用,受到当前学术界和企业界的广泛关注。用户对云文件的依赖性日益增长,越来越多的数据存储于数据中心中,但云服务宕机事件越来越多。防止数据损坏和丢失的关键是云存储实现文件容错,云存储供应商通常会按照要求的容错水平收费。然而,云存储服务商可能无法提供承诺的容错水平,用户可能蒙受数据丢失和经济损失。
现有云存储环境下数据容错存储方式的检验方法可能存在服务器预读取的欺骗攻击及效率较低实用性差的缺点。针对该问题,本文在研究已有检验方法的基础上,利用磁盘顺序存取和随机存取的差异性设计了一种远程数据容错存储方式检验方法DRST,该方法本质是文件块被分散地存储在不同的磁盘上,读取一个磁盘上顺序存储的文件块比读取不同磁盘上的随机块所需的响应时间短。最后对所提方法进行了严格的理论证明和深入的性能分析,结果表明,本文方法能够快速、轻量级地检测出犯规的服务器行为,从而判断服务商是否是按照约定将文件均衡存储在多个磁盘,具有很高的应用价值。
[1] Chinese Institute of Electronics. Future oriented cloud service providers[C]. The Seventh Annual China Cloud Computing Conference, Beijing, China, 2015: 1080-1092.
[2] BARACALDO N, ANDROULAKI E, GLIDER J,. Reconciling end-to-end confidentiality and data reduction in cloud storage[C]. Proceedings of the 6th ACM Workshop on Cloud Computing Security, Scottsdale, AZ, USA, 2014: 4003-4108.
[3] BOWERS K, DIJK M, JUELS A,. How to tell if your cloud files are vulnerable to drive crashes[C]. Proceedings of the 18th ACM Conference on Computer and Communications Security (CCS), Chicago, IL, USA, 2011: 2780-2814.
[4] LORENA G and ORFILA A. An efficient confidentiality- preserving proof of ownership for deduplication[J]., 2015, 50: 49-59.
[5] LI M, QIN C, and LEE P. CDStore: toward reliable, secure, and cost-efficient cloud storage via convergent dispersal[C]. Proceedings of the 2015 USENIX Conference on Usenix Annual Technical Conference, Santa Clara, CA, USA, 2015: 3508-3520.
[6] JUELS A and KALISKI B. PORs–proofs of retrievability for large files[C]. Proceedings of the 14th ACM Conference on Computer and Communications Security (CCS), Alexandia, USA, 2007: 584-597.
[7] SHACHAM H and WATERS B. Compact proofs of retrievability[C]. Asiacrypt 2008, Springer-Verlag, Josef Pieprzyk, 2008: 90-107.
[8] ATENIESE G, BURNS R, CURTMOLA R,. Provable data possession at untrusted stores[C]. Proceedings of the 14th ACM Conference on Computer and Communications Security (CCS), Alexandia, USA, 2007: 598-609.
[9] DODIS Y, VADHAN S, and WICHS D. Proofs of retrievability via hardness amplification[C]. Theory of Cryptography Conference (TCC), San Francisco, USA, 2009: 235-248.
[10] CURTMOLA R, KHAN O, BURNS R,. MR.PDP: Multiple-replica provable data possession[C]. Proceedings of 28th IEEE International Conference on Distributed Computing Systems (ICDCS), Beijing, China, 2008: 767-779.
[11] WANG Z, SUN K, JING J,. Disk storage isolation and verication in cloud[C]. Proceedings of the Globecom, Anaheim, USA, 2012: 898-910.
[12] WANG Z, SUN K, JING J,. Verification of data redundancy in cloud storage[C]. Proceedings of the International Workshop on Security in Cloud Computing, Hangzhou, China, 2013: 457-468.
New Method for Checking the Data Stored with Fault Tolerance in Cloud
JI Qian①YANG Chao①ZHAO Wenhong②ZHANG Junwei①
①(,,,710071,)②(,,314001,)
Implementation of file fault tolerance is the key for preventing data loss in cloud. However, cloud storage service providers may not offer the committed level, which results in that users may suffer data loss and economic loss. Existing inspection algorithms of testing of data fault tolerance in cloud have disadvantages such as spoofing attack of pre-fetch, low efficiency and poor practicality, which can not detect the foul behavior of cloud storage providers within a certain probability. To deal with the above problems, utilizing the difference of sequential access and random access, a remote testing algorithm of data fault tolerance in cloud named (Difference of Random and Sequential access Time) (DRST) is designed. The core idea is that the time of reading blocks of a file stored in order on a disk is much shorter than reading blocks of a file stored random on different disks. A strict theoretical proof and a in-depth performance analysis to the proposed scheme are carried out. The results show that the proposed scheme can accurately detect whether the cloud storage provider supplies clients with the committed level of fault tolerance.What’s more, the proposed scheme is much more efficient than the existing ones.
Cloud storage; Cloud file security; Data fault tolerance; Random access; Sequential access
TP309
A
1009-5896(2016)10-2640-07
10.11999/JEIT151344
2015-12-01;改回日期:2016-07-12;网络出版:2016-08-26
杨超 chaoyang@mail.xidian.edu.cn
国家自然科学基金青年基金(61303219),国家自然科学基金(61672415),中央高校基本科研业务费(JB140303)
The National Natural Science Youth Foundation of China (61303219), The National Natural Science Foundation of China (61672415), The Fundamental Research Funds for the Central Universities (JB140303)
纪 倩: 女,1989年生,博士生,研究方向为云存储安全、云存储文件去重删除.
杨 超: 男,1979年生,博士,副教授,主要研究领域为大数据与云计算的安全、移动智能计算的安全.
赵文红: 女,1985年生,硕士,讲师,主要研究领域为无线网络安全、密码学、协议的形式化分析与设计.
张俊伟: 男,1981年生,博士,副教授,主要研究领域为无线网络安全、密码学、协议的形式化分析与设计.