一种适用于云存储的重复数据删除系统和方法

文档序号:7801975阅读:379来源:国知局
一种适用于云存储的重复数据删除系统和方法
【专利摘要】本发明公开了一种适用于云存储的重复数据删除系统和方法,该系统为基于策略的重复数据删除系统,采用安全代理和随机存储机制,将存储服务与安全服务分离,提高云存储的空间利用率,降低冗余数据的带宽占用,同时提高用户数据和隐私的安全性;该系统主要由三个组件构成,分别是:客户端、安全代理和云存储,其中安全代理是最安全核心,主要用户保证用户数据、隐私的安全;该系统适用于云存储的重复数据删除方法,具有安全性高、系统效率高、带宽利用率高等优点,并且能够抵抗重放攻击、假冒攻击以及由于半可信云存储提供商可能带来的安全威胁。
【专利说明】一种适用于云存储的重复数据删除系统和方法
【技术领域】
[0001]本发明涉及云存储与信息安全【技术领域】,特别涉及重复数据删除技术。
【背景技术】
[0002]云存储是在云计算(Cloud Computing)概念上延伸和发展出来的一个新的概念,是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。云存储系统利用重复数据删除技术,只保留冗余数据的一个副本,并且提供指向该副本的指针,而不是存储多个副本,从而可以极大降低磁盘空间的开销和带宽需求。根据最新统计数据,重复数据删除技术是最有效的存储技术,在接下来的几年里将会被应用到75%的备份系统和云存储中。
[0003]然而重复数据删除技术与数据加密之间存在着冲突,使用传统的加密方法时,当加密密钥不同时,即使相同的明文,生成的密文也是完全不同的,这使得无法进行重复数据的删除。虽然收敛加密能有效的缓解这一冲突,但也存在泄漏用户隐私的威胁。
[0004]另外对于用户来说云存储提供商也存在安全威胁,一般认为提供商是半可信的,即云服务器会按照预定义的协议和策略工作,不会进行明显的恶意攻击,但是无法保障上传的数据不被云存储提供商非授权查看、扫描和公开展示,因此无法解决客户的安全顾虑。
[0005]收敛加密与对称加密相似,但是加密密钥来自明文的哈希值,加密方法基于XOR操作。同一明文将会映射到同一个加密密钥,经过加密后生成相同的密文,所以这种加密方法被广泛应用到重复数据删除系统中。

【发明内容】

