System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据写入方法,恢复方法,读取方法以及对应装置制造方法及图纸_技高网

数据写入方法,恢复方法,读取方法以及对应装置制造方法及图纸

技术编号:40801345 阅读:7 留言:0更新日期:2024-03-28 19:27
本说明书实施例提供一种数据写入,数据恢复,数据读取的方法和相应的安全磁盘装置。数据写入方法包括,先将用户数据块写入写缓存,在一定条件下,读取写缓存中以逻辑地址标识的多个用户数据块。针对各用户数据块,为其分配物理地址,并对其进行认证加密,生成加密数据块和认证信息,进而生成该用户数据块对应的第一元数据,所述第一元数据组织为KV对的形式,并包括逻辑地址,物理地址以及认证信息。向主机磁盘提交针对多个用户数据块的多条写命令,使得磁盘按照对应的物理地址存储加密数据块。此外,还将各个用户数据块对应的第一元数据写入通过LSM树维护的第一元数据表中。然后,向LSM树和主机磁盘发出同步操作命令,使其完成数据写入的持久化。

【技术实现步骤摘要】

本说明书一个或多个实施例涉及计算机中的数据读写安全领域,尤其涉及一种安全的数据写入方法,读取方法以及数据读写管理装置。


技术介绍

1、随着各行业计算技术的发展,以及云端和终端用户的增加,人们将大量数据存储在各种计算机设备中。在行业发展的同时,人们对于设备和数据安全的关注也在日益增加。为了确保设备和数据的安全性,各个架构厂商也分别提出了各自的解决方案,如arm提出了可信区技术(trustzone),amd提出了安全虚拟机加密技术(sev),英特尔提出了软件防护扩展(sgx)技术,等等。这些解决方案为用户提供一个安全的可信执行环境tee,用于机密地保存和处理数据,使其免受不可信的内核与传统应用程序的损害。

2、然而,对于磁盘数据的安全性保护仍然存在不足,存在对此进行改进的需求。


技术实现思路

1、本说明书一个或多个实施例描述了一种安全虚拟磁盘方案,以及根据该安全虚拟磁盘进行数据写入,数据恢复和数据读取的方法及装置。该方案能够增强对磁盘数据安全性的保护。

2、根据第一方面,提供一种数据写入方法,包括:

3、在预设触发条件下,读取写缓存中的多个用户数据块,各用户数据块以其逻辑地址标识;

4、针对各用户数据块,为其分配物理地址,并对其进行认证加密,生成加密数据块和认证信息,进而生成该用户数据块对应的第一元数据,所述第一元数据组织为kv对的形式,并包括逻辑地址,物理地址以及所述认证信息;

5、向主机磁盘提交针对所述多个用户数据块的多条写命令,使得磁盘按照对应的物理地址,将所述加密数据块存储于磁盘的第一存储区;

6、将各个用户数据块对应的所述第一元数据写入通过lsm树维护的第一元数据表中;

7、向所述lsm树和主机磁盘发出同步操作命令,使其完成数据写入的持久化。

8、根据第二方面,提供了一种数据恢复方法,包括:

9、从磁盘中恢复出通过lsm树维护的第一元数据表,其中记录各个用户数据块对应的第一元数据,各条第一元数据包括,用户数据块的逻辑地址,物理地址以及认证信息,并附加有同步id;

10、根据各条第一元数据的同步id,确定出未完成同步的第一元数据;

11、丢弃未完成同步的第一元数据的相关数据。

12、根据第三方面,提供了一种数据读取方法,包括:

13、接收读取请求,其中包括目标逻辑地址;

14、以所述目标逻辑地址为键,查询第一元数据表,读取目标元数据,该目标元数据还包括目标物理地址和目标认证信息;其中,上述第一元数据表通过lsm树的方式维护,其中记录各个用户数据块对应的元数据;

15、根据所述目标物理地址,从磁盘中读取加密数据块,并根据所述目标认证信息,对所述加密数据块进行解密和认证,得到用户数据块。

16、根据第四方面,提供了一种数据写入装置,包括:

17、读取单元,配置为在预设触发条件下,读取写缓存中的多个用户数据块,各用户数据块以其逻辑地址标识;

18、生成单元,配置为针对各用户数据块,为其分配物理地址,并对其进行认证加密,生成加密数据块和认证信息,进而生成该用户数据块对应的第一元数据,所述第一元数据组织为kv对的形式,并包括逻辑地址,物理地址以及所述认证信息;

19、第一写入单元,配置为向主机磁盘提交针对所述多个用户数据块的多条写命令,使得磁盘按照对应的物理地址,将所述加密数据块存储于磁盘的第一存储区;

20、第二写入单元,配置为将各个用户数据块对应的所述第一元数据写入通过lsm树维护的第一元数据表中;

21、同步单元,配置为向所述lsm树和主机磁盘发出同步操作命令,使其完成数据写入的持久化。

22、根据第五方面,提供了一种数据恢复装置,包括:

23、恢复单元,配置为从磁盘中恢复出通过lsm树维护的第一元数据表,其中记录各个用户数据块对应的第一元数据,各条第一元数据包括,用户数据块的逻辑地址,物理地址以及认证信息,并附加有同步id;

24、确定单元,配置为根据各条第一元数据的同步id,确定出未完成同步的第一元数据;

