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

文档序号:9202520阅读:198来源:国知局
一种基于用户感知的高效安全数据去重方法及系统的制作方法
【技术领域】
[0001] 本发明属于计算机存储领域,更具体地,设及一种基于用户感知的高效安全数据 去重方法及系统。
【背景技术】
[0002] 近年来,随着云计算的快速发展,越来越多的用户和企业将他们的数据备份到云 存储。IDC预计,到2020年,全球电子数据的规模将超出预期,达到44ZB。最近大量的研 究和调查结果显示,存储系统,特别是备份系统中不同用户之间和用户内部都存在大量的 重复数据。在线数字内容的增长导致了硬件、人力维护在内的存储系统成本的增加,减少传 输、存储管理过程中的数据量变得极其重要。云备份系统通常存储和操作同一数据的若干 副本,该些冗余数据占用了大量的存储空间。数据去重技术是一种通过大规模消除冗余数 据,降低存储成本节约传输带宽的重要技术,因此已经逐渐被诸如,Dropbox,SpiderOak,和 Mozy等云存储和云备份提供商使用。总的来说,数据去重技术通过只保存数据的一个物理 版本,其他的重复数据通过索引来指向的方式消除冗余数据。数据去重技术可W在不同的 粒度实现:一个文件(如;文件级去重),或者细粒度的数据块(如;块级去重)。细粒度的 块级去重应用更加广泛,因为它能使系统更加灵活和高效。
[0003] 为了保护数据的机密性,用户通常会使用它们自己的密钥加密数据使得数据随机 化,该将导致无法进行数据去重。具体而言,相同的数据被用户采用不同的密钥加密会生成 不同的密文,该样就不存在重复数据。在不同的用户之间共享密钥开销很大且存在信息泄 露的隐患,该是因为如果其中一个用户的密钥泄露,就会导致其他用户的数据泄露。因此, 在云备份系统中,如何保证数据的安全性是跨用户细粒度的数据去重面临的主要问题。现 有前言的安全数据去重方法是使用确定化的加密,称为收敛加密。收敛加密使用数据的哈 希值作为密钥来加密数据。相同的数据会生成相同的密文,使得我们可W在密文上做数据 去重。
[0004] 然而,收敛加密也带来了新的挑战和问题。第一,在基于细粒度数据去重去重的 方案中,收敛加密要么遭受到暴力破解攻击,或者会产生巨大的计算开销。具体而言,由 于加密方式的确定化和密钥的确定化问题(密钥来自数据内容),收敛加密遭受到暴力破 解攻击。暴力破解攻击是,如果敌手知道用户数据M的密文C来自某个特定的集合S= (Ml,…,M。}(集合S的大小为n)。敌手就可W通过线下加密的方式从集合S中恢复明文M。 具体而言,对于集合S中的每一个元素Mi,使用收敛加密方案对Mi生成密文。,并对比验证 。是否等于密文C。为了解决暴力破解攻击的问题,Bellare等人提出了DupLESS,DupLESS 的密钥密钥服务器协助的基于内容的密钥使得密钥随机化,密文也会随机化来抵抗暴力破 解攻击。且用户通过RSA-0PRF协议连接密钥服务器。DupLESS方式只适合文件级去重,对 于块级去重存在巨大的计算开销。第二,前沿的收敛密钥管理方案存在很多的局限性,包括 巨大的密钥空间开销和单点故障。在跨用户细粒度的数据去重中,由于不同用户之间存在 大量的共享数据块,为保证每个用户的数据恢复,每个用户需保存数据块的密钥,该导致密 钥的存储空间随共享用户数和共享的数据块数量线性增长。同时,为保证密钥的安全性,用 户通常会使用自己的私钥加密数据块的密钥,使得用户私钥存在单点故障问题。

【发明内容】