[0006]本发明目的在于提供了一种适用于云存储环境的重复数据删除系统和方法,该方法解决了云存储系统中冗余数据太多,存储空间利用率低的问题,并且能够有效缓解重复数据删除技术与数据加密之间的冲突,以及防止来自云存储提供商的威胁;该方法可以极大提高存储空间利用率、降低带宽占用以及提高用户数据和隐私安全性。
[0007]本发明解决其技术问题所采用的技术方案是:本发明提供了一种安全云存储中基于策略的重复数据删除系统,该系统采用安全代理和随机存储机制,将存储服务与安全服务分离,提高云存储性能和安全;该系统涉及的云存储系统主要由客户端、安全代理和云存储三个组件构成,具体包括如下:
[0008]一、客户端
[0009]文件分块/组装:对需要进行数据块级重复数据检测的文件,进行固定长分块或者基于内容分块;以及数据下载过程中将数据块组装成文件。
[0010]Hash:对文件或者数据块计算Hash值,作为其指纹。目前最常使用的是MD5和SHA-1两种hash方法。
[0011]本地指纹库:用于存储该用户上传的文件和数据块的Hash值。[0012]重复数据删除:根据文件或者数据块的Hash值,比对安全代理指纹库,根据返回的比对结果决定是否进行重复数据删除操作。
[0013]收敛加密:利用文件或者数据块的Hash值作为密钥,对需要上传的数据进行初步的加密操作。
[0014]授权:用户第一次使用时需要向安全代理和云存储服务器注册。上传和下载数据时,需向安全代理和云存储服务器表明其合法身份。
[0015]本发明重复数据删除操作在客户端进行,采取层次化消冗的策略,降低系统开销和提闻消几率
[0016]二、安全代理
[0017]访问控制:只有合法的用户才能查询指纹库和存储索引,上传和下载数据也需要进行身份验证。
[0018]全局指纹库:用于存储全局文件和数据块的Hash指纹,且根据文件类型分类存储,具有比对指纹的功能。
[0019]存储分配:根据客户端上传的指纹信息,将数据块随机分配给各云存储提供商,生成存储方案并返回给客户端。
[0020]存储索引:记录文件和数据块在云服务器中的存储信息,如表1所示。
[0021]
【权利要求】
1.一种适用于云存储的重复数据删除系统,其特征在于,所述系统是由客户端、安全代理、云存储三大组件构成,所述系统采用安全代理和随机存储机制,将存储服务与安全服务分离; 客户端,所述系统的客户端包括: 文件分块/组装:对需要进行数据块级重复数据检测的文件,进行固定长分块或者基于内容分块;以及数据下载过程中将数据块组装成文件; Hash:对文件或者数据块计算Hash值,作为其指纹; 本地指纹库:用于存储该用户上传的文件和数据块的Hash值; 重复数据删除:根据文件或者数据块的Hash值,比对安全代理指纹库,根据返回的比对结果决定是否进行重复数据删除操作; 收敛加密:利用文件或者数据块的Hash值作为密钥,对需要上传的数据进行初步的加密操作; 授权:用户第一次使用时需要向安全代理和云存储服务器注册;上传和下载数据时,需向安全代理和云存储服务器表明其合法身份; 安全代理,所述系统的安全代理包括: 访问控制:只有合法的用户才 能查询指纹库和存储索引,上传和下载数据也需要进行身份验证; 全局指纹库:用于存储全局文件和数据块的Hash指纹,且根据文件类型分类存储,具有比对指纹的功能; 存储分配:根据客户端上传的指纹信息,将数据块随机分配给各云存储提供商,生成存储方案并返回给客户端; 存储索引:记录文件和数据块在云服务器中的存储信息; 云存储,所述系统的云存储包括: 访问控制:云服务器需要对请求服务的客户端和安全代理进行身份验证,通过验证后才能使用请求的服务。
2.根据权利要求1所述的一种适用于云存储的重复数据删除系统,其特征在于:所述系统的重复数据删除操作在客户端进行,采取层次化消冗的策略。
3.根据权利要求1所述的一种适用于云存储的重复数据删除系统,其特征在于:所述系统的用户上传数据在云存储中的存储位置由安全代理生成的随机存储方案确定,且均匀分布于不同云存储提供商。
4.一种适用于云存储的重复数据删除系统的方法,其特征在于,所述方法包括如下步骤: 步骤1:数据上传阶段; 1)进行文件级的重复数据检测:①计算文件Hash值,并发送至安全代理;②安全代理比对指纹库,返回比对结果给客户端,若文件已存在且副本数大于阀值F,则删除该文件同时将存储位置写入该文件存储索引的Location值;否则判断文件大小,若小于阀值S则进行收敛加密,若大于阀值S则进行数据块级重复数据检测; 2)数据块级重复数据检测:①首先将文件进行分块,计算每个数据块的Hash值,并发送至安全代理;②安全代理比对指纹库,若已存在且副本数大于阀值F,则删除该数据块,并生成存储指针,否则进行收敛加密; 3)安全代理生成随机存储方案,即对总数为N的数据块,随机抽取N/M个数据块存放至云存储服务器1,再随机抽取N/M个存至云存储服务器2,以此类推,然后将该方案发送给客户端,同时更新全局指纹库和文件存储索引库; 4)客户端对需上传的每个数据块Di计算MD5校验值Ci,然后根据随机存储方案将数据块Di和相应校验值Ci进行装箱压缩后上传至相应云存储服务器; 5)各云存储服务器解压缩,并重新计算得数据块Di的校验值Ci’,如果Ci= Ci’,则进行数据存储以及基础的数据管理和存储优化,否则返回校验不通过信息给客户端,重新上传该数据块; 步骤2:数据下载阶段; 1)客户端向安全代理发送请求下载某个文件; 2)安全代理首先验证请求合法性,然后根据请求下载的文件ID搜索存储索引库,获取文件每个数据块的存储信息A{file_ID, FileName, Location, Chunks,…},并返回给客户端; 3)客户端根据返回的存储信息Α,向对应的云存储服务器发出数据块下载请求; 4)各云存储服务器验证请求合法性后,返回请求数据块Chunks{chunkl, chunk2,chunk3,...}给客户端; 5)客户端接受 到Chunks后,搜索指纹库,获取各数据块的指纹Fingerprints,解密得到数据块明文后,交给文件组装模块,还原出原文件。
5.根据权利要求4所述的一种适用于云存储的重复数据删除系统的方法,其特征在于:所述方法的各数据块指纹Fingerprints为fgl, fg2, fg3,…。
【文档编号】H04L29/08GK103944988SQ201410164634
【公开日】2014年7月23日 申请日期:2014年4月22日 优先权日:2014年4月22日
【发明者】孙国梓, 王振宇, 杨一涛, 何利文 申请人:南京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1