数据存储方法、装置、计算机设备、存储介质制造方法及图纸

技术编号:30335235 阅读:15 留言:0更新日期:2021-10-10 01:01
本发明专利技术公开了一种数据存储方法、装置、计算机设备、存储介质,所述方法包括:根据待存储数据的大小和存储系统的容量,对待存储数据进行分块以得到多个明文数据块,并根据多个明文数据块生成明文验证块;对多个明文数据块分别进行哈希运算得到每个明文数据块对应的明文哈希值,基于多个明文哈希值构建明文哈希树;对多个明文数据块分别进行加密以得到对应的密文数据块,根据多个密文数据块生成密文验证块;对多个密文数据块进行哈希运算得到每个密文数据块对应的密文哈希值,基于多个密文哈希值构建密文哈希树;将明文验证块、明文哈希树、密文验证块和密文哈希树存储于存储系统的数据库中。由此,该方法能够节省存储空间,提升数据安全性。据安全性。据安全性。

【技术实现步骤摘要】
数据存储方法、装置、计算机设备、存储介质


[0001]本专利技术涉及数据存储
,特别涉及一种数据存储方法、一种数据存储装置、一种计算机设备和一种非临时性计算机可读存储介质。

技术介绍

[0002]存储系统作为数据的保存空间,是数据保护的最后一道防线。传统的数据存储方案都是双机备份,需要完整备份当前数据。当数据量非常大的时候,所需要的备份空间也会变得非常大。
[0003]随着存储系统由本地直连向着网络化和分布式方向的发展,存储系统变得更易受到攻击,相对静态的存储系统往往成为攻击者的首选目标,达到窃取、篡改或破坏数据的目的。因此,存储安全变得至关重要。

技术实现思路

