CN106612272A - 云存储中一种数据篡改的验证和恢复算法 - Google Patents
云存储中一种数据篡改的验证和恢复算法 Download PDFInfo
- Publication number
- CN106612272A CN106612272A CN201610543727.3A CN201610543727A CN106612272A CN 106612272 A CN106612272 A CN 106612272A CN 201610543727 A CN201610543727 A CN 201610543727A CN 106612272 A CN106612272 A CN 106612272A
- Authority
- CN
- China
- Prior art keywords
- data
- block
- server
- user
- label
- 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
Classifications
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- 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/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
云存储中一种数据篡改的验证和恢复算法,本发明提出一种云存储空间内数据的验证和篡改数据的恢复方法,可以对云端数据进行持有性验证,一旦发现数据被篡改,可以要求服务器定位篡改数据并监督服务器完成数据恢复,并支持数据的修改;本方法主要包括四部分,分别是数据编码、数据验证、数据恢复、数据修改,首先利用编码技术保持数据篡改在一定比例下能够进行恢复,然后计算数据的持有性标签,后续对持有性标签计算确定持有性,然后在对数据进行恢复。支持数据属主自主修改数据。本发明所示的数据恢复方法,恢复能力强、准确度高;计算开销小,支持数据损坏比例较高的数据恢复。
Description
技术领域
计算机存储、云存储中数据完整性的验证;篡改、损坏数据的恢复
背景技术
随着云技术的发展,企业和个人愈来愈倾向于将数据存储在云端;由此也带来了数据的安全问题,数据存储在云端,脱离了数据所有者的控制,或因云服务商系统不稳定、云空间被恶意攻击,将造成数据丢失和损坏。用户在不知情的情况下,将因为数据不完整而造成各种损失;那么如何确定云端数据是否完整呢?数据在存储空间内被破坏后,数据不再完整,如何根据现有数据精确恢复被修改的部分呢?
当前云存储系统使用副本和纠删码两种方法对用户数据进行冗余存储来保证系统的可靠性,但是修复时都需要传输整个文件,占用大量网络资源,给分布式系统数据中心增加了巨大的压力,造成的网络拥堵也严重降低了用户对数据读取性能。
数据在上传到云存储中心之前进行编码,可以有效的检查到数据是否被篡改或者丢失,采用从编码的方式能有效的实现数据的完整性证明。但是用户在得到数据已经被篡改后,能否恢复才是首要关心的问题单独采用编码,不能有效的定位数据损坏的地方,更不能实现恢复,所以,数据编码后,采用哈希算法,计算数据的块的哈希值对数据进行定位,当数据块损坏的数量没有达到额定值的时候,就可以利用其它数据块进行数据恢复。
发明内容
针对现有技术的上述不足,本发明提出了云存储中一种数据篡改的验证和恢复算法。
为解决上述问题,本发明提出了以下技术方案:
提出一种云存储空间内数据的验证和篡改数据的恢复方法,可以对云端数据进行持有性验证,一旦发现数据被篡改,可以要求服务器定位篡改数据并监督服务器完成数据恢复,并支持数据的修改;本方法主要包括四部分,分别是数据编码、数据验证、数据恢复、数据修改,首先利用编码技术保持数据篡改在一定比例下能够进行恢复,然后计算数据的持有性标签,后续对持有性标签计算确定持有性,然后在对数据进行恢复。支持数据属主自主修改数据。具体实施步骤如下:
步骤1:数据编码。
步骤2:哈希计算生成持有性标签。
步骤3:数据验证。
步骤4:数据恢复。
步骤5:数据修改。
本发明的有益效果是:
1、本发明所示的数据恢复方法,恢复能力强、准确度高;
2、计算开销小,支持数据损坏比例较高的数据恢复。
具体实施方式
本方法主要包括数据编码、哈希计算生成持有性标签、数据完整性验证、数据恢复、数据更新几个模块。
步骤1:数据编码
首先,定义一个k阶的可逆的矩阵G,作为编码矩阵:
矩阵中,任意g不为0,并且任意两个g值不相等,且n>k;由此可知在矩阵中k列组成的矩阵是可逆的。所以,矩阵G可以表示为:G=(G1,G2,...,Gn)
将待上传到云端的数据F分为块,F=(F1,F2,...,Fk),然后从编码矩阵G中选取k列对数据块进行编码,设码元为C,则有:
FiGi=Ci
然后将码元块与编码矩阵组成码块(Block),即:Blocki=(Ci,Gi),由于G是可逆的,所以在解码时有Fi=CiGi -1,首先从任意数量的码块中选取k个码块,选取码元子集组成译码元Q,然后按照对应的书序即可还原数据块Fi。
步骤2:哈希计算生成持有性标签
由于编码不能定位数据,所以计算各个码块的哈希值
采用AES算法,哈希码块,生成数据的持有性标签;随机选择三个密钥K1,K2,K3,设置挑战次数为t,每次挑战的数据块数量s,s=k+ε,ε=-lnδ,δ是译码的失败概率,为每次应答计算验证标签,兵将编码后的数据块、哈希值、加密验证标签存储于服务器,计算方法如下:
(1)从AES算法中选取f函数和h函数计算第i个码块预处理密钥和索引预处理密钥:
(2)使用索引预处理密钥和伪随机函数计算数据块的索引Ij:
Ij∈[1,2,...,t];1≤j≤k
(3)计算第i次待加密标签tagi,并使用AES对齐加密:
tagi=Hash(PKi,Block(Ij),Hash(Block(Ij)))
将数据块上传到云服务器,保存哈希值。
步骤3:数据验证
挑战时,用户向服务器发送生成的PKi和CKi,服务器利用这两个值计算得带待加密的标签tagi,并将存储的tagi‘发送给用户,用户利用服务器返回的标签译码,如果解密成功则认为验证成功,否则验证失败。具体算法如下:
(1)用户计算并将值发送个服务器
(2)服务器计算tagi=Hash(PKi,Block(Ij),Hash(Block(Ij))),并将结果tagi和存储的tagi‘发送给用户。
(3)用户计算(tagi‘,AES(i,tagi),如果结果为0,则说明解密成功,认为数据块没有损坏,如果不是,则数据块已经被篡改。
步骤4:数据恢复
当用户验证失败,服务器将通过本地验证的数据块的块号i对应的Hash值发送给用户,用户再次验证作出应答。验证过程中用户将从服务器得到的数据与对应的Hash值进行异或并统计验证完整的码块,若统计正确的数量小于k,则认为数据无法恢复,否则将索引号和编码矩阵发送给服务器;服务器利用从用户接收到的索引数据块进行译码并再次编码,将计算编码后码元的Hash值发送给用户,如果协助校验正确则对数据进行更新,否则数据恢复失败。
数据修复过程中服务器随机产生新的随机矩阵G,并编码Cn+i=FGn+i(其中1≤i≤n),将Gj与Cj组成新数据块Blockj=(Cj,Gj)(j>n+1)代替被篡改数据,并重新计算数据块的Hash值更新对应码块的哈希值(Sfi)。具体算法设计如下:
(1)计算Bi=(Hash(Blocki),Sfi),并将Bi存储到校验集中,从校验集中抽取k+1个不同的数据块,并将k个码块有序子集组成译码元Q和译码矩阵P,计算:D=QP-1,验证DGk+1=Ck+1,如果相等,计算
将VS值发送给用户进行数据块恢复,用来代替受损的数据块。并更新块Hash值,重新计算挑战一应答标签并更新服务器中的验证标签。
步骤5:数据修改
数据的修改主要包括插入和删除操作。
数据插入算法如下:
用户插入待更新的数据并计算插入数据长度和插人数据位置,如果插入数据长度不为k的整数倍,则填充数据0使得数据长为k的整数倍;然后对存在数据插入的行进行编码:
{Cij}l×n={dij}l×kG
重新验证标签与恢复校验码,并更新Hash值,再将{Cij}l×n插入第i行,并更新验证标签与Hash值。
数据删除算法:
删除第i行数据并计算删除数据的长度,若删除数据长度为k的整数倍,则从第1个元素开始,直接删除该数据,如果长度不为k的整数倍,则将删除数据用0代替,并计算:
{Cij}l×n={dij}1×kG
然后更新Hash值并重新计算验证标签和恢复校验码块,如果用户直接删除第i行数据,那么服务器也将所有码块中的第k+i个元素删除,否则更新第k+i个元素值和新的Hash值和验证标签。
Claims (6)
1.基于不确定连续属性的决策树分类器构建方法,本发明涉及计算机存储、云存储中数据完整性的验证领域;具体的涉及篡改、损坏数据的恢复,其特征是,包括如下步骤:
步骤1:数据编码
步骤2:哈希计算生成持有性标签
步骤3:数据验证
步骤4:数据恢复
步骤5:数据修改。
2.根据权利要求1中所述的基于不确定连续属性的决策树分类器构建方法,其特征是,步骤1中的具体实施过程如下:
步骤1:数据编码
首先,定义一个k阶的可逆的矩阵G,作为编码矩阵:
矩阵中,任意g不为0,并且任意两个g值不相等,且n>k;由此可知在矩阵中k列组成的矩阵是可逆的,所以,矩阵G可以表示为:
将待上传到云端的数据F分为块,,然后从编码矩阵G中选取k列对数据块进行编码,设码元为C,则有:
然后将码元块与编码矩阵组成码块(Block),即:,由于G是可逆的,所以在解码时有,首先从任意数量的码块中选取k个码块,选取码元子集组成译码元Q,然后按照对应的书序即可还原数据块。
3.根据权利要求1中所述的基于不确定连续属性的决策树分类器构建方法,其特征是,步骤2中的具体阐述过程如下:
步骤2:哈希计算生成持有性标签
由于编码不能定位数据,所以计算各个码块的哈希值
采用AES算法,哈希码块,生成数据的持有性标签;随机选择三个密钥,设置挑战次数为t,每次挑战的数据块数量s,,为每次应答计算验证标签,兵将编码后的数据块、哈希值、加密验证标签存储于服务器,计算方法如下:
(1)从AES算法中选取f函数和h函数计算第i个码块预处理密钥和索引预处理密钥:
(2)使用索引预处理密钥和伪随机函数计算数据块的索引:
(3)计算第i次待加密标签,并使用AES对齐加密:
将数据块上传到云服务器,保存哈希值。
4.根据权利要求1中所述的基于不确定连续属性的决策树分类器构建方法,其特征是,步骤3中的具体描述如下:
步骤3:数据验证
挑战时,用户向服务器发送生成的和,服务器利用这两个值计算得带待加密的标签并将存储的发送给用户,用户利用服务器返回的标签译码,如果解密成功则认为验证成功,否则验证失败,具体算法如下:
(1)用户计算,并将值发送个服务器
(2)服务器计算,并将结果和存储的发送给用户
(3)用户计算,如果结果为0,则说明解密成功,认为数据块没有损坏,如果不是,则数据块已经被篡改。
5.根据权利要求1中 所述的基于不确定连续属性的决策树分类器构建方法,其特征是,步骤4的具体计算过程如下:
步骤4:数据恢复
当用户验证失败,服务器将通过本地验证的数据块的块号i对应的Hash值发送给用户,用户再次验证作出应答,验证过程中用户将从服务器得到的数据与对应的Hash值进行异或并统计验证完整的码块,若统计正确的数量小于k,则认为数据无法恢复,否则将索引号和编码矩阵发送给服务器;服务器利用从用户接收到的索引数据块进行译码并再次编码,将计算编码后码元的Hash值发送给用户,如果协助校验正确则对数据进行更新,否则数据恢复失败
数据修复过程中服务器随机产生新的随机矩阵G,并编码(其中1≤i≤n),将与组成新数据块(j>n+1)代替被篡改数据,并重新计算数据块的Hash值更新对应码块的哈希值,具体算法设计如下:
(1)计算,并将存储到校验集中,从校验集中抽取k+1个不同的数据块,并将k个码块有序子集组成译码元Q和译码矩阵P,计算:D=QP-1,验证如果相等,计算
将VS值发送给用户进行数据块恢复,用来代替受损的数据块,并更新块Hash值,重新计算挑战一应答标签并更新服务器中的验证标签。
6.根据权利要求1中所述的基于不确定连续属性的决策树分类器构建方法,其特征是,步骤5的具体描述如下:
步骤5:数据修改
数据的修改主要包括插入和删除操作
数据插入算法如下:
用户插入待更新的数据并计算插入数据长度和插人数据位置,如果插入数据长度不为k的整数倍,则填充数据0使得数据长为k的整数倍;然后对存在数据插入的行进行编码:
重新验证标签与恢复校验码,并更新Hash值,再将插入第i行,并更新验证标签与Hash值
数据删除算法:
删除第i行数据并计算删除数据的长度,若删除数据长度为k的整数倍,则从第1个元素开始,直接删除该数据,如果长度不为k的整数倍,则将删除数据用0代替,并计算:
然后更新Hash值并重新计算验证标签和恢复校验码块,如果用户直接删除第i行数据,那么服务器也将所有码块中的第k+i个元素删除,否则更新第k+i个元素值和新的Hash值和验证标签。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610543727.3A CN106612272A (zh) | 2016-07-12 | 2016-07-12 | 云存储中一种数据篡改的验证和恢复算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610543727.3A CN106612272A (zh) | 2016-07-12 | 2016-07-12 | 云存储中一种数据篡改的验证和恢复算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106612272A true CN106612272A (zh) | 2017-05-03 |
Family
ID=58614795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610543727.3A Pending CN106612272A (zh) | 2016-07-12 | 2016-07-12 | 云存储中一种数据篡改的验证和恢复算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106612272A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161448A (zh) * | 2018-11-07 | 2020-05-15 | 北京燧昀科技有限公司 | 数据存储方法、数据校验方法、装置、设备及存储介质 |
CN111539870A (zh) * | 2020-02-25 | 2020-08-14 | 成都信息工程大学 | 一种基于纠删码的新媒体图像的篡改恢复方法及装置 |
CN112261388A (zh) * | 2020-09-07 | 2021-01-22 | 中国电影器材有限责任公司 | 一种卫星传送数字电影包的冗余恢复方法、装置和系统 |
CN113568786A (zh) * | 2021-09-23 | 2021-10-29 | 四川大学 | 一种数据恢复方法、装置、设备及存储介质 |
CN114050889A (zh) * | 2021-11-06 | 2022-02-15 | 东南大学 | 一种带权错误检测的低功耗广域网抗干扰方法 |
CN116644071A (zh) * | 2023-06-08 | 2023-08-25 | 中国长江三峡集团有限公司 | 一种物资编码管理方法、装置、计算机设备及存储介质 |
CN116956364A (zh) * | 2023-09-21 | 2023-10-27 | 中航金网(北京)电子商务有限公司 | 虚拟化产品完整性校验方法、装置、系统及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103139149A (zh) * | 2011-11-25 | 2013-06-05 | 国民技术股份有限公司 | 一种云存储的数据存取方法及系统 |
CN103607393A (zh) * | 2013-11-21 | 2014-02-26 | 浪潮电子信息产业股份有限公司 | 一种基于数据分割的数据安全保护方法 |
CN103699851A (zh) * | 2013-11-22 | 2014-04-02 | 杭州师范大学 | 一种面向云存储的远程数据完整性验证方法 |
CN105354507A (zh) * | 2015-10-23 | 2016-02-24 | 浙江远望软件有限公司 | 一种云环境下的数据安全保密方法 |
US20160188689A1 (en) * | 2014-12-31 | 2016-06-30 | Vmware, Inc. | Disaster recovery of mobile data center via location-aware cloud caching |
-
2016
- 2016-07-12 CN CN201610543727.3A patent/CN106612272A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103139149A (zh) * | 2011-11-25 | 2013-06-05 | 国民技术股份有限公司 | 一种云存储的数据存取方法及系统 |
CN103607393A (zh) * | 2013-11-21 | 2014-02-26 | 浪潮电子信息产业股份有限公司 | 一种基于数据分割的数据安全保护方法 |
CN103699851A (zh) * | 2013-11-22 | 2014-04-02 | 杭州师范大学 | 一种面向云存储的远程数据完整性验证方法 |
US20160188689A1 (en) * | 2014-12-31 | 2016-06-30 | Vmware, Inc. | Disaster recovery of mobile data center via location-aware cloud caching |
CN105354507A (zh) * | 2015-10-23 | 2016-02-24 | 浙江远望软件有限公司 | 一种云环境下的数据安全保密方法 |
Non-Patent Citations (1)
Title |
---|
彭真,陈兰香,郭躬德: "云存储中基于喷泉码的数据恢复系统", 《计算机应用》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161448A (zh) * | 2018-11-07 | 2020-05-15 | 北京燧昀科技有限公司 | 数据存储方法、数据校验方法、装置、设备及存储介质 |
CN111539870A (zh) * | 2020-02-25 | 2020-08-14 | 成都信息工程大学 | 一种基于纠删码的新媒体图像的篡改恢复方法及装置 |
CN111539870B (zh) * | 2020-02-25 | 2023-07-14 | 成都信息工程大学 | 一种基于纠删码的新媒体图像的篡改恢复方法及装置 |
CN112261388A (zh) * | 2020-09-07 | 2021-01-22 | 中国电影器材有限责任公司 | 一种卫星传送数字电影包的冗余恢复方法、装置和系统 |
CN113568786A (zh) * | 2021-09-23 | 2021-10-29 | 四川大学 | 一种数据恢复方法、装置、设备及存储介质 |
CN113568786B (zh) * | 2021-09-23 | 2021-12-31 | 四川大学 | 一种数据恢复方法、装置、设备及存储介质 |
CN114050889A (zh) * | 2021-11-06 | 2022-02-15 | 东南大学 | 一种带权错误检测的低功耗广域网抗干扰方法 |
CN114050889B (zh) * | 2021-11-06 | 2023-09-26 | 东南大学 | 一种带权错误检测的低功耗广域网抗干扰方法 |
CN116644071A (zh) * | 2023-06-08 | 2023-08-25 | 中国长江三峡集团有限公司 | 一种物资编码管理方法、装置、计算机设备及存储介质 |
CN116644071B (zh) * | 2023-06-08 | 2024-04-05 | 中国长江三峡集团有限公司 | 一种物资编码管理方法、装置、计算机设备及存储介质 |
CN116956364A (zh) * | 2023-09-21 | 2023-10-27 | 中航金网(北京)电子商务有限公司 | 虚拟化产品完整性校验方法、装置、系统及电子设备 |
CN116956364B (zh) * | 2023-09-21 | 2024-02-09 | 中航国际金网(北京)科技有限公司 | 虚拟化产品完整性校验方法、装置、系统及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106612272A (zh) | 云存储中一种数据篡改的验证和恢复算法 | |
CN106612172B (zh) | 云存储中一种可验证还原数据真实性的数据篡改恢复算法 | |
Ateniese et al. | Remote data checking using provable data possession | |
CN107220559B (zh) | 一种针对不可篡改文件的加密存储方法 | |
CN102833265B (zh) | 一种基于格理论的签名方案及其安全线性网络编码方法 | |
RU2696425C1 (ru) | Способ двумерного контроля и обеспечения целостности данных | |
CN105320899A (zh) | 一种面向用户的云存储数据完整性保护方法 | |
US8297510B1 (en) | Mathematical method of 2D barcode authentication and protection for embedded processing | |
CN106650503A (zh) | 基于ida的云端数据完整性验证及恢复方法 | |
CN110008755B (zh) | 一种云存储可撤销动态数据完整性验证系统及方法 | |
CN108039943A (zh) | 一种可验证的加密搜索方法 | |
CN106776111A (zh) | 一种基于lrc纠删码的可恢复云存储系统 | |
CN112054897B (zh) | 基于区块链的保护隐私的外包物联网数据及其备份的完整性校验方法 | |
CN111541666B (zh) | 基于无证书且含隐私保护功能的云端数据完整性审计方法 | |
CN106611135A (zh) | 一种存储数据完整性验证及恢复方法 | |
CN106027245A (zh) | 密钥共享方法及装置 | |
CN110011998B (zh) | 一种基于身份的多备份远程数据持有验证方法 | |
CN104601563B (zh) | 基于mle的可公开验证云存储数据持有性的方法 | |
CN106611136A (zh) | 云存储中一种数据篡改验证方法 | |
JPWO2018174112A1 (ja) | ネットワーク上の装置認証技術 | |
Chen et al. | Robust dynamic remote data checking for public clouds | |
CN109101360B (zh) | 一种基于布隆过滤器和交叉编码的数据完整性保护方法 | |
CN111314090B (zh) | 一种基于比特级门限的安全多云端口令管理方法 | |
CN106612171A (zh) | 云存储中一种数据软恢复方法 | |
CN106612274A (zh) | 云计算中一种基于同态性的共享数据验证算法 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170503 |