5。1 客户端 28
5。2 可信第三方 34
5。3 云服务器 37
结 论 39
致 谢 40
参 考 文 献 41
1 绪论
本章首先先简单介绍本次研究的背景与意义以及相关研究现状与方案算法,然后说明本人在这次研究过程中的工作,总述本次毕业设计的研究内容,最后简单说明一下本文结构。
1。1 研究背景与意义
众所周知,云计算作为一种新的计算模式,出现在网格计算、对等计算、分布式计算等计算模式之后,其核心服务理念包括外租资源、服务外包以及应用托管。利用云计算,用户和企业可以大大节省前期在硬件的购置和维护上的投入,所以他们更愿意选择云计算,用云平台来存储数据部署应用。
而所谓的云存储[1],作为由云计算[2]主要提供的服务之一,其实它的本质就是将数据存储租用给用户,它允许用户将自己本地的数据存储到远端,而用户为了达到减少本地的开销的目的,也愿意选择这种远程托管数据的方式,当然,这种利用互联网来提供动态易拓展的虚拟化资源的方式,也使得用户随时随地访问这些远程数据成为可能。而随着互联网和网络宽带的发展,以及大数据时代的影响,云存储以其容量大、可扩展性高、以及方便快捷的特点,成为云计算应用最广泛的服务之一。
但与此同时,云存储的快速发展,也导致用户丧失了对数据的绝对控制权,所以如何确保云端数据安全[3-4]也成为了不可忽略的问题。2009年Gartner调研显示,百分之七十几的被访企业害怕云端数据隐私被泄露,所以他们不会选择云计算。此外,在最近几年里,云存储也不断发生安全事件,这使得用户高度重视。比如Gmail数据曾经泄露,这一事件造成了大致15万用户的数据丢失。另外盛大云也曾因本地物理机出现问题,造成了用户数据的部分损失等等。从这些数据丢失事件,我们不难看出云数据安全存储已经成为云计算能否继续在IT领域大规模使用的重要因素之一[3-4]。当然,云存储数据丢弃也有多方面原因:云服务商CSP有时会考虑自有利益,他们会故意丢弃用户长时间不用的数据;除此之外,不可避免的云服务商的软硬件升级或者物理机等的故障也会导致用户数据破损甚至丢失。这些不可避免的情况严重威胁着云安全存储。更不容忽略的是,为了保存自己的声誉,云服务提供商CSP极大可能会向数据所有者隐瞒这些数据丢失事件。
在这样基础上,云存储的数据完整性审计这一想法应运而生。针对这一审计概念,国内外很多学者提出了具体可信的方案[5-21]来验证云服务器中的数据完整性。本次毕业设计的主要目的就是通过对这些方案的学习与分析,同时结合现有的云平台环境以及自身能力,设计出一个带有自身特色的云安全存储数据完整性验证方案,同时利用阿里云实现一个实验性原型系统来验证本方案可行性,本文将介绍一下系统实现过程中所使用到的阿里云服务器以及相关的实现技术。
在本文章中设计的数据完整性验证的方案中,我们考虑到,由于用户不再实质掌控其数据的最终归属,所以并不能直接采用传统的密码学算法来保证数据安全。另外需要考虑的是网络中昂贵的I / O和传输的成本,我们也发现,简单的下载所有的数据来完成完整性的验证也并不是一种可靠能行的解决方案。而如果我们只是在访问数据时验证,不仅影响用户数据使用效率,就是为了检测到其他数据破损也是远远不够的;更重要的是对于那些未访问的数据而言,我们无法给用户正确性保证,并且也可能由于来不及恢复丢失或者破损的数据从而影响用户后面可能的使用。最重要的一点是,考虑到云端数据的数量级别都在TB甚至PB以上,而本地用户的计算能力和资源实在有限,让用户自身去实现数据完整性验证并不理智。综合以上这些考虑,同时为了充分保证完成数据完整性的验证并且不必在意用户的计算资源等的不足,我们在方案中引入了一个可信第三方(TPA)来代替用户实现云安全存储数据系统——完整性验证系统,这使得用户可在数据必要验证时只需借助TPA而不必占用自身有限的资源就可以保证云端数据的正确性[22]。如此一来,当用户需要验证自己的数据是否完整时,可以请求可信第三方与云服务器进行交互,不需要从云存储服务器下载文件,借由可信第三方就能够直接验证云端数据的完整性。方案中引入TPA除了可以解决用户云安全存储的风险,也可以仲裁云服务提供商,从而督促云服务商更好的发展和进步。如此看来,云端实现公开审计服务将会是一种趋势,当然也将会成就更好的云服务。