CN104917609A - 一种基于用户感知的高效安全数据去重方法及系统 - Google Patents

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

Info

Publication number
CN104917609A
CN104917609A CN201510257654.7A CN201510257654A CN104917609A CN 104917609 A CN104917609 A CN 104917609A CN 201510257654 A CN201510257654 A CN 201510257654A CN 104917609 A CN104917609 A CN 104917609A
Authority
CN
China
Prior art keywords
file
user
level
key
fingerprint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510257654.7A
Other languages
English (en)
Other versions
CN104917609B (zh
Inventor
冯丹
周玉坤
夏文
付忞
黄方亭
张宇成
李春光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201510257654.7A priority Critical patent/CN104917609B/zh
Publication of CN104917609A publication Critical patent/CN104917609A/zh
Application granted granted Critical
Publication of CN104917609B publication Critical patent/CN104917609B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于用户感知的高效安全数据去重方法,包括:客户端采用密钥服务器协助的基于哈希的收敛加密进行跨用户文件级数据去重;若文件不重复采用用户协助的收敛加密进行用户内部的块级去重;采用多级密钥管理,使用文件级密钥加密块级密钥,使用秘密共享将文件级密钥切分成分片级密钥存储到分布式密钥服务器。本发明还提供了一种基于用户感知的高效安全数据去重系统。本发明通过在文件级采用密钥服务器协助的基于哈希的收敛加密和在块级采用用户协助的收敛加密添加随机信息,使用户文件级和块级密钥随机化,能有效地抵抗敌手的暴力破解攻击,保证用户数据机密性和安全性;采用多级密钥管理方案保证密钥安全性,减少密钥空间开销。

Description

一种基于用户感知的高效安全数据去重方法及系统
技术领域
本发明属于计算机存储领域,更具体地,涉及一种基于用户感知的高效安全数据去重方法及系统。
背景技术
近年来,随着云计算的快速发展,越来越多的用户和企业将他们的数据备份到云存储。IDC预计,到2020年,全球电子数据的规模将超出预期,达到44ZB。最近大量的研究和调查结果显示,存储系统,特别是备份系统中不同用户之间和用户内部都存在大量的重复数据。在线数字内容的增长导致了硬件、人力维护在内的存储系统成本的增加,减少传输、存储管理过程中的数据量变得极其重要。云备份系统通常存储和操作同一数据的若干副本,这些冗余数据占用了大量的存储空间。数据去重技术是一种通过大规模消除冗余数据,降低存储成本节约传输带宽的重要技术,因此已经逐渐被诸如,Dropbox,SpiderOak,和Mozy等云存储和云备份提供商使用。总的来说,数据去重技术通过只保存数据的一个物理版本,其他的重复数据通过索引来指向的方式消除冗余数据。数据去重技术可以在不同的粒度实现:一个文件(如:文件级去重),或者细粒度的数据块(如;块级去重)。细粒度的块级去重应用更加广泛,因为它能使系统更加灵活和高效。
为了保护数据的机密性,用户通常会使用它们自己的密钥加密数据使得数据随机化,这将导致无法进行数据去重。具体而言,相同的数据被用户采用不同的密钥加密会生成不同的密文,这样就不存在重复数据。在不同的用户之间共享密钥开销很大且存在信息泄露的隐患,这是因为如果其中一个用户的密钥泄露,就会导致其他用户的数据泄露。因此,在云备份 系统中,如何保证数据的安全性是跨用户细粒度的数据去重面临的主要问题。现有前言的安全数据去重方法是使用确定化的加密,称为收敛加密。收敛加密使用数据的哈希值作为密钥来加密数据。相同的数据会生成相同的密文,使得我们可以在密文上做数据去重。
然而,收敛加密也带来了新的挑战和问题。第一,在基于细粒度数据去重去重的方案中,收敛加密要么遭受到暴力破解攻击,或者会产生巨大的计算开销。具体而言,由于加密方式的确定化和密钥的确定化问题(密钥来自数据内容),收敛加密遭受到暴力破解攻击。暴力破解攻击是,如果敌手知道用户数据M的密文C来自某个特定的集合S={M1,…,Mn}(集合S的大小为n)。敌手就可以通过线下加密的方式从集合S中恢复明文M。具体而言,对于集合S中的每一个元素Mi,使用收敛加密方案对Mi生成密文Ci,并对比验证Ci是否等于密文C。为了解决暴力破解攻击的问题,Bellare等人提出了DupLESS,DupLESS的密钥密钥服务器协助的基于内容的密钥使得密钥随机化,密文也会随机化来抵抗暴力破解攻击。且用户通过RSA-OPRF协议连接密钥服务器。DupLESS方式只适合文件级去重,对于块级去重存在巨大的计算开销。第二,前沿的收敛密钥管理方案存在很多的局限性,包括巨大的密钥空间开销和单点故障。在跨用户细粒度的数据去重中,由于不同用户之间存在大量的共享数据块,为保证每个用户的数据恢复,每个用户需保存数据块的密钥,这导致密钥的存储空间随共享用户数和共享的数据块数量线性增长。同时,为保证密钥的安全性,用户通常会使用自己的私钥加密数据块的密钥,使得用户私钥存在单点故障问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于用户感知的多级密钥管理的细粒度高效安全数据去重方法,其目的在于保证在用户数据机密性,安全性和数据去重压缩率的前提下,利用重复数据在不同用户,在文件和数据块的分布来减少安全措施带来的计算和时间开销,提 高云备份系统性能。同时,我们的方案和系统也保证密钥的安全性和可靠性,减少密钥的存储空间开销。
为实现上述目的,按照本发明的一个方面,提供了一种基于用户感知的高效安全数据去重方法,包括如下步骤:
(1)准备阶段,系统初始化参数,包括初始化公共安全参数P、Shamir秘密共享的参数(w,t),生成密钥服务器的RSA公钥(N,e)、私钥(N,d),初始化哈希函数Hash,带密钥的哈希函数HMAC和加密函数Encry,并且每个用户产生自己的安全秘密salt,密钥服务器获得RSA私钥(N,d),将公钥(N,e)分发给所有用户;
(2)备份阶段,包括以下步骤:
(2.1)用户输入文件F,产生文件哈希HF=Hash(P,F),用户对文件哈希HF采用密钥服务器协助的基于哈希的收敛加密,产生文件级密钥KF和文件指纹TF,并将文件指纹TF发送到存储服务提供商;
(2.2)存储服务提供商接收用户发送的文件指纹TF,在文件指纹索引中查找文件指纹TF是否存在,并将查询结果返回用户;
(2.3)用户接收查询结果;若查询结果显示文件指纹TF存在,则用户更新文件元数据信息,备份阶段结束;若查询结果显示不存在,则用户将文件F切分成细粒度的数据块,并在用户内部执行块级去重;
(2.4)在用户内部的块级去重中,对于每个数据块Bi采用用户协助的收敛加密算法获得数据块Bi的加密密钥和数据块的指纹将所有数据块的指纹发送到存储服务提供商端进行重复数据检测,其中 n是数据块数目;
(2.5)存储服务提供商接收用户发送的数据块指纹并在用户的块级指纹索引表中对所有的数据块指纹进行查询;对于每一个数据块{Bi},将所有的数据块的查询结果写入到标识信息数组中,并将数据块指纹 是否存在的标识信息数组返回用户;
(2.6)用户接收存储服务提供商发送的标识信息数组;针对每一个数据块Bi,若标识信息数组显示数据块指纹不存在,用户将数据块的密文发送到存储服务提供商;用户生成相应的文件谱并按顺序将数据块的指纹写入到文件谱中用于文件恢复;
(2.7)若标识信息数组显示数据块指纹存在,则用户更新文件谱和元数据信息;用户使用秘密共享将文件级密钥KF切分成分片级密钥{Sj},其中j=1,2,...,w,w是分布式密钥服务器的数目;
(3)恢复阶段,其包括以下步骤:
(3.1)用户要恢复文件F时,将恢复文件请求和文件名发送到存储服务提供商,存储服务提供商接收用户的文件恢复请求,并验证用户的身份;若身份验证失败,存储服务提供商拒绝用户的请求,恢复过程结束;
(3.2)若身份验证通过,存储服务提供商读取文件谱,并将文件谱以及文件对应的所有数据块密文发送给用户;用户接收文件谱和所有数据块的密文
(3.3)用户向t个不同的密钥服务器来获取分片级的密钥Sj;每个密钥服务器验证用户的身份,密钥服务器读取分片级密钥Sj,并将它们发送回该用户;用户使用秘密共享,根据t个分片级密钥恢复文件F的文件级密钥KF;其中j=1,2,...,w,w为分布式密钥服务器数目。
(3.4)用户获得文件谱和文件级密钥KF;用户使用文件级密钥KF根据对称加密算法来解密每个数据的块级密钥并使用对应的数据块块级密钥来解密每个数据块Bi;最后按照文件谱的顺序来依次排列数据块并恢复文件F。
按照本发明的另一方面,还提供了一种基于用户感知的高效安全数据去重系统,包括:客户端、存储服务提供商和分布式密钥服务器,其中:
所述客户端包括跨用户文件级去重模块、用户内部块级去重模块以及多密钥管理模块,其中,
所述跨用户文件级去重模块包括文件级密钥模块和文件指纹模块,所述文件级密钥模块用于在用户输入备份文件时计算文件级密钥;所述文件指纹模块用于根据所述文件级密钥计算哈希值得到文件指纹;
所述用户内部块级去重模块包括分块模块、块级密钥模块、块级指纹模块以及数据传输模块,所述分块模块用于在文件不重复时,将文件切分成多个数据块;所述块级密钥模块用于对每个数据块产生块级密钥,根据块级密钥加密数据块得到数据块密文;所述块级指纹模块用于对所述数据块密文计算哈希值得到块级指纹;所述数据传输模块用于在进行块级重复数据检测之后将非重复数据块密文发送到存储服务提供商储存;
所述多级密钥管理模块包括密钥加密模块和秘密共享模块,所述密钥加密模块用于根据文件级密钥加密块级密钥,并将块级密钥的密文写入文件谱中;对于非重复的文件,所述秘密共享模块用于将文件级密钥切分成多个分片级密钥并发送到分布式密钥服务器储存;
所述存储服务提供商包括跨用户文件指纹索引表模块、用户内部块级指纹索引表模块、元数据存储模块、文件谱存储模块和数据块存储模块,其中所述跨用户文件指纹索引模块用于生成并维护跨用户文件指纹索引表,接收客户端传输的文件指纹并在跨用户文件指纹索引表中查询,若文件指纹存在,则返回文件指纹存在的查询结果;否则,将文件指纹插入到文件指纹索引表,并返回文件指纹不存在的查询结果;所述用户内部块级指纹索引表模块用于生成并维护用户内部块级指纹索引表,接受客户端的块级指纹并在用户内部块级指纹索引表中查询,若块级指纹存在,则返回块级指纹存在的查询结果;否则,将块级指纹插入到块级指纹索引表,并返回块级指纹不存在的查询结果;所述元数据存储模块用于存储并管理文件元数据信息;所述文件谱存储模块用于存储并管理文件谱信息;所述数 据块存储模块用于存储数据块密文;
所述分布式密钥服务器包括密钥服务器协助文件级密钥模块和分片级密钥存储模块,其中,所述密钥服务器协助文件级密钥模块用于接收客户端传输的信息,对该信息模进行指数运算并返回客户端,生成文件级密钥;分片级密钥存储模块用于接收客户端发送的分片级密钥,存储并管理分片级密钥。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、本发明基于用户感知的安全数据去重方法,通过在文件级采用密钥服务器协助的基于哈希的收敛加密和块级的采用用户协助的收敛加密方案添加随机信息,使得用户的文件级和块级密钥随机化,能够有效地抵抗敌手的暴力破解攻击,保证用户数据的机密性和安全性。
2、本发明基于用户感知的高效安全数据去重方法,在跨用户的文件级采用安全的密钥和指纹生成方式,而在用户内部的块级去重中采用更加高效的块级密钥和指纹生成方式,能有效地减少在细粒度的安全数据去重方案中的计算开销,减少备份时间。
3、本发明基于用户感知的高效安全数据去重方法,构建了细粒度的多级密钥管理方案,该密钥管理方案采用文件级密钥来加密块级密钥,能够有效地保证块级密钥的安全性。同时采用秘密共享将文件级密钥切分成分片级密钥,并分发到多个密钥服务器存储,能够有效地保证文件级密钥的安全性,防止单点故障问题,保证文件级密钥的可靠性。
4、本发明基于用户感知的高效安全数据去重方法,提供了存储空间开销低的多级密钥管理方案,该方案通过文件级密钥来管理块级密钥,能够有效地防止密钥存储空间随共享用户数和数据块数目的线性增长。
5、本发明提供了一种包括客户端、存储服务提供商以及分布式密钥服务器构成的基于用户感知的高效安全数据去重系统,用户通过客户端向存 储服务提供商提交数据备份/恢复请求;客户端通过分布式密钥服务器协助处理文件级密钥,生成文件指纹;用户通过客户端向存储服务提供商发送文件指纹进行文件级重复数据检测;若文件不重复,在客户端将文件切分成数据块并计算数据块密钥和指纹,将数据块指纹发送到存储服务提供商进行块级重复数据检测;用户通过客户端向存储服务提供商传输元数据、文件谱和非重复数据块密文;用户通过客户端将文件级密钥切分成分片级密钥传输到分布式密钥服务器储存。本系统通过在文件级采用密钥服务器协助的基于哈希的收敛加密和在块级采用用户协助的收敛加密添加随机信息,使用户文件级和块级密钥随机化,能有效地抵抗敌手的暴力破解攻击,保证用户数据机密性和安全性。采用多级密钥管理方案保证密钥安全性,减少密钥空间开销。
附图说明
图1是本发明基于用户感知的高效安全数据去重系统架构图;
图2是本发明基于用户感知的高效安全数据去重方法的系统备份流程图;
图3是本发明的基于用户感知的高效安全数据去重方法的原理图;其中:
图3(a)是跨用户文件级的密钥服务器协助的基于哈希的收敛加密算法原理图;
图3(b)是用户内部块级的用户协助的收敛加密算法原理图;
图4是本发明基于用户感知的安全数据去重系统的多级密钥管理方案原理图;
图5是本发明基于用户感知的高效安全数据去重的系统恢复流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体 实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示,为本发明基于用户感知的高效安全数据去重系统的架构图。本发明的系统包含3个组成部分:用户(客户端)、存储服务提供商和分布式密钥服务器,它们之间通过企业级网络连接,采用安全的网络传输协议保障数据的机密性和完整性。用户(客户端)向存储服务提供商发起数据备份/恢复请求,存储服务提供商提供文件级和块级重复数据检测,元数据、数据块和块级密钥存储,分布式密钥服务器协助用户处理文件级密钥并存储分片级密钥。用户连接存储服务提供商和分布式密钥服务器需要进行身份验证,其存储的数据和用户操作需要遵守访问控制策略。
具体而言,本系统包括客户端、存储服务提供商和分布式密钥服务器,其中,客户端和存储服务提供商、分布式密钥服务器之间的交互采用安全网络传输协议;用户访问存储服务提供商和分布式密钥服务器需要进行身份验证;所有存储在存储服务提供商和分布式密钥服务器的数据和密钥实行访问控制策略保证数据隐私性。其中,安全的网络传输协议采用安全套接层协议(Secure Socket Layer,SSL)或者传输层安全协议(Transport Layer Security,TLS)。身份认证技术采用基于密码和证书的身份认证,其访问控制策略采用基于角色的访问控制(Role-Based Access Control,RBAC)。
客户端与存储服务提供商之间,客户端与分布式密钥服务器之间的交互协议如下:(1)用户通过客户端向存储服务提供商提交数据备份/恢复请求;(2)客户端通过分布式密钥服务器协助处理文件级密钥,生成文件指纹;(3)用户通过客户端向存储服务提供商发送文件指纹进行文件级重复数据检测;(4)若文件不重复,在客户端将文件切分成数据块并计算数据块密钥和指纹,将数据块指纹发送到存储服务提供商进行块级重复数据检测;(5)用户通过客户端向存储服务提供商传输元数据、文件谱和非重 复数据块密文;(6)用户通过客户端将文件级密钥切分成分片级米哟啊并传输到分布式密钥服务器储存。
其中客户端包括跨用户文件级去重模块,用户内部块级去重模块以及多密钥管理模块,其中,
跨用户文件级去重模块包括文件级密钥模块和文件指纹模块,当用户输入备份文件时,用户首先使用文件级密钥模块计算文件级密钥根据文件级密钥通过文件指纹模块对文件级密钥计算哈希值得到文件指纹
用户内部块级去重模块包括分块模块,块级密钥模块,块级指纹模块,数据传输模块。当文件不重复时,用户使用分块模块将文件切分成多个数据块,对每个数据块使用块级密钥模块产生块级密钥,根据块级密钥加密数据块得到密文,利用块级指纹模块对数据块密文计算哈希值得到块级指纹;在进行块级重复数据检测之后,使用数据传输模块将非重复数据块密文发送到存储服务提供商储存。
多级密钥管理模块包括密钥加密模块和秘密共享模块。用户在客户端根据文件级密钥利用密钥加密模块加密块级密钥,并将块级密钥的密文写入文件谱中。对于非重复的文件,用户在客户端使用秘密共享模块将文件级密钥切分成多个分片级密钥并发送到分布式密钥服务器储存。
存储服务提供商包括跨用户文件指纹索引表模块、用户内部块级指纹索引表模块、元数据存储模块、文件谱(密钥)存储模块和数据块存储模块,其中跨用户文件指纹索引模块生成并维护跨用户文件指纹索引表,接收客户端传输的文件指纹并在跨用户文件指纹索引表中查询,若文件指纹存在,则返回文件指纹存在的查询结果;否则,将文件指纹插入到文件指纹索引表,并返回文件指纹不存在的查询结果。与上相似,用户内部块级指纹索引表模块生成并维护用户内部块级指纹索引表,接受客户端的块级指纹并在用户内部块级指纹索引表中查询,若块级指纹存在,则返回块级指纹存在的查询结果;否则,将块级指纹插入到块级指纹索引表,并返回 块级指纹不存在的查询结果。元数据存储模块存储并管理文件元数据信息;文件谱(密钥)存储模块存储并管理文件谱信息;数据块存储模块存储数据块密文。
分布式密钥服务器包括密钥服务器协助文件级密钥模块和分片级密钥存储模块,其中,密钥服务器协助文件级密钥模块接收客户端传输的信息,对该信息模指数运算并返回客户端,生成文件级密钥;分片级密钥存储模块接收客户端发送的分片级密钥,存储并管理分片级密钥。
本发明提供了一种基于用户感知的高效安全数据去重方法,包括:
(1)准备阶段,其包括以下步骤:
系统初始化参数,包括初始化公共安全参数P、Shamir秘密共享的参数(w,t),生成密钥服务器的RSA公钥(N,e)、私钥(N,d),初始化哈希函数Hash,带密钥的哈希函数HMAC和加密函数Encry,并且每个用户产生自己的安全秘密salt,密钥服务器获得RSA私钥(N,d),将公钥(N,e)分发给所有用户;
Hash函数通常采用SHA-1,或者SHA-256;HMAC函数通常采用HMAC-SHA1,或者HMAC-SHA256和Encry函数通常采用高级加密标准(Advanced Encryption Standard,AES)。
如图2所示,为本发明的备份阶段流程图。
(2)备份阶段,其包括以下步骤:
(2.1)用户输入文件F,用户产生文件哈希HF,HF=Hash(P,F),哈希函数可以采用SHA-1或者SHA-256。用户对文件哈希HF采用密钥服务器协助的基于哈希的收敛加密(Hash Convergent Encryption,HCE),产生文件级密钥KF和文件指纹TF,并将文件指纹TF发送到存储服务提供商。
如图3(a)所示,为跨用户文件级的密钥服务器协助的基于哈希收敛加密算法原理图具体而言,产生文件级密钥KF和文件的指纹TF的方法为:用户选择随机数r∈Ν并计算r的逆r-1满足r·r-1≡1,并计算文件哈希HF的盲化信息x=HF·re(modΝ),用户将x发送到分布式密钥服务器。分布式密钥服 务器接收x,计算签名信息y=xd(modΝ),分布式密钥服务器将y返回用户。用户接收到y并消除盲化信息得到中间变量z=y·r-1(modN)。用户可以验证HF≡zd(modN),若满足条件z就是文件F的文件级密钥KF,否则密钥生成失败。用户计算文件级密钥的哈希得到文件指纹TF,TF=Hash(P,KF)。
(2.2)存储服务提供商接收用户发送的文件指纹TF,并在文件指纹索引中查找是否存在,并将查询结果返回用户。
具体而言,文件指纹索引采用哈希表或键值存储等,在文件指纹索引中查询指纹时,若指纹不存在,返回查询结果不存在并将该指纹插入到文件指纹索引中;若存在,返回查询结果存在。
(2.3)用户接收查询结果。若查询结果显示存在,则用户将会更新文件元数据信息,备份阶段结束。若查询结果显示不存在,则用户将文件F切分成细粒度的数据块,并在用户内部将会执行块级去重。
(2.4)在用户内部的块级去重中,他们采用用户协助的收敛加密算法获得数据块Bi的加密密钥和数据块的指纹发送到存储服务提供商端进行重复数据检测;其中i=1,2,...,n,n是数据块数目具体而言,包括如下步骤:
(2.4.1)用户使用分块算法将文件F切分成多个数据块{Bi}。
具体而言,分块算法可以是定长分块或者基于内容的分块(Content-Defined Chunking,CDC,例如,Rabin算法)。
(2.4.2)如图3(b)所示,对于每个数据块{Bi},用户使用用户协助的收敛加密方案产生块级密钥和数据块指纹
具体而言,用户对数据块Bi计算数据块Bi的哈希值其哈希函数采用SHA-1或SHA-256。用户产生每个数据块Bi的密钥 HMAC采用HMAC-SHA1或HMAC-SHA256,salt是由用户自己保存的秘密信息。
(2.4.3)对每个数据块Bi,用户以其块级密钥为加密密钥采用对称加密算法来加密数据块Bi生成密文然后对密文计算哈希得到数据块的指纹
具体而言, C B i = Encry ( P , K B i , B i ) , T B i = Hash ( P , C B i ) 对称加密算法选择高级加密标准(Advanced Encryption Standard,AES)。
(2.4.4)用户将产生的数据块指纹发送到存储服务提供商,进行重复数据查询。
(2.5)存储服务提供商接收用户发送的数据块指纹并在用户的块级指纹索引表中对所有的数据块指纹进行查询。对于每一个数据块Bi,将所有的数据块是否重复的查询结果写入到标识信息数组中,并将数据块指纹是否存在的标识信息数组返回用户。
具体而言,用户的块级指纹索引表可以通过哈希表或键值存储来实现。
(2.6)用户接收存储服务提供商发送的标识信息数组;针对每个数据块Bi,若标识信息数组显示数据块指纹不存在,用户将数据块的密文发送到存储服务提供商。用户会生成相应的文件谱并按顺序将数据块的指纹写入到文件谱中用于文件恢复。
如图4所示,为本发明基于用户感知的高效安全数据去重的多级密钥管理方案,方案中包含文件级、块级和分片级三级密钥。用户会使用文件级密钥KF来加密块级密钥并将块级密钥的密文写入到文件谱中,将文件谱发送到存储服务提供商。
具体而言,文件谱包含文件的指纹,文件大小,并按顺序记录所有数据块的指纹和数据块大小。
(2.7)若标识信息数组显示数据块指纹存在,则用户将会更新文件谱和元数据信息;
当所有数据块查询结束之后,用户通过秘密共享将文件级密钥KF切分 成w个不同的分片级密钥{Sj},并将分片Sj发送到w个不同的密钥服务器中存储;其中j=1,2,...,w,w为分布式密钥服务器数目;
具体而言,秘密共享可以采用Shamir秘密共享(Shamir Secret Sharing Scheme,SSSS(w,t))。
如图5所示,为本发明的基于用户感知细粒度的高效安全数据去重方法的系统恢复流程图。
(3)恢复阶段,其包括以下步骤:
(3.1)用户想要恢复文件F时,用户需要将恢复文件请求和文件名发送到存储服务提供商。存储服务提供商接收用户的文件恢复请求,并验证用户的身份。若身份验证失败,存储服务提供商会拒绝用户的请求,恢复过程结束。
(3.2)若身份验证通过,存储服务提供商将会读取文件谱,并将文件谱以及文件对应的所有数据块密文发送给用户。用户将会接收文件谱和所有数据块的密文
(3.3)用户需要向t个不同的密钥服务器来获取分片级的密钥Sj。每个密钥服务器都会验证用户的身份,密钥服务器会读取分片级密钥Sj,并将它们发送回该用户。用户使用秘密共享,根据t个分片级密钥恢复文件F的文件级密钥KF
具体而言,秘密共享采用Shamir秘密共享(Shamir Secret Sharing Scheme,SSSS(w,t))。
(3.4)用户获得文件谱和文件级密钥KF。用户使用文件级密钥KF根据对称加密算法来解密每个数据的块级密钥紧接着,该用户使用对应的数据块块级密钥来解密每个数据块Bi。最后按照文件谱的顺序来依次排列数据块并恢复文件F。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于用户感知的高效安全数据去重方法,其特征在于,所述方法包括如下步骤:
(1)准备阶段,系统初始化参数,包括初始化公共安全参数P、Shamir秘密共享的参数(w,t),生成密钥服务器的RSA公钥(N,e)、私钥(N,d),初始化哈希函数Hash,带密钥的哈希函数HMAC和加密函数Encry,并且每个用户产生自己的安全秘密salt,密钥服务器获得RSA私钥(N,d),将公钥(N,e)分发给所有用户;
(2)备份阶段,包括以下步骤:
(2.1)用户输入文件F,产生文件哈希HF=Hash(P,F),用户对文件哈希HF采用密钥服务器协助的基于哈希的收敛加密,产生文件级密钥KF和文件指纹TF,并将文件指纹TF发送到存储服务提供商;
(2.2)存储服务提供商接收用户发送的文件指纹TF,在文件指纹索引中查找文件指纹TF是否存在,并将查询结果返回用户;
(2.3)用户接收查询结果;若查询结果显示文件指纹TF存在,则用户更新文件元数据信息,备份阶段结束;若查询结果显示文件指纹TF不存在,则用户将文件F切分成细粒度的数据块,并在用户内部执行块级去重;
(2.4)在用户内部的块级去重中,对于每个数据块Bi采用用户协助的收敛加密算法获得数据块Bi的加密密钥和数据块的指纹将所有数据块的指纹发送到存储服务提供商端,并进行重复数据检测,其中i=1,2,...n,,n是数据块数目;
(2.5)存储服务提供商接收用户发送的数据块指纹并在用户的块级指纹索引表中对所有的数据块指纹进行查询;对于每一个数据块将所有的数据块的查询结果写入到标识信息数组中,并将数据块指纹是否存在的标识信息数组返回用户;
(2.6)用户接收存储服务提供商发送的标识信息数组;针对每个数据块Bi,若标识信息数组显示数据块指纹不存在,用户将数据块的密文发送到存储服务提供商;用户生成相应的文件谱,并按顺序将数据块的指纹写入到文件谱中用于文件恢复;
(2.7)若标识信息数组显示数据块指纹存在,则用户更新文件谱和元数据信息;用户使用秘密共享将文件级密钥KF切分成分片级密钥{Sj},其中j=1,2,...,w,w是分布式密钥服务器的数目;
(3)恢复阶段,其包括以下步骤:
(3.1)用户要恢复文件F时,将恢复文件请求和文件名发送到存储服务提供商,存储服务提供商接收用户的文件恢复请求,并验证用户的身份;若身份验证失败,存储服务提供商将拒绝用户的请求,恢复过程结束;
(3.2)若身份验证通过,存储服务提供商读取文件谱,并将文件谱以及文件对应的所有数据块密文发送给用户;用户接收文件谱和所有数据块的密文
(3.3)用户向t个不同的密钥服务器来获取分片级的密钥Sj;每个密钥服务器验证用户的身份,密钥服务器读取分片级密钥Sj,并将它们发送回该用户;用户使用秘密共享,根据t个分片级密钥恢复文件F的文件级密钥KF
(3.4)用户获得文件谱和文件级密钥KF;用户使用文件级密钥KF根据对称加密算法来解密每个数据的块级密钥并使用对应的数据块块级密钥来解密每个数据块Bi;最后按照文件谱的顺序来依次排列数据块并恢复文件F。
2.如权利要求1所述的方法,其特征在于,所述步骤(2.1)具体为:用户选择随机数r∈Ν并计算r的逆r-1,r与r-1满足r·r-1≡1,计算文件哈希HF的盲化信息x=HF·re(modΝ),用户将x发送到分布式密钥服务器;分布式密钥服务器接收x,计算签名信息y=xd(modΝ),分布式密钥服务器将y返回用户;用户接收到y并消除盲化信息得到中间变量z=y·r-1(modN);用户验证HF≡zd(modN),若满足条件z就是文件F的文件级密钥KF,否则密钥生成失败,用户计算文件级密钥的哈希得到文件指纹TF,TF=Hash(P,KF)。
3.如权利要求1或2所述的方法,其特征在于,所述步骤(2.4)具体包括:
(2.4.1)用户使用分块算法将文件F切分成多个数据块{Bi};
(2.4.2)对于每个数据块Bi,用户使用用户自身协助的收敛加密方案产生块级密钥和数据块指纹
(2.4.3)对每个数据块Bi,用户以其块级密钥为加密密钥采用对称加密算法来加密数据块Bi生成密文然后对密文计算哈希得到数据块的指纹
(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;用户产生每个数据块Bi的密钥 HMAC采用HMAC-SHA1或HMAC-SHA256,其中salt是由用户自己保存的秘密信息。
7.如权利要求1或2所述的方法,其特征在于,所述步骤(2.5)中:用户的块级指纹索引表通过哈希表或键值存储来实现。
8.如权利要求1或2所述的方法,其特征在于,所述步骤(2.6)中:文件谱包含文件的指纹、文件大小,并按顺序记录所有数据块的指纹和数据块大小。
9.如权利要求1或2所述的方法,其特征在于,所述步骤(2.7)具体包括:当所有数据块查询结果之后,用户通过秘密共享将文件级密钥KF切分成w个不同的分片级密钥{Sj},并将分片Sj发送到w个不同的密钥服务器中存储,其中j=1,2,...,w,w是分布式密钥服务器的数目。
10.一种基于用户感知的高效安全数据去重系统,其特征在于,所述系统包括客户端、存储服务提供商和分布式密钥服务器,其中:
所述客户端包括跨用户文件级去重模块、用户内部块级去重模块以及多密钥管理模块,其中,
所述跨用户文件级去重模块包括文件级密钥模块和文件指纹模块,所述文件级密钥模块用于在用户输入备份文件时计算文件级密钥;所述文件指纹模块用于根据所述文件级密钥计算哈希值得到文件指纹;
所述用户内部块级去重模块包括分块模块、块级密钥模块、块级指纹模块以及数据传输模块,所述分块模块用于在文件不重复时,将文件切分成多个数据块;所述块级密钥模块用于对每个数据块产生块级密钥,根据块级密钥加密数据块得到数据块密文;所述块级指纹模块用于对所述数据块密文计算哈希值得到块级指纹;所述数据传输模块用于在进行块级重复数据检测之后将非重复数据块密文发送到存储服务提供商储存;
所述多级密钥管理模块包括密钥加密模块和秘密共享模块,所述密钥加密模块用于根据文件级密钥加密块级密钥,并将块级密钥的密文写入文件谱中;对于非重复的文件,所述秘密共享模块用于将文件级密钥切分成多个分片级密钥并发送到分布式密钥服务器储存;
所述存储服务提供商包括跨用户文件指纹索引表模块、用户内部块级指纹索引表模块、元数据存储模块、文件谱存储模块和数据块存储模块,其中所述跨用户文件指纹索引模块用于生成并维护跨用户文件指纹索引表,接收客户端传输的文件指纹并在跨用户文件指纹索引表中查询,若文件指纹存在,则返回文件指纹存在的查询结果;否则,将文件指纹插入到文件指纹索引表,并返回文件指纹不存在的查询结果;所述用户内部块级指纹索引表模块用于生成并维护用户内部块级指纹索引表,接受客户端的块级指纹并在用户内部块级指纹索引表中查询,若块级指纹存在,则返回块级指纹存在的查询结果;否则,将块级指纹插入到块级指纹索引表,并返回块级指纹不存在的查询结果;所述元数据存储模块用于存储并管理文件元数据信息;所述文件谱存储模块用于存储并管理文件谱信息;所述数据块存储模块用于存储数据块密文;
所述分布式密钥服务器包括密钥服务器协助文件级密钥模块和分片级密钥存储模块,其中,所述密钥服务器协助文件级密钥模块用于接收客户端传输的信息,对该信息模进行指数运算并返回客户端,生成文件级密钥;分片级密钥存储模块用于接收客户端发送的分片级密钥,存储并管理分片级密钥。
CN201510257654.7A 2015-05-19 2015-05-19 一种基于用户感知的高效安全数据去重方法及系统 Active CN104917609B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510257654.7A CN104917609B (zh) 2015-05-19 2015-05-19 一种基于用户感知的高效安全数据去重方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510257654.7A CN104917609B (zh) 2015-05-19 2015-05-19 一种基于用户感知的高效安全数据去重方法及系统

Publications (2)

Publication Number Publication Date
CN104917609A true CN104917609A (zh) 2015-09-16
CN104917609B CN104917609B (zh) 2017-11-10

Family

ID=54086341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510257654.7A Active CN104917609B (zh) 2015-05-19 2015-05-19 一种基于用户感知的高效安全数据去重方法及系统

Country Status (1)

Country Link
CN (1) CN104917609B (zh)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106155934A (zh) * 2016-06-27 2016-11-23 华中科技大学 一种云环境下基于重复数据的缓存方法
CN106254374A (zh) * 2016-09-05 2016-12-21 电子科技大学 一种具备去重功能的云数据公开审计方法
CN106506474A (zh) * 2016-11-01 2017-03-15 西安电子科技大学 一种基于移动云环境的高效可追踪的数据共享方法
CN106612320A (zh) * 2016-06-14 2017-05-03 四川用联信息技术有限公司 云存储中一种加密数据的去重方法
CN106855930A (zh) * 2017-01-04 2017-06-16 成都四方伟业软件股份有限公司 一种安全可靠的大数据存储系统及方法
CN106961323A (zh) * 2017-05-18 2017-07-18 桀安信息安全技术(上海)有限公司 一种密钥解密板卡、装置、系统及处理方法
CN107094075A (zh) * 2017-07-05 2017-08-25 电子科技大学 一种基于收敛加密的数据块动态操作方法
CN107135062A (zh) * 2017-05-08 2017-09-05 桂林电子科技大学 一种改进的大文件的加密方法
CN107295002A (zh) * 2017-07-12 2017-10-24 联动优势科技有限公司 一种云端存储数据的方法及服务器
CN107659401A (zh) * 2017-10-09 2018-02-02 华中科技大学 一种相似性感知的安全数据去重加密方法
CN107979461A (zh) * 2017-10-27 2018-05-01 财付通支付科技有限公司 秘钥找回方法、装置、终端、秘钥托管服务器及可读介质
CN108400970A (zh) * 2018-01-20 2018-08-14 西安电子科技大学 云环境中相似数据消息锁定加密去重方法、云存储系统
CN108616533A (zh) * 2018-04-27 2018-10-02 正方软件股份有限公司 敏感数据加密方法及装置
CN110099097A (zh) * 2019-03-18 2019-08-06 广东工业大学 一种抵抗侧信道攻击的数据去重方法
CN110109617A (zh) * 2019-04-22 2019-08-09 电子科技大学 一种加密重复数据删除系统中的高效元数据管理方法
CN110278087A (zh) * 2019-07-05 2019-09-24 深圳市九链科技有限公司 基于二次哈希和零知识验证方法的文件加密去重方法
CN112152798A (zh) * 2020-08-31 2020-12-29 中大编码有限公司 基于加密数据去重的分布式密文共享密钥管理方法及系统
CN112650628A (zh) * 2020-12-30 2021-04-13 浪潮云信息技术股份公司 一种高可用可拓展的数据去重方法
CN112866299A (zh) * 2021-04-12 2021-05-28 南京大学 移动边缘计算网络的加密数据去重与分享装置及方法
CN112887281A (zh) * 2021-01-13 2021-06-01 西安电子科技大学 支持高效审计和多备份密文去重的存储方法、系统及应用
CN113378211A (zh) * 2020-03-10 2021-09-10 百度在线网络技术(北京)有限公司 用于保护数据的方法和装置
CN114065169A (zh) * 2022-01-13 2022-02-18 浙江大学 一种隐私保护生物认证方法和装置、电子设备
US11329803B2 (en) * 2020-09-29 2022-05-10 Amazon Technologies, Inc. Redundancy controls in convergent encryption using dynamic salt values
CN115442162A (zh) * 2022-11-08 2022-12-06 四川公众项目咨询管理有限公司 一种基于收敛加密技术的云安全去重方法
US11582025B2 (en) 2020-09-29 2023-02-14 Amazon Technologies, Inc. Efficient deduplication using block-based convergent encryption
CN117811735A (zh) * 2024-03-01 2024-04-02 云筑信息科技(成都)有限公司 一种基于社会关系图谱的密钥托管方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103118089A (zh) * 2013-01-22 2013-05-22 华中科技大学 一种基于多个云存储系统的安全存储方法及其系统
CN103530201B (zh) * 2013-07-17 2016-03-02 华中科技大学 一种适用于备份系统的安全数据去重方法和系统
CN103595793B (zh) * 2013-11-13 2017-01-25 华中科技大学 一种无需可信第三方支持的云端数据安全删除系统与方法
CN104363268B (zh) * 2014-10-27 2018-01-02 西安电子科技大学 一种基于支付激励机制的安全去重系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
QIAN WANG,LIJI WU,XIANGMIN ZHANG,XIANGYU LI,JUN GUO: "Efficient Countermeasures against Fault Attacks for 3DES Crypto Engine in Bank IC Card", 《2013 NINTH INTERNATIONAL CONFERENCE ON COMPUTATIONAL INTELLIGENCE AND SECURITY》 *
沈瑞清: "云存储中避免重复数据存储机制研究", 《中国优秀硕士学位论文全文数据库》 *

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106612320A (zh) * 2016-06-14 2017-05-03 四川用联信息技术有限公司 云存储中一种加密数据的去重方法
CN106612320B (zh) * 2016-06-14 2019-10-18 深圳市中盛瑞达科技有限公司 云存储中一种加密数据的去重方法
CN106155934A (zh) * 2016-06-27 2016-11-23 华中科技大学 一种云环境下基于重复数据的缓存方法
CN106155934B (zh) * 2016-06-27 2019-08-09 华中科技大学 一种云环境下基于重复数据的缓存方法
CN106254374A (zh) * 2016-09-05 2016-12-21 电子科技大学 一种具备去重功能的云数据公开审计方法
CN106254374B (zh) * 2016-09-05 2019-10-01 电子科技大学 一种具备去重功能的云数据公开审计方法
CN106506474A (zh) * 2016-11-01 2017-03-15 西安电子科技大学 一种基于移动云环境的高效可追踪的数据共享方法
CN106506474B (zh) * 2016-11-01 2020-01-17 西安电子科技大学 一种基于移动云环境的高效可追踪的数据共享方法
CN106855930A (zh) * 2017-01-04 2017-06-16 成都四方伟业软件股份有限公司 一种安全可靠的大数据存储系统及方法
CN106855930B (zh) * 2017-01-04 2019-12-31 成都四方伟业软件股份有限公司 一种安全可靠的大数据存储系统及方法
CN107135062A (zh) * 2017-05-08 2017-09-05 桂林电子科技大学 一种改进的大文件的加密方法
CN106961323A (zh) * 2017-05-18 2017-07-18 桀安信息安全技术(上海)有限公司 一种密钥解密板卡、装置、系统及处理方法
CN107094075A (zh) * 2017-07-05 2017-08-25 电子科技大学 一种基于收敛加密的数据块动态操作方法
CN107295002A (zh) * 2017-07-12 2017-10-24 联动优势科技有限公司 一种云端存储数据的方法及服务器
CN107295002B (zh) * 2017-07-12 2020-06-19 联动优势科技有限公司 一种云端存储数据的方法及服务器
CN107659401A (zh) * 2017-10-09 2018-02-02 华中科技大学 一种相似性感知的安全数据去重加密方法
CN107659401B (zh) * 2017-10-09 2019-08-30 华中科技大学 一种相似性感知的安全数据去重加密方法
CN107979461A (zh) * 2017-10-27 2018-05-01 财付通支付科技有限公司 秘钥找回方法、装置、终端、秘钥托管服务器及可读介质
CN108400970A (zh) * 2018-01-20 2018-08-14 西安电子科技大学 云环境中相似数据消息锁定加密去重方法、云存储系统
CN108400970B (zh) * 2018-01-20 2020-10-02 西安电子科技大学 云环境中相似数据消息锁定加密去重方法、云存储系统
CN108616533A (zh) * 2018-04-27 2018-10-02 正方软件股份有限公司 敏感数据加密方法及装置
CN108616533B (zh) * 2018-04-27 2021-02-19 正方软件股份有限公司 敏感数据加密方法及装置
CN110099097B (zh) * 2019-03-18 2021-12-17 广东工业大学 一种抵抗侧信道攻击的数据去重方法
CN110099097A (zh) * 2019-03-18 2019-08-06 广东工业大学 一种抵抗侧信道攻击的数据去重方法
CN110109617A (zh) * 2019-04-22 2019-08-09 电子科技大学 一种加密重复数据删除系统中的高效元数据管理方法
CN110278087A (zh) * 2019-07-05 2019-09-24 深圳市九链科技有限公司 基于二次哈希和零知识验证方法的文件加密去重方法
CN110278087B (zh) * 2019-07-05 2022-04-22 深圳市九链科技有限公司 基于二次哈希和零知识验证方法的文件加密去重方法
CN113378211A (zh) * 2020-03-10 2021-09-10 百度在线网络技术(北京)有限公司 用于保护数据的方法和装置
CN112152798A (zh) * 2020-08-31 2020-12-29 中大编码有限公司 基于加密数据去重的分布式密文共享密钥管理方法及系统
CN112152798B (zh) * 2020-08-31 2023-10-03 云链网科技(广东)有限公司 基于加密数据去重的分布式密文共享密钥管理方法及系统
US11329803B2 (en) * 2020-09-29 2022-05-10 Amazon Technologies, Inc. Redundancy controls in convergent encryption using dynamic salt values
US11582025B2 (en) 2020-09-29 2023-02-14 Amazon Technologies, Inc. Efficient deduplication using block-based convergent encryption
CN116547642A (zh) * 2020-09-29 2023-08-04 亚马逊技术有限公司 使用基于块的收敛加密的高效去重
CN112650628A (zh) * 2020-12-30 2021-04-13 浪潮云信息技术股份公司 一种高可用可拓展的数据去重方法
CN112887281A (zh) * 2021-01-13 2021-06-01 西安电子科技大学 支持高效审计和多备份密文去重的存储方法、系统及应用
CN112866299A (zh) * 2021-04-12 2021-05-28 南京大学 移动边缘计算网络的加密数据去重与分享装置及方法
CN114065169A (zh) * 2022-01-13 2022-02-18 浙江大学 一种隐私保护生物认证方法和装置、电子设备
CN114065169B (zh) * 2022-01-13 2022-06-24 浙江大学 一种隐私保护生物认证方法和装置、电子设备
CN115442162A (zh) * 2022-11-08 2022-12-06 四川公众项目咨询管理有限公司 一种基于收敛加密技术的云安全去重方法
CN117811735A (zh) * 2024-03-01 2024-04-02 云筑信息科技(成都)有限公司 一种基于社会关系图谱的密钥托管方法和装置

Also Published As

Publication number Publication date
CN104917609B (zh) 2017-11-10

Similar Documents

Publication Publication Date Title
CN104917609A (zh) 一种基于用户感知的高效安全数据去重方法及系统
González-Manzano et al. An efficient confidentiality-preserving proof of ownership for deduplication
Zhou et al. SecDep: A user-aware efficient fine-grained secure deduplication scheme with multi-level key management
Kumar et al. An efficient and secure protocol for ensuring data storage security in cloud computing
Yi et al. Efficient integrity verification of replicated data in cloud computing system
CN103763362A (zh) 一种安全的分布式重复数据删除方法
Mukundan et al. Efficient integrity verification of replicated data in cloud using homomorphic encryption
Virvilis et al. A cloud provider-agnostic secure storage protocol
Wen et al. BDO-SD: An efficient scheme for big data outsourcing with secure deduplication
CN115021988B (zh) 基于可验证秘密共享的数据安全备份和恢复的方法和系统
Pawar et al. Providing security and integrity for data stored in cloud storage
Abo-Alian et al. Auditing-as-a-service for cloud storage
Ji et al. Proofs of retrievability with tag outsourcing based on Goppa codes
Yoosuf et al. Fogdedupe: A fog-centric deduplication approach using multi-key homomorphic encryption technique
Bharat et al. A Secured and Authorized Data Deduplication in Hybrid Cloud with Public Auditing
Kamboj et al. DEDUP: Deduplication system for encrypted data in cloud
Xu et al. ABSS: an attribute-based sanitizable signature for integrity of outsourced database with public cloud
Patil et al. A survey on: secure data deduplication on hybrid cloud storage architecture
Sabry et al. ArchiveSafe LT: Secure Long-term Archiving System
Abraham et al. Proving possession and retrievability within a cloud environment: A comparative survey
Nandini et al. Implementation of hybrid cloud approach for secure authorized deduplication
Venkatesh et al. Secure authorised deduplication by using hybrid cloud approach
Walunj et al. Secured Authorized Deduplication Based Hybrid Cloud
Reddy et al. Secure Data Deduplication by Using Convergent Key
Junghare et al. Overview of secure distributed de-duplication system with improved reliability

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant