System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术一种固态硬盘存储领域,具体的涉及一种实现zns固态硬盘加密功能的方法。
技术介绍
1、目前,随着nand闪存的价格逐渐降低,固态硬盘(ssd)的数量逐年增加。 与传统硬盘不同,固态硬盘的存储单元是nand闪存。对于nand闪速存储器存储数据的能力,数据读取错误更可能随着pe的数量、数据读取的数量和数据存储时间的推移而增加,因此使得错误处理成为ssd的重要部分。在重试表中的大量读取数据增加了整个错误恢复流程(erf)所消耗的时间,并且降低了硬盘的数据读取效率。在zns架构中ssd设备对host提供了读写接口,host可以按照规则对ssd进行读写。当需要对某些zone的读写进行权限控制时,就需要额外的管理,zns协议中还并没有相关规定。
技术实现思路
1、本专利技术的目的是解决zone读写权限控制的需求。通过密码对相应的zone进行加密使其访问权限可以控制,防止非意料意外的应用对zone进行操作,提升ssd数据安全性。
2、具体地,本专利技术申请提供一种zns固态硬盘的加解密方法,其特征在于, 在进行加解密算法之前,基于zns固态硬盘各分区zone的读写频率,将zone分区分为zone冷区和zone热区,zone热区为读写频率次数>动态读写频次临界值,动态读写频次临界值为固态硬盘分区的总读写次数的均方根;zone冷区为固态硬盘中zone热区以外的区域;
3、zns固态硬盘进行读写操作时,直接访问zone冷区,而不对zone热区进行数据调用;且在z
4、进一步地,在进行io前,nand flash io的控制算法判断是否读写锁定;如果已锁定则需要先解锁,然后才能正常io。
5、进一步地,需要加密时,命令参数询问需加密的zone分区是否有附加zde;如果分区没有zde扩展区域,则需要对该分区zone增加zde,保存加密信息;如果有附加zde时,按照命令参数更新zde数据到对应的zde。
6、进一步地,使用zone管理命令设置valid, write_ctrl, read_ctrl等字段值,并提供与该字段匹配password;当设置valid为0,则加密功能不生效,此时write_ctrl,read_ctrl,无论为何值,zone上的io操作,不受加密功能影响,可正常进行读写操作。
7、进一步地,当前valid为非0时,则加密功能生效,write_ctrl控制zone的写入操作,当write_ctrl为非0时,则不能写入;为0时,则可以写入;当前valid为非0时,则加密功能生效,read_ctrl控制zone的读取操作,当read_ctrl为非0时,则不能读取;为0时,则可以读取。
8、进一步地,对已加密的zone进行io时需要先解密,根据zone管理命令,确定用户是否有权限或者密码是否匹配;用户有权限,如当前用户如果为root(管理员)或者owner,则可以不需要提供password即可进行解密操作;用户密码正确,匹配通过,则通过设置write_ctrl,read_ctrl为0,可以完成解密操作;若用户无权限且用户密码不匹配时,则返回错误提示,解密不成功,不能读取加密数据;io完成后,要恢复到原来的非零值。
9、进一步地,io结束后再恢复时,记录当前zone的zde的write_ctrl,read_ctrl值,使用zone管理命令确定密码是否匹配,匹配通过,则通过设置write_ctrl,read_ctrl为0,完成解密操作,用户可以进行读写操作;使用zone管理命令确定密码是否匹配,匹配不通过,不能完成解密操作,用户返回错误并拒绝进行读写操作,同时恢复设置write_ctrl,read_ctrl为非零值。
10、本专利技术的有益效果:动态设置zns固态硬盘zone冷区和zone热区;每一次动态更新数据后的zone热区和zone冷区的逻辑区域与物理分区映射关系表重新更新在zone冷区zde中,实现zns固态硬盘实时读写操作时只访问zone冷区,避免对zone热区进行高频次的读写操作造成的固件坏损;在冷区访问时,设定加解密数据结构和流程实现zns固态硬盘度的访问控制,提升zns固体硬盘的安全性;同时提供解密控制流程,减少对固态硬盘读写性能的额外影响。
本文档来自技高网...【技术保护点】
1.一种ZNS固态硬盘的加解密方法,其特征在于, 在进行加解密算法之前,基于ZNS固态硬盘各分区Zone的读写频率,将Zone分区分为Zone冷区和Zone热区,Zone热区为读写频率次数>动态读写频次临界值,动态读写频次临界值为固态硬盘分区的总读写次数的均方根;Zone冷区为固态硬盘中Zone热区以外的区域;
2.根据权利要求1所述的一种ZNS固态硬盘的加解密方法,其特征在于,在进行IO前,Nand flash IO的控制算法判断是否读写锁定;如果已锁定则需要先解锁,然后才能正常IO。
3.根据权利要求2所述的一种ZNS固态硬盘的加解密方法,其特征在于,需要加密时,命令参数询问需加密的Zone分区是否有附加ZDE;如果分区没有ZDE扩展区域,则需要对该分区Zone增加ZDE,保存加密信息;如果有附加ZDE时,按照命令参数更新ZDE数据到对应的ZDE。
4.根据权利要求3所述的一种ZNS固态硬盘的加解密方法,其特征在于,使用Zone管理命令设置valid, write_ctrl和read_ctrl字段值,并提供与该字段匹配password
5.根据权利要求4所述的一种ZNS固态硬盘的加解密方法,其特征在于,当前valid为非0时,则加密功能生效,write_ctrl控制Zone的写入操作,当write_ctrl为非0时,则不能写入;为0时,则可以写入;当前valid为非0时,则加密功能生效,read_ctrl控制Zone的读取操作,当read_ctrl为非0时,则不能读取;为0时,则可以读取。
6.根据权利要求1所述的一种ZNS固态硬盘的加解密方法,其特征在于,对已加密的Zone进行IO时需要先解密,根据Zone管理命令,确定用户是否有权限或者密码是否匹配;用户有权限,如当前用户如果为root或者owner,则可以不需要提供password即可进行解密操作;用户密码正确,匹配通过,则通过设置write_ctrl,read_ctrl为0,可以完成解密操作;若用户无权限且用户密码不匹配时,则返回错误提示,解密不成功,不能读取加密数据;IO完成后,要恢复到原来的非零值。
7.根据权利要求1所述的一种ZNS固态硬盘的加解密方法,其特征在于,IO结束后再恢复时,记录当前Zone的ZDE的write_ctrl,read_ctrl值,使用Zone管理命令确定密码是否匹配,匹配通过,则通过设置write_ctrl,read_ctrl为0,完成解密操作,用户可以进行读写操作;使用Zone管理命令确定密码是否匹配,匹配不通过,不能完成解密操作,用户返回错误并拒绝进行读写操作,同时恢复设置write_ctrl,read_ctrl为非零值。
...【技术特征摘要】
1.一种zns固态硬盘的加解密方法,其特征在于, 在进行加解密算法之前,基于zns固态硬盘各分区zone的读写频率,将zone分区分为zone冷区和zone热区,zone热区为读写频率次数>动态读写频次临界值,动态读写频次临界值为固态硬盘分区的总读写次数的均方根;zone冷区为固态硬盘中zone热区以外的区域;
2.根据权利要求1所述的一种zns固态硬盘的加解密方法,其特征在于,在进行io前,nand flash io的控制算法判断是否读写锁定;如果已锁定则需要先解锁,然后才能正常io。
3.根据权利要求2所述的一种zns固态硬盘的加解密方法,其特征在于,需要加密时,命令参数询问需加密的zone分区是否有附加zde;如果分区没有zde扩展区域,则需要对该分区zone增加zde,保存加密信息;如果有附加zde时,按照命令参数更新zde数据到对应的zde。
4.根据权利要求3所述的一种zns固态硬盘的加解密方法,其特征在于,使用zone管理命令设置valid, write_ctrl和read_ctrl字段值,并提供与该字段匹配password;当设置valid为0,则加密功能不生效,此时write_ctrl,read_ctrl,无论为何值,zone上的io操作,不受加密功能影响,可正常进行读写操作。
5.根据权利要求4所述的一种zns固态硬盘的加解密方法,其特征在于,当前vali...
【专利技术属性】
技术研发人员:张德枝,
申请(专利权)人:武汉麓谷科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。