[0005] 针对现有技术的W上缺陷或改进需求,本发明提供了一种基于用户感知的多级密 钥管理的细粒度高效安全数据去重方法,其目的在于保证在用户数据机密性,安全性和数 据去重压缩率的前提下,利用重复数据在不同用户,在文件和数据块的分布来减少安全措 施带来的计算和时间开销,提高云备份系统性能。同时,我们的方案和系统也保证密钥的 安全性和可靠性,减少密钥的存储空间开销。
[0006] 为实现上述目的,按照本发明的一个方面,提供了一种基于用户感知的高效安全 数据去重方法,包括如下步骤:
[0007] (1)准备阶段,系统初始化参数,包括初始化公共安全参数P、化amir秘密共享的 参数(W,t),生成密钥服务器的RSA公钥(N,e)、私钥(N,d),初始化哈希函数化sh,带密钥 的哈希函数HMAC和加密函数化cry,并且每个用户产生自己的安全秘密salt,密钥服务器 获得RSA私钥(N,d),将公钥饥e)分发给所有用户;
[000引 似备份阶段,包括W下步骤:
[0009] (2. 1)用户输入文件F,产生文件哈希电二化sh化F),用户对文件哈希HF采用密 钥服务器协助的基于哈希的收敛加密,产生文件级密钥Kp和文件指纹TP,并将文件指纹Tp 发送到存储服务提供商;
[0010] (2. 2)存储服务提供商接收用户发送的文件指纹Tp,在文件指纹索引中查找文件 指纹Tp是否存在,并将查询结果返回用户;
[OCm] (2.3)用户接收查询结果;若查询结果显示文件指纹Tp存在,则用户更新文件元 数据信息,备份阶段结束;若查询结果显示不存在,则用户将文件F切分成细粒度的数据 块,并在用户内部执行块级去重;
[0012] (2.4)在用户内部的块级去重中,对于每个数据块町采用用户协助的收敛加密算 法获得数据块町的加密密钥Kg和数据块的指纹写,,将所有数据块的指纹{马,)发送到存储 服务提供商端进行重复数据检测,其中z' =l,2,,u.,n是数据块数目;
[001引 (2. 5)存储服务提供商接收用户发送的数据块指纹{Tb,},并在用户的块级指纹索 引表中对所有的数据块指纹{Tb,}进行查询;对于每一个数据块巧J,将所有的数据块的查 询结果写入到标识信息数组中,并将数据块指纹是否存在的标识信息数组返回用户;
[0014] (2. 6)用户接收存储服务提供商发送的标识信息数组;针对每一个数据块町,若标 识信息数组显示数据块指纹不存在,用户将数据块的密文Cg,.发送到存储服务提供商;用户 生成相应的文件谱并按顺序将数据块的指纹写入到文件谱中用于文件恢复;
[0015] (2. 7)若标识信息数组显示数据块指纹存在,则用户更新文件谱和元数据信息; 用户使用秘密共享将文件级密钥Kp切分成分片级密钥怯,其中j= 1,2,. . .,W,W是分布 式密钥服务器的数目;
[0016] (3)恢复阶段,其包括W下步骤:
[0017] (3. 1)用户要恢复文件F时,将恢复文件请求和文件名发送到存储服务提供商,存 储服务提供商接收用户的文件恢复请求,并验证用户的身份;若身份验证失败,存储服务提 供商拒绝用户的请求,恢复过程结束;
[0018] (3. 2)若身份验证通过,存储服务提供商读取文件谱,并将文件谱W及文件对应的 所有数据块密文{Cb, }发送给用户;用户接收文件谱和所有数据块的密文{Cb,h
[0019] (3. 3)用户向t个不同的密钥服务器来获取分片级的密钥Sj.;每个密钥服务器验 证用户的身份,密钥服务器读取分片级密钥Sj.,并将它们发送回该用户;用户使用秘密共 享,根据t个分片级密钥恢复文件F的文件级密钥Kp;其中j= 1,2,. . .,W,W为分布式密 钥服务器数目。
[0020] (3. 4)用户获得文件谱和文件级密钥Kp;用户使用文件级密钥Kp根据对称加密 算法来解密每个数据的块级密钥Kg.,并使用对应的数据块块级密钥Ks,来解密每个数据块 Bi;最后按照文件谱的顺序来依次排列数据块并恢复文件F。
[0021] 按照本发明的另一方面,还提供了一种基于用户感知的高效安全数据去重系统, 包括;客户端、存储服务提供商和分布式密钥服务器,其中:
[0022] 所述客户端包括跨用户文件级去重模块、用户内部块级去重模块W及多密钥管理 模块,其中,
[0023] 所述跨用户文件级去重模块包括文件级密钥模块和文件指纹模块,所述文件级密 钥模块用于在用户输入备份文件时计算文件级密钥;所述文件指纹模块用于根据所述文件 级密钥计算哈希值得到文件指纹;
[0024] 所述用户内部块级去重模块包括分块模块、块级密钥模块、块级指纹模块W及数 据传输模块,所述分块模块用于在文件不重复时,将文件切分成多个数据块;所述块级密钥 模块用于对每个数据块产生块级密钥,根据块级密钥加密数据块得到数据块密文;所述块 级指纹模块用于对所述数据块密文计算哈希值得到块级指纹;所述数据传输模块用于在进 行块级重复数据检测之后将非重复数据块密文发送到存储服务提供商储存;
[0025] 所述多级密钥管理模块包括密钥加密模块和秘密共享模块,所述密钥加密模块用 于根据文件级密钥加密块级密钥,并将块级密钥的密文写入文件谱中;对于非重复的文件, 所述秘密共享模块用于将文件级密钥切分成多
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1