一种基于用户感知的高效安全数据去重方法及系统的制作方法_4

文档序号:9202520阅读:来源:国知局
服 务器协助的基于哈希的收敛加密,产生文件级密钥KF和文件指纹TF,并将文件指纹TF发送 到存储服务提供商; (2. 2)存储服务提供商接收用户发送的文件指纹TF,在文件指纹索引中查找文件指纹 1是否存在,并将查询结果返回用户; (2. 3)用户接收查询结果;若查询结果显示文件指纹TF存在,则用户更新文件元数据 信息,备份阶段结束;若查询结果显示文件指纹TF不存在,则用户将文件F切分成细粒度的 数据块,并在用户内部执行块级去重; (2.4)在用户内部的块级去重中,对于每个数据块&采用用户协助的收敛加密算法获 得数据块&的加密密钥和数据块的指纹&,将所有数据块的指纹{从}发送到存储服 务提供商端,并进行重复数据检测,其中i= 1,2,...n,,n是数据块数目; (2. 5)存储服务提供商接收用户发送的数据块指纹{TB,j,并在用户的块级指纹索引表 中对所有的数据块指纹进行查询;对于每一个数据块丨B,),将所有的数据块的查询结 果写入到标识信息数组中,并将数据块指纹是否存在的标识信息数组返回用户; (2. 6)用户接收存储服务提供商发送的标识信息数组;针对每个数据块&,若标识信息 数组显示数据块指纹不存在,用户将数据块的密文发送到存储服务提供商;用户生成相 应的文件谱,并按顺序将数据块的指纹写入到文件谱中用于文件恢复; (2. 7)若标识信息数组显示数据块指纹存在,则用户更新文件谱和元数据信息;用户 使用秘密共享将文件级密钥KF切分成分片级密钥{S」},其中j= 1,2,. . .,w,w是分布式密 钥服务器的数目; (3) 恢复阶段,其包括以下步骤: (3. 1)用户要恢复文件F时,将恢复文件请求和文件名发送到存储服务提供商,存储服 务提供商接收用户的文件恢复请求,并验证用户的身份;若身份验证失败,存储服务提供商 将拒绝用户的请求,恢复过程结束; (3. 2)若身份验证通过,存储服务提供商读取文件谱,并将文件谱以及文件对应的所有 数据块密文{CB,}发送给用户;用户接收文件谱和所有数据块的密文{CB,}; (3. 3)用户向t个不同的密钥服务器来获取分片级的密钥Sj;每个密钥服务器验证用 户的身份,密钥服务器读取分片级密钥I,并将它们发送回该用户;用户使用秘密共享,根 据t个分片级密钥恢复文件F的文件级密钥Kf; (3. 4)用户获得文件谱和文件级密钥Kf;用户使用文件级密钥KF根据对称加密算法来 解密每个数据的块级密钥夂A,并使用对应的数据块块级密钥来解密每个数据块Bi;最 后按照文件谱的顺序来依次排列数据块并恢复文件F。2. 如权利要求1所述的方法,其特征在于,所述步骤(2. 1)具体为:用户选择随机 数rGN并计算r的逆r'r与f1满足r?r1,计算文件哈希HF的盲化信息x= HF ?F(modN),用户将x发送到分布式密钥服务器;分布式密钥服务器接收x,计算签名信 息y=Xd(modN),分布式密钥服务器将y返回用户;用户接收到y并消除盲化信息得到中 间变量z=y?r4(modN);用户验证HF=zd(modN),若满足条件z就是文件F的文件级密 钥KF,否则密钥生成失败,用户计算文件级密钥的哈希得到文件指纹TF,TF=Hash(P,KF)。3. 如权利要求1或2所述的方法,其特征在于,所述步骤(2. 4)具体包括: (2.4. 1)用户使用分块算法将文件F切分成多个数据块{BJ; (2. 4. 2)对于每个数据块&,用户使用用户自身协助的收敛加密方案产生块级密钥 和数据块指纹&; (2. 4. 3)对每个数据块I,用户以其块级密钥为加密密钥采用对称加密算法来加密 数据块&生成密文;然后对密文计算哈希得到数据块的指纹& ; (2. 4. 4)用户将产生的数据块指纹{&}发送到存储服务提供商,进行重复数据查询。4. 如权利要求1或2所述的方法,其特征在于,所述步骤(2.4)中:所述Hash函 数,HMAC函数和Encry函数采用SHA-1,或者SHA-256,或者HMAC-SHA1,或者HMAC-SHA256, 或者AES。5. 如权利要求3所述的方法,其特征在于,所述步骤(2.4. 1)中:所述分块算法是定长 分块或者基于内容的分块。6. 如权利要求3所述的方法,其特征在于,所述步骤(2.4.2)具体包括:用户对数据块 Bi计算数据块Bi的哈希值〃《,,其哈希函数采用SHA-1或SHA-256 ;用户产生每个数据块& 的密钥,HMAC采用HMAC-SHA1或HMAC-SHA256,其中salt是由 用户自己保存的秘密信息。7. 如权利要求1或2所述的方法,其特征在于,所述步骤(2.5)中:用户的块级指纹索 引表通过哈希表或键值存储来实现。8. 如权利要求1或2所述的方法,其特征在于,所述步骤(2. 6)中:文件谱包含文件的 指纹、文件大小,并按顺序记录所有数据块的指纹和数据块大小。9. 如权利要求1或2所述的方法,其特征在于,所述步骤(2.7)具体包括:当所有数据 块查询结果之后,用户通过秘密共享将文件级密钥KF切分成w个不同的分片级密钥{S」}, 并将分片Sj发送到w个不同的密钥服务器中存储,其中j= 1,2,. . .,w,w是分布式密钥服 务器的数目。10. -种基于用户感知的高效安全数据去重系统,其特征在于,所述系统包括客户端、 存储服务提供商和分布式密钥服务器,其中: 所述客户端包括跨用户文件级去重模块、用户内部块级去重模块以及多密钥管理模 块,其中, 所述跨用户文件级去重模块包括文件级密钥模块和文件指纹模块,所述文件级密钥模 块用于在用户输入备份文件时计算文件级密钥;所述文件指纹模块用于根据所述文件级密 钥计算哈希值得到文件指纹; 所述用户内部块级去重模块包括分块模块、块级密钥模块、块级指纹模块以及数据传 输模块,所述分块模块用于在文件不重复时,将文件切分成多个数据块;所述块级密钥模块 用于对每个数据块产生块级密钥,根据块级密钥加密数据块得到数据块密文;所述块级指 纹模块用于对所述数据块密文计算哈希值得到块级指纹;所述数据传输模块用于在进行块 级重复数据检测之后将非重复数据块密文发送到存储服务提供商储存; 所述多级密钥管理模块包括密钥加密模块和秘密共享模块,所述密钥加密模块用于根 据文件级密钥加密块级密钥,并将块级密钥的密文写入文件谱中;对于非重复的文件,所 述秘密共享模块用于将文件级密钥切分成多个分片级密钥并发送到分布式密钥服务器储 存; 所述存储服务提供商包括跨用户文件指纹索引表模块、用户内部块级指纹索引表模 块、元数据存储模块、文件谱存储模块和数据块存储模块,其中所述跨用户文件指纹索引模 块用于生成并维护跨用户文件指纹索引表,接收客户端传输的文件指纹并在跨用户文件指 纹索引表中查询,若文件指纹存在,则返回文件指纹存在的查询结果;否则,将文件指纹插 入到文件指纹索引表,并返回文件指纹不存在的查询结果;所述用户内部块级指纹索引表 模块用于生成并维护用户内部块级指纹索引表,接受客户端的块级指纹并在用户内部块级 指纹索引表中查询,若块级指纹存在,则返回块级指纹存在的查询结果;否则,将块级指纹 插入到块级指纹索引表,并返回块级指纹不存在的查询结果;所述元数据存储模块用于存 储并管理文件元数据信息;所述文件谱存储模块用于存储并管理文件谱信息;所述数据块 存储模块用于存储数据块密文; 所述分布式密钥服务器包括密钥服务器协助文件级密钥模块和分片级密钥存储模块, 其中,所述密钥服务器协助文件级密钥模块用于接收客户端传输的信息,对该信息模进行 指数运算并返回客户端,生成文件级密钥;分片级密钥存储模块用于接收客户端发送的分 片级密钥,存储并管理分片级密钥。
【专利摘要】本发明提供了一种基于用户感知的高效安全数据去重方法,包括:客户端采用密钥服务器协助的基于哈希的收敛加密进行跨用户文件级数据去重;若文件不重复采用用户协助的收敛加密进行用户内部的块级去重;采用多级密钥管理,使用文件级密钥加密块级密钥,使用秘密共享将文件级密钥切分成分片级密钥存储到分布式密钥服务器。本发明还提供了一种基于用户感知的高效安全数据去重系统。本发明通过在文件级采用密钥服务器协助的基于哈希的收敛加密和在块级采用用户协助的收敛加密添加随机信息,使用户文件级和块级密钥随机化,能有效地抵抗敌手的暴力破解攻击,保证用户数据机密性和安全性;采用多级密钥管理方案保证密钥安全性,减少密钥空间开销。
【IPC分类】H04L9/08, G06F17/30, H04L29/06
【公开号】CN104917609
【申请号】CN201510257654
【发明人】冯丹, 周玉坤, 夏文, 付忞, 黄方亭, 张宇成, 李春光
【申请人】华中科技大学
【公开日】2015年9月16日
【申请日】2015年5月19日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1