CN108256048A - 支持用户文件数据恢复的第三方审计方法 - Google Patents
支持用户文件数据恢复的第三方审计方法 Download PDFInfo
- Publication number
- CN108256048A CN108256048A CN201810031142.2A CN201810031142A CN108256048A CN 108256048 A CN108256048 A CN 108256048A CN 201810031142 A CN201810031142 A CN 201810031142A CN 108256048 A CN108256048 A CN 108256048A
- Authority
- CN
- China
- Prior art keywords
- cloud server
- data
- user
- challenged
- error
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000012550 audit Methods 0.000 claims abstract description 16
- 238000011084 recovery Methods 0.000 claims abstract description 11
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000008929 regeneration Effects 0.000 claims description 9
- 238000011069 regeneration method Methods 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 7
- 238000006116 polymerization reaction Methods 0.000 claims description 2
- 230000001172 regenerating effect Effects 0.000 abstract description 3
- 230000008439 repair process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
Abstract
本发明一种支持用户文件数据恢复的第三方审计方法,该用户文件被分块存储在至少两个云服务器上,该方法包括在审计端执行以下步骤:接收来自用户端的用户审计请求;生成挑战,发送到被挑战的云服务器;对被挑战的云服务器针对挑战发回的证据进行验证;以及在验证出被挑战的云服务器中存储的数据块出错时,向用户端发送出错云服务器的标识,使用户端利用未出错的其他云服务器上存储的数据块进行数据恢复。较佳的,用户文件经再生码编码分块存储在所述至少两个云服务器上。
Description
技术领域
本申请涉及云存储,尤其涉及云存储的安全验证。
背景技术
云存储作为云计算最常见的一种基本服务,对使用者提供可变的云存储空间,随时随地访问数据,按需低价购买等服务,因为这些优点,越来越多的个人或公司更愿意使用云存储服务。尽管如此,但它却面临着新的安全挑战,即数据完整性。数据的机密性可以通过加密等方式解决,但是由于云服务提供商(CSP)是独立的管理实体,当用户外包数据时,实际上是放弃了对其数据的物理控制权。云服务器上的数据存在内部和外部的攻击,数据完整性时刻遭受破坏的危险。由于用户不再本地存储外包数据的特性,传统的保护本地数据安全的原理不能直接采用。特别地,由于I/O和网络的传输成本的昂贵,简单地下载所有数据并验证不是实际的解决方法。此外,应尽可能地最小化用户使用云存储的开销,使得用户不需要执行太多的操作即可使用云储存服务。针对以上用户在使用云存储服务时,对外包数据完整性的需求和特性,密码学家提出基于可信第三方(Third Party Auditor,TPA)审计的解决方案。TPA是受云服务商和用户所信任的第三方机构,拥有用户不具备的计算能力。用户可以将数据完整性的审计需求提交给TPA,TPA透过和云服务器的通信,将审计结果告知用户。
虽然基于可信第三方的审计方案可以满足审计数据完整性的需求,但是对于非常重要的外包文件,用户不希望它们收到任何损坏,一般的第三方审计方案只能检测外包数据的完整性,无法满足此需求。这时,需要可以恢复数据的第三方审计方案。在恢复数据的技术中,大多使用类似Reed-Solomon的纠删码技术,这种编码技术一般计算量很大,并且修复带宽很高,即需要传送的数据量是所要恢复数据量的很多倍。
发明内容
本发明提供一种支持用户文件数据恢复的第三方审计方法,所述用户文件被分块存储在至少两个云服务器上,所述方法包括在审计端执行以下步骤:
接收来自用户端的用户审计请求;
生成挑战,发送到被挑战的云服务器;
对所述被挑战的云服务器针对所述挑战发回的证据进行验证;以及
在验证出被挑战的云服务器中存储的数据块出错时,向所述用户端发送出错云服务器的标识,使所述用户端利用未出错的其他云服务器上存储的数据块进行数据恢复。
较佳的,所述用户文件经再生码编码分块存储在所述至少两个云服务器上。
较佳的,所述用户端利用未出错的其他云服务器上存储的再生码编码数据块和再生码编码矩阵逆运算进行数据恢复。
较佳的,所述被挑战的云服务器Si利用其存储的用户的公钥信息、再生码编码数据块cij及其数据块标签σij计算其证据。
较佳的,所述审计端对被挑战的云服务器发送过来的证据进行聚合后,利用用户的公钥信息验证聚合后证据的正确性。
较佳的,所述用户端通过以下公式生成所述数据块标签σij:
其中,Wij=Fid||i||j,Fid表示文件的身份标识,u是G1里的随机元素,x是用户私钥信息。
较佳的,在验证出被挑战的云服务器中存储的数据块出错时,对存储所述用户文件的所有云服务器均进行一次挑战,验证出所有出错云服务器后向所述用户端发送出错云服务器的标识。
本发明实施例能够在满足审计云端数据完整性的同时,修复已损坏的数据,同时降低修复带宽,减少修复节点时的数据传送量。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例的支持数据恢复的第三方审计方法的流程图;
图2为本发明另一实施例中将文件分块存储到多个云服务器的流程图;
图3为本发明另一实施例中对进行数据审计和恢复的方法的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的组件或具有相同或类似功能的组件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
图1示出本发明一个实施例的支持用户文件数据恢复的第三方审计方法,所述用户文件被分块存储在至少两个云服务器上,所述方法包括在审计端执行以下步骤:
S11、接收来自用户端的用户审计请求;
S12、生成挑战,发送到被挑战的云服务器;
S13、对被挑战的云服务器针对挑战发回的证据进行验证;以及
S14、在验证出被挑战的云服务器中存储的数据块出错时,向用户端发送出错云服务器的标识,使用户端能利用未出错的其他云服务器上存储的数据块进行数据恢复。
较佳的,所述用户文件经再生码编码分块存储在所述至少两个云服务器上。
较佳的,所述用户端利用未出错的其他云服务器上存储的再生码编码数据块和再生码编码矩阵逆运算进行数据恢复。
较佳的,所述被挑战的云服务器利用其存储的用户的公钥信息、再生码编码数据块及其数据块标签计算其证据。
在本发明另一实施例的支持用户文件数据恢复的第三方审计方法中,参阅图2,可以通过以下方法将用户端的文件F分块存储到n个云服务器S1,S2,...,Sn。
S21、用户端生成私钥sk和公钥pk。
较佳的,可以依据用户输入的安全参数λ生成随机的签名密钥对(spk,ssk)。在Zp里随机选择出x,并计算从而生成私钥sk=(x,ssk),公钥pk=(v,spk)。
S22、用户端使用再生码对文件F进行编码,生成编码后的文件C。
首先,将文件F分成B块,F={m1,m2,...,mB},将B个数据块分布到如下一个d×d的矩阵M:
其中,S是k×k的对称矩阵,T是k×(d-k)的矩阵,0是(d-k)×(d-k)的0矩阵。
其次,选择一个编码矩阵Ψ:
其中,I是(k×k)的单位矩阵,0是k×(d-k)的0矩阵,Φ是(n-k)×k的矩阵,Λ是(n-k)×(n-k)的矩阵。
然后,生成编码后的文件C:
使C=(c1,c2,...,cn)t,其中ci=(ci1,ci2,...,cid),数据块cij是分布到云服务器i上的第j个数据块,满足(n,k)最大距离可分。
S23、用户端生成数据块标签;可以用私钥sk为每个数据块cij生成对应的数据块标签σij。
具体的,在Zp域里随机选择一个大元素作为文件的身份标识Fid。在G1里面随机选取一个元素u。对于每个数据块cij,通过以下公式计算其标签σij:
其中,Wij=Fid||i||j。
G1是参数,本实施例中使用双线性映射为e:G1×G2→GT,其中G1,G2,GT都是阶为大素数p乘法循环群,g1,g2分别是G1,G2的生成元,可以在用户端生成密钥时生成。
S24、用户端进行文件签名,生成文件标签t;可以利用私钥ssk对文件的身份标识Fid进行加密,生成文件标签t。
具体的,可以设置t0=Fid||n||u||d,文件标签t=t0||SSigssk(t0)。
可以理解,步骤S23和步骤S24也可以同时执行,或者先执行步骤S24再执行步骤S23。
S25、用户端将文件包块上传到各个云服务器S1,S2,...,Sn,上传到每个云服务器的文件包块中包括文件标签t、分布到该云服务器的数据块及对应的数据块标签。
S26、各个云服务器S1,S2,...,Sn接收各自的文件包,各自利用公钥pk验证文件标签t是否合法,在验证通过的情况下存储各自的数据块及数据块标签,验证不通过则终止。
具体的,可以用公钥pk解析出v和spk,然后用spk验证文件标签t是否合法。
参阅图3,数据块分布存储到各个云服务器后,可以通过以下方法对数据进行审计和恢复:
S31、审计端接收用户审计请求,该请求中包括文件F的文件标签t。
S32、审计端用公钥pk验证文件标签t是否合法,在验证通过的情况下执行S33,验证不通过则终止。
具体的,可以用公钥pk解析出v和spk,然后用spk验证文件标签t是否合法。
S33、审计端生成挑战,发送到被挑战的云服务器。
审计端验证文件标签t合法时,解析出文件标签t中的Fid、n和u。从[1,n]中随机选出l个元素做为子集I,也就是被随机选择被挑战的云服务器的编号。从[1,d]中随机选出子集J,为J中每个元素随机选取vij∈Zp,利用公钥pk中的v生成挑战Ci={(j,vij)j∈J,Ri},其中ri是里的随机数,之后将挑战Ci传送给云服务器Si。
S34、被挑战的云服务器生成证据,发送到审计端。
云服务器Si在收到挑战Ci后,利用公钥pk中的v及编码后的数据块cij及其数据块标签σij计算证据Pi,之后将证据Pi发送到审计端。较佳的,证据Pi=(DPi,TPi,Ki1,Ki2)。其中,
其中,MPi=ki·∑j∈Jvijcij,ki为Zp里的随机数。
S35、审计端验证证据,获得审计结果。
审计端可对被挑战的各云服务器发送过来的证据进行聚合后,利用公钥pk验证证据的正确性,从而获得审计结果。
具体的,审计端收到证据Pi=(DPi,TPi,Ki1,Ki2)后,计算聚合后的证据:
DP=Πi∈IDPi,TP=Πi∈ITPi
然后算出
再通过下面的式子验证数据的完整性:
如果两者相等,表示验证通过,可以向用户端返回数据完整的审计结果;否则,对于每个i∈I,计算下式是否成立:
若不成立,返回云服务器Si,表示Si上的数据有被篡改,并执行S36;若成立,云服务器Si数据正确。
S36、若被挑战的云服务器上数据出错,向用户端发送数据出错的云服务器的标识,用户端利用未发生数据出错的其他云服务器上存储的再生码编码数据块进行数据恢复。
审计端检测到有数据损坏时,可进行一次对全部数据的检查,得出有数据损坏的云服务器的编号,若个数小于k,则将有数据损坏的云服务器编号发送给用户端。用户端下载其余任意d个云服务器上的再生码编码数据块,设为c1,c2,...,cd,再利用编码矩阵Ψ逆运算恢复出原来的数据C′d:
Cd′=[c1,c2,...,cd](Ψd)-1
依据本发明的实施例,不仅可以检测云端数据的完整性,并且可以在检测到数据损坏时,恢复损坏的数据。依靠再生码技术,可以有效地减少修复带宽,即减少修复节点时的数据传送量。同时满足纠删码的最大距离可分特性MDS(n,k),当损坏节点小于等于k时,依然可以恢复损坏节点的数据。
以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换。
Claims (10)
1.一种支持用户文件数据恢复的第三方审计方法,所述用户文件被分块存储在至少两个云服务器上,所述方法包括在审计端执行以下步骤:
接收来自用户端的用户审计请求;
生成挑战,发送到被挑战的云服务器;
对所述被挑战的云服务器针对所述挑战发回的证据进行验证;以及
在验证出被挑战的云服务器中存储的数据块出错时,向所述用户端发送出错云服务器的标识,使所述用户端利用未出错的其他云服务器上存储的数据块进行数据恢复。
2.如权利要求1所述的方法,其特征在于,所述用户文件经再生码编码分块存储在所述至少两个云服务器上。
3.如权利要求2所述的方法,其特征在于,所述用户端利用未出错的其他云服务器上存储的再生码编码数据块和再生码编码矩阵逆运算进行数据恢复。
4.如权利要求3所述的方法,其特征在于,所述被挑战的云服务器Si利用其存储的用户的公钥信息、再生码编码数据块cij及其数据块标签σij计算其证据。
5.如权利要求4所述的方法,其特征在于,所述审计端对被挑战的云服务器发送过来的证据进行聚合后,利用用户的公钥信息验证聚合后证据的正确性。
6.如权利要求4所述的方法,其特征在于,所述用户端通过以下公式生成所述数据块标签σij:
其中,Wij=Fid||i||j,Fid表示文件的身份标识,u是G1里的随机元素,x是用户私钥信息。
7.如权利要求1所述的方法,其特征在于,在验证出被挑战的云服务器中存储的数据块出错时,对存储所述用户文件的所有云服务器均进行一次挑战,验证出所有出错云服务器后向所述用户端发送出错云服务器的标识。
8.如权利要求1至7任一项所述的方法,其特征在于,通过以下公式生成被挑战的云服务器Si的挑战Ci:
Ci={(j,vij)j∈J,Ri}
其中,其中ri是里的随机数,vij是Zp里的随机数,J是[1,d]中的随机子集,d为分布到每个云服务器上的再生码编码数据块的块数。
9.如权利要求8所述的方法,其特征在于,所述云服务器Si的证据Pi为:
Pi=(DPi,TPi,Ki1,Ki2)
其中,
其中,MPi=ki·∑j∈Jvijcij,ki为Zp里的随机数。
10.如权利要求9所述的方法,其特征在于,所述审计端收到证据Pi=(DPi,TPi,Ki1,Ki2)后,计算聚合后的证据:
DP=Πi∈IDPi,TP=Πi∈ITPi
然后算出
再通过下式验证数据的完整性:
如果两者相等,表示验证通过;否则,对于每个i∈I,计算下式是否成立,
若不成立,则云服务器Si数据出错,若成立,云服务器Si数据正确。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031142.2A CN108256048A (zh) | 2018-01-12 | 2018-01-12 | 支持用户文件数据恢复的第三方审计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031142.2A CN108256048A (zh) | 2018-01-12 | 2018-01-12 | 支持用户文件数据恢复的第三方审计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108256048A true CN108256048A (zh) | 2018-07-06 |
Family
ID=62726961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810031142.2A Pending CN108256048A (zh) | 2018-01-12 | 2018-01-12 | 支持用户文件数据恢复的第三方审计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108256048A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111210378A (zh) * | 2019-12-30 | 2020-05-29 | 北京工业大学 | 基于工业云上图像数据的可恢复性方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105072086A (zh) * | 2015-07-06 | 2015-11-18 | 武汉科技大学 | 一种基于MapReduce的云存储批量审计方法 |
CN106254374A (zh) * | 2016-09-05 | 2016-12-21 | 电子科技大学 | 一种具备去重功能的云数据公开审计方法 |
CN106650503A (zh) * | 2016-12-09 | 2017-05-10 | 南京理工大学 | 基于ida的云端数据完整性验证及恢复方法 |
CN106911708A (zh) * | 2017-03-23 | 2017-06-30 | 中北大学 | 一种支持批处理校验且具备错误数据定位功能的云数据公开审计方法 |
-
2018
- 2018-01-12 CN CN201810031142.2A patent/CN108256048A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105072086A (zh) * | 2015-07-06 | 2015-11-18 | 武汉科技大学 | 一种基于MapReduce的云存储批量审计方法 |
CN106254374A (zh) * | 2016-09-05 | 2016-12-21 | 电子科技大学 | 一种具备去重功能的云数据公开审计方法 |
CN106650503A (zh) * | 2016-12-09 | 2017-05-10 | 南京理工大学 | 基于ida的云端数据完整性验证及恢复方法 |
CN106911708A (zh) * | 2017-03-23 | 2017-06-30 | 中北大学 | 一种支持批处理校验且具备错误数据定位功能的云数据公开审计方法 |
Non-Patent Citations (1)
Title |
---|
刘建: ""云计算系统数据安全与控制关键技术研究"", 《中国优博士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111210378A (zh) * | 2019-12-30 | 2020-05-29 | 北京工业大学 | 基于工业云上图像数据的可恢复性方法 |
CN111210378B (zh) * | 2019-12-30 | 2023-09-19 | 北京工业大学 | 基于工业云上图像数据的可恢复性方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109194466B (zh) | 一种基于区块链的云端数据完整性检测方法及系统 | |
CN106650503B (zh) | 基于ida的云端数据完整性验证及恢复方法 | |
CN102710757B (zh) | 一种分布式云存储数据完整性保护方法 | |
CN109525403B (zh) | 一种支持用户全动态并行操作的抗泄露公开云审计方法 | |
Azraoui et al. | Stealthguard: Proofs of retrievability with hidden watchdogs | |
Kumar et al. | Ensuring data storage security in cloud computing using Sobol Sequence | |
CN110008755B (zh) | 一种云存储可撤销动态数据完整性验证系统及方法 | |
CN110011998B (zh) | 一种基于身份的多备份远程数据持有验证方法 | |
JP5854443B2 (ja) | 誤り訂正符号方式を用いて計算環境における資産集合についての識別子を生成する変化許容力を有する方法 | |
CN111541666A (zh) | 基于无证书且含隐私保护功能的云端数据完整性审计方法 | |
Nithiavathy | Data integrity and data dynamics with secure storage service in cloud | |
Wu et al. | Privacy-preserving proof of storage for the pay-as-you-go business model | |
Yu et al. | Veridedup: A verifiable cloud data deduplication scheme with integrity and duplication proof | |
CN111800258A (zh) | 云教育下支持损坏数据恢复的数据完整性审计方法 | |
He et al. | Public integrity auditing for dynamic regenerating code based cloud storage | |
CN111565234A (zh) | 一种副本文件的云安全存储方法、介质及设备 | |
CN109104449B (zh) | 一种云存储环境下的多备份数据持有性证明方法 | |
Ando et al. | Hash-based TPM signatures for the quantum world | |
CN108256048A (zh) | 支持用户文件数据恢复的第三方审计方法 | |
VS et al. | A secure regenerating code‐based cloud storage with efficient integrity verification | |
CN113051623B (zh) | 一种数据处理方法、装置和电子设备 | |
Li et al. | Blockchain-based auditing with data self-repair: From centralized system to distributed storage | |
CN111971677A (zh) | 用于移动装置的防篡改数据编码 | |
Li et al. | Secure regenerating code | |
Tang et al. | Fragile watermarking based proofs of retrievability for archival cloud data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180706 |