25、丢弃单元,配置为丢弃未完成同步的第一元数据的相关数据。

26、根据第六方面,提供了一种数据读取装置,包括:

27、接收单元,配置为接收读取请求,其中包括目标逻辑地址;

28、查询单元,配置为以所述目标逻辑地址为键,查询第一元数据表,读取目标元数据,该目标元数据还包括目标物理地址和目标认证信息;其中,上述第一元数据表通过lsm树的方式维护,其中记录各个用户数据块对应的元数据;

29、获取单元,配置为根据所述目标物理地址,从磁盘中读取加密数据块,并根据所述目标认证信息,对所述加密数据块进行解密和认证,得到用户数据块。

30、根据第七方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面至第三方面所述的方法。

31、在本说明书实施例提供的方案中,提出一种通过分层log结构实现的安全磁盘,或称为安全虚拟磁盘。该安全磁盘通过多个层级的基于log的数据结构实现安全性。每个层级都在更低层级提供的数据抽象结构的基础上,添加越来越高级的存储功能和/或具有更强安全属性的新的数据抽象结构,从而逐层具有更高的安全性和功能性。可以验证,通过这样分层级实现的安全磁盘,能够实现数据的核心安全要求:写私密性和读正确性,具有全方位的cifcai安全性。并且,该安全磁盘方案可以抵御回滚攻击。

本文档来自技高网...

【技术保护点】

1.一种数据写入方法,包括:

2.根据权利要求1所述的方法,其中,所述预设触发条件包括,所述写缓存写满;或者,收到进行同步操作的指令。

3.根据权利要求1所述的方法,其中,所述认证信息包括加密密钥以及产生的消息认证码MAC。

4.根据权利要求1所述的方法,其中,为其分配物理地址包括:

5.根据权利要求4所述的方法,其中,所述块分配信息包括,位图形式的块状态表,以及若干条块分配日志;所述若干条块分配日志被定期合并,以更新所述块状态表。

6.根据权利要求1所述的方法,其中,将所述第一元数据写入以LSM树方式维护的第一元数据表中,包括:

7.根据权利要求6所述的方法,其中,所述主同步ID存储于独立于所述磁盘的可信持久化存储介质。

8.根据权利要求6所述的方法,将所述第一元数据写入以LSM树方式维护的第一元数据表中,还包括:

9.根据权利要求8所述的方法,其中,所述log元数据信息包括,log信息表和log分配表,所述log信息表至少记录日志id,日志类别;所述日志分配表至少记录日志id及其分配的分块id。

10.根据权利要求8所述的方法,其中,将所述目标日志数据加密存储于分配的数据分块中,包括:

11.根据权利要求8所述的方法,其中,所述第二元数据记录为journal日志的形式,所述journal日志包括按时间顺序排列的多条记录的记录序列;

12.根据权利要求11所述的方法,其中,所述journal日志通过第二加密格式存储于磁盘的第二存储区;所述第二加密格式为链式加密,其中按序排列的每一数据块存储前一数据块的认证信息。

13.根据权利要求11所述的方法,其中,所述更新与log日志相关的第二元数据,还包括:

14.根据权利要求13所述的方法,其中,所述第一快照数据加密存储于所述第一存储区的第一块空间;所述更新与log日志相关的第二元数据,还包括:

15.根据权利要求13所述的方法,其中,根据第二快照数据生成第二快照记录,包括:

16.根据权利要求1所述的方法,其中,所述写缓存是位于可信执行环境TEE中的内存区段。

17.一种数据恢复方法,包括:

18.根据权利要求17所述的方法,其中,从磁盘中恢复出通过LSM树维护的第一元数据表,包括:

19.根据权利要求17所述的方法,其中,确定出未完成同步的第一元数据,包括:

20.一种数据读取方法,包括:

21.一种数据写入装置,包括:

22.一种数据恢复装置,包括:

23.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-20中任一项所述的方法。

...

【技术特征摘要】

1.一种数据写入方法,包括:

2.根据权利要求1所述的方法,其中,所述预设触发条件包括,所述写缓存写满;或者,收到进行同步操作的指令。

3.根据权利要求1所述的方法,其中,所述认证信息包括加密密钥以及产生的消息认证码mac。

4.根据权利要求1所述的方法,其中,为其分配物理地址包括:

5.根据权利要求4所述的方法,其中,所述块分配信息包括,位图形式的块状态表,以及若干条块分配日志;所述若干条块分配日志被定期合并,以更新所述块状态表。

6.根据权利要求1所述的方法,其中,将所述第一元数据写入以lsm树方式维护的第一元数据表中,包括:

7.根据权利要求6所述的方法,其中,所述主同步id存储于独立于所述磁盘的可信持久化存储介质。

8.根据权利要求6所述的方法,将所述第一元数据写入以lsm树方式维护的第一元数据表中,还包括:

9.根据权利要求8所述的方法,其中,所述log元数据信息包括,log信息表和log分配表,所述log信息表至少记录日志id,日志类别;所述日志分配表至少记录日志id及其分配的分块id。

10.根据权利要求8所述的方法,其中,将所述目标日志数据加密存储于分配的数据分块中,包括:

11.根据权利要求8所述的方法,其中,所述第二元数据记录为journal日志的形式,所述journal...

【专利技术属性】
技术研发人员:田洪亮陈青松宋少威闫守孟
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1