[0004]本专利技术旨在至少从一定程度上解决上述技术中的技术问题之一。
[0005]为此,本专利技术的第一个目的在于提出一种数据存储方法,该方法利用纠删码技术以低存储空间代价冗余备份数据而不占用多倍存储空间,并通过采用加密算法对数据进行加密,这样可以在保证数据完备性的同时整体提升数据的安全性。
[0006]本专利技术的第二个目的在于提出一种数据存储装置。
[0007]本专利技术的第三个目的在于提出一种计算机设备。
[0008]本专利技术的第四个目的在于提出一种非临时性计算机可读存储介质。
[0009]为实现上述目的,本专利技术第一方面实施例提出了一种数据存储方法,该方法包括:根据待存储数据的大小和存储系统的容量,对所述待存储数据进行分块,以得到多个明文数据块,并根据多个所述明文数据块,生成明文验证块;对多个所述明文数据块分别进行哈希运算,得到每个所述明文数据块对应的明文哈希值,并基于多个所述明文哈希值,构建明文哈希树;对多个所述明文数据块分别进行加密,以得到对应的密文数据块,并根据多个所述密文数据块,生成密文验证块;对多个所述密文数据块进行哈希运算,得到每个所述密文数据块对应的密文哈希值,并基于多个所述密文哈希值,构建密文哈希树;将所述明文验证块、所述明文哈希树、所述密文验证块和所述密文哈希树,存储于所述存储系统的数据库中。
[0010]根据本专利技术实施例的数据存储方法,先根据待存储数据的大小和存储系统的容量,对待存储数据进行分块,以得到多个明文数据块,并根据多个明文数据块,生成明文验证块,然后对多个明文数据块分别进行哈希运算,得到每个明文数据块对应的明文哈希值,并基于多个明文哈希值,构建明文哈希树,并且,对多个明文数据块分别进行加密,以得到对应的密文数据块,并根据多个密文数据块,生成密文验证块,并对多个密文数据块进行哈希运算,得到每个密文数据块对应的密文哈希值,并基于多个密文哈希值,构建密文哈希树,最后将明文验证块、明文哈希树、密文验证块和密文哈希树,存储于存储系统的数据库
中。由此,该方法利用纠删码技术以低存储空间代价冗余备份数据而不占用多倍存储空间,并通过采用加密算法对数据进行加密,这样可以在保证数据完备性的同时整体提升数据的安全性。
[0011]另外,根据本专利技术上述提出的数据存储方法还可以具有如下附加的技术特征:根据本专利技术的一个实施例,上述的数据存储方法,还包括:从所述存储系统的数据库中,获取所述明文验证块、所述明文哈希树、所述密文验证块和所述密文哈希树;基于所述密文验证块和所述密文哈希树中的多个所述密文哈希值,对多个所述密文数据块,进行验证;在对多个所述密文数据块验证成功的情况下,对多个所述密文数据块,进行解密,以得到对应解密后的数据块;基于所述明文验证块和所述明文哈希树中多个所述明文哈希值,对多个所述解密后的数据块,进行验证;在对多个所述解密后的数据块验证成功的情况下,对多个所述解密后的数据块,进行拼接,以得到原始数据。
[0012]根据本专利技术的一个实施例,上述的数据存储方法,还包括:在对所述多个密文数据块验证失败,或者,对多个所述解密后的数据块验证失败的情况下,终止读取。
[0013]根据本专利技术的一个实施例,上述的数据存储方法,还包括:获取待修改数据的偏移量和长度,确定所述待修改数据的范围;根据所述待修改数据的范围,重新构建所述明文哈希树和所述密文哈希树。
[0014]为实现上述目的,本专利技术第二方面实施例提出了一种数据存储装置,该装置包括:分块模块,用于根据待存储数据的大小和存储系统的容量,对所述待存储数据进行分块,以得到多个明文数据块,并根据多个所述明文数据块,生成明文验证块;第一构建模块,用于对多个所述明文数据块分别进行哈希运算,得到每个所述明文数据块对应的明文哈希值,并基于多个所述明文哈希值,构建明文哈希树;加密模块,用于对多个所述明文数据块分别进行加密,以得到对应的密文数据块,并根据多个所述密文数据块,生成密文验证块;第二构建模块,用于对多个所述密文数据块进行哈希运算,得到每个所述密文数据块对应的密文哈希值,并基于多个所述密文哈希值,构建密文哈希树;存储模块,用于将所述明文验证块、所述明文哈希树、所述密文验证块和所述密文哈希树,存储于所述存储系统的数据库中。
[0015]根据本专利技术实施例的数据存储装置,通过分块模块根据待存储数据的大小和存储系统的容量,对待存储数据进行分块,以得到多个明文数据块,并根据多个明文数据块,生成明文验证块,通过第一构建模块对多个明文数据块分别进行哈希运算,得到每个明文数据块对应的明文哈希值,并基于多个明文哈希值,构建明文哈希树,通过加密模块对多个明文数据块分别进行加密,以得到对应的密文数据块,并根据多个密文数据块,生成密文验证块,通过第二构建模块对多个密文数据块进行哈希运算,得到每个密文数据块对应的密文哈希值,并基于多个密文哈希值,构建密文哈希树,通过存储模块将明文验证块、明文哈希树、密文验证块和密文哈希树,存储于存储系统的数据库中。由此,该装置利用纠删码技术以低存储空间代价冗余备份数据而不占用多倍存储空间,并通过采用加密算法对数据进行加密,这样可以在保证数据完备性的同时整体提升数据的安全性。
[0016]另外,根据本专利技术上述提出的数据存储装置还可以具有如下附加的技术特征:根据本专利技术的一个实施例,上述的数据存储装置,还包括:第一获取模块,用于从所述存储系统的数据库中,获取所述明文验证块、所述明文哈希树、所述密文验证块和所述
密文哈希树;第一验证模块,用于基于所述密文验证块和所述密文哈希树中的多个所述密文哈希值,对多个所述密文数据块,进行验证;解密模块,用于在对多个所述密文数据块验证成功的情况下,对多个所述密文数据块,进行解密,以得到对应解密后的数据块;第二验证模块,用于基于所述明文验证块和所述明文哈希树中多个所述明文哈希值,对多个所述解密后的数据块,进行验证;拼接模块,用于在对多个所述解密后的数据块验证成功的情况下,对多个所述解密后的数据块,进行拼接,以得到原始数据。
[0017]根据本专利技术的一个实施例,上述的数据存储装置,还包括:终止模块,用于在对所述多个密文数据块验证失败,或者,对多个所述解密后的数据块验证失败的情况下,终止读取。
[0018]根据本专利技术的一个实施例,上述的数据存储装置,还包括:第二获取模块,用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储方法,其特征在于,包括:根据待存储数据的大小和存储系统的容量,对所述待存储数据进行分块,以得到多个明文数据块,并根据多个所述明文数据块,生成明文验证块;对多个所述明文数据块分别进行哈希运算,得到每个所述明文数据块对应的明文哈希值,并基于多个所述明文哈希值,构建明文哈希树;对多个所述明文数据块分别进行加密,以得到对应的密文数据块,并根据多个所述密文数据块,生成密文验证块;对多个所述密文数据块进行哈希运算,得到每个所述密文数据块对应的密文哈希值,并基于多个所述密文哈希值,构建密文哈希树;将所述明文验证块、所述明文哈希树、所述密文验证块和所述密文哈希树,存储于所述存储系统的数据库中。2.如权利要求1所述的数据存储方法,其特征在于,还包括:从所述存储系统的数据库中,获取所述明文验证块、所述明文哈希树、所述密文验证块和所述密文哈希树;基于所述密文验证块和所述密文哈希树中的多个所述密文哈希值,对多个所述密文数据块,进行验证;在对多个所述密文数据块验证成功的情况下,对多个所述密文数据块,进行解密,以得到对应解密后的数据块;基于所述明文验证块和所述明文哈希树中多个所述明文哈希值,对多个所述解密后的数据块,进行验证;在对多个所述解密后的数据块验证成功的情况下,对多个所述解密后的数据块,进行拼接,以得到原始数据。3.如权利要求2所述的数据存储方法,其特征在于,还包括:在对所述多个密文数据块验证失败,或者,对多个所述解密后的数据块验证失败的情况下,终止读取。4.如权利要求1所述的数据存储方法,其特征在于,还包括:获取待修改数据的偏移量和长度,确定所述待修改数据的范围;根据所述待修改数据的范围,重新构建所述明文哈希树和所述密文哈希树。5.一种数据存储装置,其特征在于,包括:分块模块,用于根据待存储数据的大小和存储系统的容量,对所述待存储数据进行分块,以得到多个明文数据块,并根据多个所述明文数据块,生成明文验证块;第一构建模块,用于对多个所述明文数据块分别进行哈希运算,得到每个所述明文数据块对应的明文哈希值,并基于多个所述明文哈希值,构建明文哈希树...

【专利技术属性】
技术研发人员:黄金煌
申请(专利权)人:北京紫光青藤微系统有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1