CN106201781B - 一种基于右边正则纠删码的云数据存储方法 - Google Patents
一种基于右边正则纠删码的云数据存储方法 Download PDFInfo
- Publication number
- CN106201781B CN106201781B CN201610541235.0A CN201610541235A CN106201781B CN 106201781 B CN106201781 B CN 106201781B CN 201610541235 A CN201610541235 A CN 201610541235A CN 106201781 B CN106201781 B CN 106201781B
- Authority
- CN
- China
- Prior art keywords
- node
- canonical
- data
- cloud
- bigraph
- 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.)
- Active
Links
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于右边正则纠删码的云数据安全存储方法,首先将原始数据文件进行分块,按数据块数量和需求的冗余度建立正则二部图,按正则二部图对数据块进行异或运算生成信息节点。生成完毕将所有节点分组,每组生成一张DCT表,在正则二部图中标记出每个节点所属的DCT表。当数据上传到云端后,可通过DCT中的信息对云端数据进行审计,若发生数据丢失、篡改等,可通过二部图对丢失节点的相关节点进行运算,以此来恢复数据,保证数据安全。此方法具有空间成本小、计算复杂度低、传输开销低等优点。
Description
技术领域
本发明涉及数据存储方法领域,特别是一种基于右边正则纠删码的云数据存储方法。
背景技术
随着技术的发展,大数据和云计算受到了广泛的关注和应用,云存储作为背后的基础,其可靠性不容忽视。云存储是云计算的一种特殊形式,它的运算和处理的重点是海量数据的管理和存储,通过集群、分布式文件管理等技术实现云存储系统。云存储用户在任意时间地点,只要能够接入网络便可以实现大容量数据存取。云存储可以跨平台、按需取用,相较于传统方式有较明显优势。
云存储的数据安全性是一个不可忽视的问题。目前云存储大多采用多备份冗余技术或基于RS纠删码技术。
多备份冗余技术是通过将同一文件复制多份存储在不同位置,当发生数据损失时通过多余的备份来恢复,以此保证数据完整。该技术实现简单但缺点明显。以HDFS的3备份方案为例,当用户提交1G数据时,云存储系统需要花费3G空间来存储数据。所有的数据都需要额外的200%空间来保证安全,成本非常高。
基于RS纠删码技术是通过将数据分组分块,随后按组块通过矩阵运算,按设定的比例计算出冗余信息块。当发生数据丢失时,将剩余数据块进行矩阵运算便可得到丢失数据块。以RS(6,3)方案为例,每6个数据块产生3个信息块,最多容忍3个数据块丢失,需要额外空间为50%。但该方案的初始信息块计算和恢复时的计算都很复杂,丢失1个数据块时也需要6个数据块进行恢复运算,传输开销很大。
上述方案技术均未处理数据被篡改的情况。
发明内容
本发明的主要目的在于克服现有技术中的上述缺陷,提出一种基于右边正则纠删码的云数据安全存储方法。该方法具有空间成本小、计算复杂度低、传输开销低等优点。
本发明采用如下技术方案:
一种基于右边正则纠删码的云数据安全存储方法,其特征在于,包括以下步骤:
1)将原始数据按预设大小进行分块,得到M个数据块和M个原始数据节点;
2)根据原始数据节点个数M和预设的冗余率R,构造右边正则二部图;
3)根据右边正则二部图对原始数据节点进行异或运算得到用于恢复数据的信息节点;
4)根据原始数据节点与信息节点的总数量将新型节点分为若干组,每组节点在一张DCT表中,生成审计信息;
5)在右边正则二部图中标记每个节点所属的DCT;
6)将所有节点存储至云端中,将右边正则二部图存储至本地;
7)定时随机选取节点对云端数据进行审计,若发现数据异常,则根据右边正则二部图进行数据恢复。
优选的,在步骤1)中,按照预设大小将原始数据进行分块时,若最后一部分文件不够设定大小,则使用冗余数据进行填充至预设大小完成一个数据块。
优选的,在步骤2)中,构造右边正则二部图方法如下:
2.1)根据预设的冗余率R和原始数据节点数M,选取适当的正则二部图右边节点度数a,则右边节点平均度数为ar=a,β=1-R,左边平均节点度数al=aβ,令计算出正则二部图左边节点实际平均度数 左边节点度数的序列向量
2.2)根据上述计算结果为每个左边节点分配度数,随机进行连边操作,完成正则二部图的构造。
优选的,在步骤3)中根据正则二部图左右节点关系,计算出左边节点内容,若信息节点K度数为3,相关联节点为A、B、C,则若A丢失,则可根据进行恢复,B和C同理。
优选的,在步骤4)中DCT的数量N满足:生成审计信息时,每个节点记为f[i],γ为伽罗华域上的非零向量,利用公式 生成计算出Sγ(F)作为审计信息,并记录在DCT相关信息中,Sγ(F)为代数特征签名。
优选的,在步骤5)中,在正则二部图中,为每个节点加上DCT信息字段以记录节点所在DCT。
优选的,在步骤6)中将进行上述操作的所有节点上传至云端进行存储,本地仅保留带有DCT信息的右边正则纠删码的二部图。
优选的,在步骤7)中,所述审计是指:通过可信第三方或数据拥有者随机选取部分节点,向云端发起质询,根据云端的回馈信息和本地保存信息进行比较,从而判断云端数据是否出现异常。
由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:
本发明首先将原始数据文件进行分块,按数据块数量和需求的冗余度建立正则二部图,按正则二部图对数据块进行异或运算生成信息节点。生成完毕将所有节点分组,每组生成一张DCT表,在正则二部图中标记出每个节点所属的DCT表。当数据上传到云端后,可通过DCT中的信息对云端数据进行审计,若发生数据丢失、篡改等,可通过二部图对丢失节点的相关节点进行运算,以此来恢复数据,保证数据安全。此方法具有空间成本小、计算复杂度低、传输开销低等优点。
附图说明
图1是本发明所述正则二部图示意图;
图2是本发明所述数据处理流程图;
图3是本发明所述数据异常恢复流程图;
图4是本发明所述方法的系统组成。
具体实施方式
以下通过具体实施方式对本发明作进一步的描述。
本发明的基于右边正则纠删码的云数据安全存储方法,参照图2、具体包括如下步骤:
1)按照一定的大小将原始数据进行分块处理,若最后一部分文件不够设定大小,则使用冗余数据进行填充至设定大小完成一个数据块。推荐的分块大小为4KB或8KB。
2)左边节点为原始数据节点,右边为计算得出的信息节点。根据预设的R和数据节点数M,选取适当的二部图右边节点度数a,则右边节点平均度数为ar=a。β=1-R,左边平均节点度数al=aβ,令可计算出二部图左边节点实际平均度数左边节点度数的序列向量根据上述计算结果为每个左边节点分配度数,随机进行连边操作,完成二部图的构造,参照图2。
3)根据正则二部图左右节点关系,计算出左边节点内容。若信息节点K度数为3,相关联节点为A、B、C,则若A丢失,则可根据进行恢复,B和C同理。
4)根据原始数据节点与信息节点的总数量将新型节点分为若干组,每组节点在一张DCT表中,生成审计信息。分组建立DCT时,DCT的数量N满足:由DCT数量可知,单个DCT大小也为N。生成审计信息时,每个节点记为f[i],γ为伽罗华域上的非零向量,利用公式生成审计信息,并记录在DCT相关信息中,Sγ(F)为代数特征签名。
5)在正则二部图中,为每个节点加上DCT信息字段用于记录节点所在DCT等信息。
6)将进行上述操作的所有节点上传至云端进行存储,本地不保存文件节点,仅保留带有DCT信息的右边正则纠删码的二部图。
7)定时随机选取节点对云端数据进行审计,若发现数据异常,则根据右边正则二部图进行数据恢复。参照图3,审计过程为:由可信第三方或数据拥有者(Data owner)本身随机选取部分节点,向云端发起质询(challenge),根据云端的回馈信息和本地保存信息进行比较,从而判断云端数据是否出现异常。若出现异常,根据3)中方法,若B出现异常,则从云端取回K、A和C,根据恢复出B。图4为本发明所述方法的系统组成,其中的云存储服务器即为云端。
上述仅为本发明的具体实施方式,但本发明的设计构思并不局限于此,凡利用此构思对本发明进行非实质性的改动,均应属于侵犯本发明保护范围的行为。
Claims (8)
1.一种基于右边正则纠删码的云数据存储方法,其特征在于,包括以下步骤:
1)将原始数据按预设大小进行分块,得到M个数据块和M个原始数据节点;
2)根据原始数据节点个数M和预设的冗余率R,构造右边正则二部图;
3)根据右边正则二部图对原始数据节点进行异或运算得到用于恢复数据的信息节点;
4)根据原始数据节点与信息节点的总数量将信息节点分为若干组,每组节点在一张DCT表中,生成审计信息;
5)在右边正则二部图中标记每个节点所属的DCT;
6)将所有节点存储至云端中,将右边正则二部图存储至本地;
7)定时随机选取节点对云端数据进行审计,若发现数据异常,则根据右边正则二部图进行数据恢复。
2.如权利要求1所述的一种基于右边正则纠删码的云数据存储方法,其特征在于,在步骤1)中,按照预设大小将原始数据进行分块时,若最后一部分文件不够设定大小,则使用冗余数据进行填充至预设大小完成一个数据块。
3.如权利要求1所述的一种基于右边正则纠删码的云数据存储方法,其特征在于,在步骤2)中,构造右边正则二部图方法如下:
2.1)根据预设的冗余率R和原始数据节点数M,选取适当的正则二部图右边节点度数a,则右边节点平均度数为ar=a,β=1-R,左边平均节点度数al=aβ,令计算出正则二部图左边节点实际平均度数 左边节点度数的序列向量
2.2)根据上述计算结果为每个左边节点分配度数,随机进行连边操作,完成正则二部图的构造。
4.如权利要求1所述的一种基于右边正则纠删码的云数据存储方法,其特征在于,在步骤3)中根据正则二部图左右节点关系,计算出左边节点内容,若信息节点K度数为3,相关联节点为A、B、C,则若A丢失,则可根据进行恢复,B和C同理。
5.如权利要求1所述的一种基于右边正则纠删码的云数据存储方法,其特征在于,在步骤4)中DCT的数量N满足:生成审计信息时,每个节点记为f[i],γ为伽罗华域上的非零向量,利用公式生成计算出Sγ(F)作为审计信息,并记录在DCT相关信息中,Sγ(F)为代数特征签名。
6.如权利要求1所述的一种基于右边正则纠删码的云数据存储方法,其特征在于,在步骤5)中,在正则二部图中,为每个节点加上DCT信息字段以记录节点所在DCT。
7.如权利要求1所述的一种基于右边正则纠删码的云数据存储方法,其特征在于,在步骤6)中将进行上述操作的所有节点上传至云端进行存储,本地仅保留带有DCT信息的右边正则纠删码的二部图。
8.如权利要求1所述的一种基于右边正则纠删码的云数据存储方法,其特征在于,在步骤7)中,所述审计是指:通过可信第三方或数据拥有者随机选取部分节点,向云端发起质询,根据云端的回馈信息和本地保存信息进行比较,从而判断云端数据是否出现异常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610541235.0A CN106201781B (zh) | 2016-07-11 | 2016-07-11 | 一种基于右边正则纠删码的云数据存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610541235.0A CN106201781B (zh) | 2016-07-11 | 2016-07-11 | 一种基于右边正则纠删码的云数据存储方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106201781A CN106201781A (zh) | 2016-12-07 |
CN106201781B true CN106201781B (zh) | 2019-02-26 |
Family
ID=57474205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610541235.0A Active CN106201781B (zh) | 2016-07-11 | 2016-07-11 | 一种基于右边正则纠删码的云数据存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106201781B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111539870B (zh) * | 2020-02-25 | 2023-07-14 | 成都信息工程大学 | 一种基于纠删码的新媒体图像的篡改恢复方法及装置 |
CN111339572A (zh) * | 2020-03-04 | 2020-06-26 | 鹏城实验室 | 云数据完整性的验证方法、系统、终端设备及存储介质 |
CN111475839B (zh) * | 2020-04-06 | 2023-04-18 | 华中科技大学 | 一种用于不可信环境的冗余数据编码方法、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1859012A (zh) * | 2006-05-26 | 2006-11-08 | 华中科技大学 | 一种结构化的ldpc编码方法 |
CN1956368A (zh) * | 2005-10-26 | 2007-05-02 | 中兴通讯股份有限公司 | 基于单位阵及其循环移位阵的ldpc码向量译码装置和方法 |
CN101032082A (zh) * | 2004-08-09 | 2007-09-05 | 摩托罗拉公司 | 编码和解码数据的方法和设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7032166B2 (en) * | 2002-12-03 | 2006-04-18 | Massachusetts Institute Of Technology | Method and apparatus for protecting data |
US8099645B2 (en) * | 2008-04-11 | 2012-01-17 | Nec Laboratories America, Inc. | LDPC codes and stochastic decoding for optical transmission |
-
2016
- 2016-07-11 CN CN201610541235.0A patent/CN106201781B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101032082A (zh) * | 2004-08-09 | 2007-09-05 | 摩托罗拉公司 | 编码和解码数据的方法和设备 |
CN1956368A (zh) * | 2005-10-26 | 2007-05-02 | 中兴通讯股份有限公司 | 基于单位阵及其循环移位阵的ldpc码向量译码装置和方法 |
CN1859012A (zh) * | 2006-05-26 | 2006-11-08 | 华中科技大学 | 一种结构化的ldpc编码方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106201781A (zh) | 2016-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xin et al. | Reliability mechanisms for very large storage systems | |
EP2394220B1 (en) | Distributed storage of recoverable data | |
US20200012809A1 (en) | Distributed network for storing a redundant array of independent blockchain blocks | |
CN106201781B (zh) | 一种基于右边正则纠删码的云数据存储方法 | |
CN107844976A (zh) | 一种基于区块链的存证应用交易系统及方法 | |
CN101820426B (zh) | 一种在线备份服务软件中的数据压缩方法 | |
CN105120003B (zh) | 一种实现云环境下数据备份的方法 | |
CN102387179B (zh) | 分布式文件系统及其结点、存储方法和存储控制方法 | |
CN105302500B (zh) | 一种基于动态条带构造的分布式编码方法 | |
CN103336785A (zh) | 一种基于网络编码的分布式存储方法及其装置 | |
CN111625396B (zh) | 备份数据的校验方法、服务器及存储介质 | |
CN103761171B (zh) | 一种针对二进制编码冗余存储系统的低带宽数据重构方法 | |
Lin et al. | Novel repair-by-transfer codes and systematic exact-MBR codes with lower complexities and smaller field sizes | |
CN106484559A (zh) | 一种校验矩阵的构造方法及水平阵列纠删码的构造方法 | |
CN104331345A (zh) | 一种数据恢复方法 | |
CN107340971A (zh) | 一种数据存储与恢复架构与方法 | |
André et al. | Archiving cold data in warehouses with clustered network coding | |
WO2024001494A1 (zh) | 一种数据存储的方法、单节点服务器及设备 | |
CN103650462B (zh) | 基于同态的自修复码的编码、解码和数据修复方法及其存储系统 | |
CN109101360B (zh) | 一种基于布隆过滤器和交叉编码的数据完整性保护方法 | |
CN102843212A (zh) | 编解码处理方法及装置 | |
Bao et al. | An adaptive erasure code for jointcloud storage of internet of things big data | |
CN107153661A (zh) | 一种基于hdfs系统的数据的存储、读取方法及其装置 | |
CN104782101B (zh) | 用于分布式网络存储的自修复码的编码、重构和恢复方法 | |
CN104915609A (zh) | 一种基于Lagrange插值法和多云的数据隐藏方法 |
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 |