CN116089327A - 数据保护方法及相关设备 - Google Patents

数据保护方法及相关设备 Download PDF

Info

Publication number
CN116089327A
CN116089327A CN202211721287.8A CN202211721287A CN116089327A CN 116089327 A CN116089327 A CN 116089327A CN 202211721287 A CN202211721287 A CN 202211721287A CN 116089327 A CN116089327 A CN 116089327A
Authority
CN
China
Prior art keywords
area
data
hidden area
writing
user
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
Application number
CN202211721287.8A
Other languages
English (en)
Inventor
施信妘
高孝慈
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Ancun Data Technology Co ltd
Original Assignee
Shenzhen Ancun Data Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Ancun Data Technology Co ltd filed Critical Shenzhen Ancun Data Technology Co ltd
Priority to CN202211721287.8A priority Critical patent/CN116089327A/zh
Publication of CN116089327A publication Critical patent/CN116089327A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请涉及一种数据保护方法、装置、主控制器和存储设备。所述方法应用于存储设备的主控制器,存储设备的存储空间内设有转运区,存储设备或内嵌于存储设备的独立非易失性存储模块的存储空间内设有隐藏区,转运区对操作系统可见,隐藏区对操作系统不可见;上述方法包括:响应于接收到用于对隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;响应于上述用户权限为特定权限,执行特定操作指令。本申请实施例能够提高数据安全性。

Description

数据保护方法及相关设备
技术领域
本申请涉及存储设备领域,特别是涉及一种数据保护方法、装置、主控制器和存储设备。
背景技术
以下陈述仅提供与本申请有关的背景信息,而不必然地构成现有技术。
目前,机械硬盘(HardDiskDrive,简称HDD)或固态硬盘(SolidState Drive,简称SSD)等存储设备的数据安全保护机制主要是通过TCG(Trusted ComputingGroup,可信计算组织)Opal这类数据安全规范标准来建立的。在上述数据安全保护机制下,用户除非获得相关权限,否则将无法对存储设备进行数据写入或读取等动作。
然而,发明人意识到,现有的数据安全规范有一个明显的缺点:它允许任何权限的用户在操作系统(OperatingSystem,简称OS)下读取存储设备中除了ShadowMBR(ShadowMasterBootRecord,影子主引导记录)区域之外的所有逻辑分区的信息,其中包括了被重点保护的区域(例如在TCG协议下被锁定的逻辑分区,即LockedLBARange),因而影响了数据安全性。并且,尽管ShadowMBR是该类数据安全规范下的一个例外,它不可以被操作系统读取或修改,然而ShadowMBR设定的本意并不适用于一般用途的数据存储目的,且该区域的容量通常很低(各个TCG分支协议定义下的ShadowMBR均为128MB);此外,读写该区域时需要主机进行重启,显然,一些应用场景,例如数据中心类应用场景完全无法接受此种费时费力的操作。
发明内容
本申请针对上述不足或缺点,提供了一种数据保护方法、装置、主控制器和存储设备,本申请实施例能够提高数据安全性。
本申请根据第一方面提供了一种数据保护方法,在一个实施例中,该方法应用于存储设备的主控制器,存储设备的存储空间内设有转运区,存储设备或内嵌于存储设备的独立非易失性存储模块的存储空间内设有隐藏区,转运区对操作系统可见,隐藏区对操作系统不可见;上述方法包括:
响应于接收到用于对隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;
响应于上述用户权限为特定权限,执行特定操作指令。
在一些实施例中,执行特定操作指令,包括:
当特定操作指令是安全写入指令时,将预先写入转运区的数据写入隐藏区;
当特定操作指令是安全读取指令时,获取安全读取指令关联的目标地址范围,将隐藏区内处于目标地址范围内的数据作为目标数据复制至转运区,使得操作系统能从转运区中读取目标数据。
在一些实施例中,存储设备的存储空间内还设有状态区,状态区用于存储隐藏区的相关信息。
在一些实施例中,将预先写入转运区的数据写入隐藏区,包括:
将预先写入转运区的数据,以预设的写入方式写入隐藏区;其中,上述写入方式为覆盖或附加。
在一些实施例中,在接收到安全写入指令之前,或将预先写入转运区的数据写入隐藏区之前,上述方法还包括:
根据状态区存储的隐藏区的相关信息确定隐藏区是否有可用存储空间;
当隐藏区没有可用存储空间时,通过操作系统提示上述用户设置上述写入方式。
在一些实施例中,根据状态区存储的隐藏区的相关信息确定隐藏区是否有可用存储空间,包括:
接收上述用户通过操作系统发送的隐藏区存储空间查询指令;
向状态区查询隐藏区的当前可用存储空间信息;
根据当前可用存储空间信息确定隐藏区是否有可用存储空间。
在一些实施例中,当隐藏区没有可用存储空间时,上述方法还包括:
将隐藏区当前存储的数据复制至备份存储设备中。
在一些实施例中,将预先写入转运区的数据写入隐藏区之后,上述方法还包括:
记录本次向隐藏区写入数据所产生的安全写入结果;
将安全写入结果存至状态区;安全写入结果包括上述用户的用户标识、采用的写入方式、写入时间和/或执行结果,执行结果为写入成功或写入失败。
在一些实施例中,在接收到操作系统发送的安全读取指令之前,上述方法还包括:
接收上述用户通过操作系统发送的安全写入结果查询指令;
向状态区查询上一次向隐藏区写入数据所产生的写入结果;
通过操作系统向上述用户返回查询到的写入结果。
在一些实施例中,状态区设有信号旗;将预先写入转运区的数据写入隐藏区,包括:
读取信号旗的状态;
响应于信号旗的状态为空闲状态,将预先写入转运区的数据写入隐藏区,以及将信号旗的状态更新为忙碌状态。
在一些实施例中,将预先写入转运区的数据写入隐藏区之后,上述方法还包括:
将信号旗的状态更新为空闲状态。
在一些实施例中,将隐藏区内处于目标地址范围内的数据作为目标数据复制至转运区之后,上述方法还包括:
接收操作系统发送的常规读取指令;
获取常规读取指令关联的目标地址范围;
将转运区内处于目标地址范围内的数据发送至操作系统。
本申请根据第二方面提供了一种数据保护装置,在一个实施例中,该装置应用于存储设备的主控制器,存储设备的存储空间内设有转运区,存储设备或内嵌于存储设备的独立非易失性存储模块的存储空间内设有隐藏区,转运区对操作系统可见,隐藏区对操作系统不可见;上述装置包括:
权限获取模块,用于响应于接收到用于对隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;
特定指令执行模块,用于响应于上述用户权限为特定权限,执行特定操作指令。
本申请根据第三方面提供了一种主控制器,上述主控制器包括存储器、处理器及存储在上述存储器上并能在上述处理器上运行的固件程序,上述处理器执行上述固件程序时上述任一实施例提供的数据保护方法的步骤。
本申请根据第四方面提供了一种存储设备,包括如上述实施例所提供的主控制器。
在一些实施例中,上述存储设备是硬盘。
在本申请上述实施例中,在存储设备的存储空间内设有转运区,以及存储设备或内嵌于存储设备的独立非易失性存储模块的存储空间内设有隐藏区,其中,转运区对操作系统可见,隐藏区对操作系统不可见;存储设备的主控制器响应于接收到用于对隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;以及响应于上述用户权限为特定权限,执行特定操作指令。
本申请实施例能够在不改动现有操作系统环境的前提下,通过修改固件程序的方式创建一个操作系统不可见的隐藏区,只允许拥有特定权限的用户对隐藏区发起数据操作,且即便特定权限的用户能对隐藏区发起数据操作也无法获得隐藏区的相关地址,而通过身份认证却不具有特定权限的用户、未通过身份认证的用户无法操作或获取隐藏区内的数据,即便黑客通过病毒程序或远程攻击等手段攻破了操作系统的防御,也无法窃取或破坏存于隐藏区内的数据,因而本申请实施例能够为隐藏区内的数据提供强力保护,安全性很强。
附图说明
图1-1为一些实施例中隐藏区、转运区和状态区的关系示意图;
图1-2为另一些实施例中隐藏区、转运区和状态区的关系示意图;
图2为一些实施例中一种数据保护方法的流程示意图;
图3为一些实施例中执行特定操作指令的流程示意图;
图4为一些实施例中常规读取转运区内数据的流程示意图;
图5为一些实施例中存储安全写入结果的流程示意图;
图6为一些实施例中查询安全写入结果的流程示意图;
图7为一些实施例中一种数据保护装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请提供了一种数据保护方法。在一些实施例中,该数据保护方法可以应用于存储设备的主控制器,其中,存储设备可以是硬盘,如机械硬盘、固态硬盘等。存储设备可以与电子设备连接,电子设备可以包括但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和服务器等,本申请实施例不进行限制。
进一步地,在一些实施例中,通过修改存储设备的固件程序的方式在存储设备的存储空间中同时设置转运区和隐藏区(例如将一个物理地址区间设定为转运区,将另一物理地址区间设定为隐藏区),并调整主控制器的处理逻辑,使得主控制器实现本申请实施例提供的数据保护方法(下面将详细介绍),其中,以修改固件程序的方式来设置转运区和隐藏区以及调整主控制器的处理逻辑,无需改动现有操作系统环境,实现起来更为简单有效。在另一些实施例中,存储设备内嵌有独立非易失性存储模块,如NVM(NonVolatileMemory)模块,此时,也可以通过上述修改固件程序的方式,将转运区设置在存储设备的存储空间内,而将隐藏区设置在该独立非易失性存储模块的存储空间内,需指出的是,在本实施例中,厂家需要确保任何用户指令所包含的地址空间不包括该独立非易失性存储模块中的存储区域;相比将隐藏区设于存储设备的存储空间内,本实施例可以在物理层面隔离隐藏区和存储设备的常规存储区域,进一步提高数据安全性。其中,上述转运区、状态区对操作系统可见,隐藏区对操作系统不可见。
更进一步地,在上述实施例中,还可以在存储设备中设置用以方便用户或操作系统了解隐藏区相关信息的状态区,可能地,该状态区是一个寄存器。其中,状态区中可以存储隐藏区的相关信息,应理解,状态区内存储的隐藏区的相关信息可以根据实际应用场景的需要进行灵活调整,示例性地,状态区存储的信息可以包括隐藏区的可用存储空间、可用存储空间的地址区间,进一步地,状态区还可以记录诸如最近一次隐藏区更新的时间以及完成的状态(完成、失败、断电、数据溢出或覆写等)。以存储设备是硬盘,独立非易失性存储模块是NVM模块为例,隐藏区、转运区和状态区间的关系可以参见图1-1和图1-2所示的示意图,图中的A区是指上述的隐藏区,B区是指上述的转运区。
下面对数据保护方法进行说明。请参见图2,本申请实施例提供的数据保护方法包括步骤S110-S120,即:
S110:响应于接收到用于对隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;
S120:响应于上述用户权限为特定权限,执行特定操作指令。
在本申请实施例中,当用户登录操作系统并经过身份认证之后,主控制器会获取该用户的用户权限。其中,主控制器可以通过运行在主控制器CPU中的数据安全协议来获取用户的用户权限,上述数据安全协议可以是ATA(AdvancedTechnologyAttachment,高技术配置)协议、TCG(Trusted ComputingGroup,可信计算组织)协议、或者任何指定的数据安全协议标准。用户进行身份认证的具体操作可参考业界通用的TPM(TrustedPlatformModule,可信平台模块)或TCM(TrustedCryptographyModule,可信密码模块)模块,本实施例不进行赘述。
用户权限的数量可以根据具体应用场景的不同进行灵活设置,本申请实施例对此不进行限定。
按照是否有权限对隐藏区发起数据操作,可以将用户权限分为两种类型(仅为示例),即特定权限和普通权限。特定权限可以是存储设备厂家在存储设备出厂之前就设定好的,以用户权限分为三级(如高级、中级和低级)为例,厂家可以设定高级的用户权限为特定权限,当然,厂家也可以选择将高级和中级的用户权限设定为特定权限。为了进一步保障数据安全性,可以设定最高级别的用户权限为特定权限,其他级别的用户权限为普通权限。
更详细地,特定权限的用户可以被允许对隐藏区、转运区及其存储设备的其他存储空间(包括上述的状态区)发起数据操作(如写入、读取和擦除等)。其中,假如要对隐藏区发起数据操作,特定权限的用户可以通过操作系统向主控制器发送基于第一数据安全协议生成的特定操作指令(如安全写入指令、安全读取指令等),主控制器接收到后会进行正常响应,即执行接收到的指令,以对隐藏区执行相关数据操作;假如要对转运区或存储设备的其他存储空间发起数据操作,特定权限的用户可以通过操作系统向主控制器发送基于第二数据安全协议生成的常规操作指令(如常规写入指令、常规读取指令等),主控制器接收到后会进行正常响应,即执行接收到的指令,以执行相关数据操作。其中,第一数据安全协议和第二数据安全协议可以是不同的协议(有利于提高数据安全性),且均可由厂家预先指定,比如可以是ATA协议、TCG协议、或者其他数据安全协议标准。应理解,特定操作指令和常规操作指令均为数据操作指令(如写入指令、读取指令和擦除指令),两者在命名上差异是为了方便区分彼此。
普通权限的用户不被允许对隐藏区发起数据操作,假如主控制器接收到普通权限的用户通过操作系统发送的数据操作指令,则不执行指令以及返回错误代码。其中,假如要对转运区或存储设备的其他存储空间发起数据操作,普通权限的用户可以通过操作系统向主控制器发送基于第二数据安全协议生成的常规操作指令(如常规写入指令、常规读取指令等),主控制器接收到后会进行正常响应,即执行接收到的指令,以执行相关数据操作。
在一些实施例中,还可以按照是否有权限对转运区发起数据操作,来将普通权限进一步划分为普通权限已授权和普通权限未授权(仅为示例)。其中,主控制器允许普通权限已授权的用户通过常规数据指令来操作转运区,而主控制器如果接收到普通权限未授权的用户发送的针对转运区的常规数据指令,则返回错误代码。
本申请实施例能够在不改动现有操作系统环境的前提下,通过修改固件程序的方式创建一个操作系统不可见的隐藏区,只允许拥有特定权限的用户对隐藏区发起数据操作,且即便特定权限的用户能对隐藏区发起数据操作也无法获得隐藏区的相关地址,而通过身份认证却不具有特定权限的用户、未通过身份认证的用户无法操作或获取隐藏区内的数据,即便黑客通过病毒程序或远程攻击等手段攻破了操作系统的防御,也无法窃取或破坏存于隐藏区内的数据,因而本申请实施例能够为隐藏区内的数据提供强力保护,安全性很强。此外,本申请提供的修改了固件程序的存储设备拥有与普通存储设备相同的所有功能,以存储设备是硬盘为例,在修改了固件程序之后,仍然可以支持系统启动盘、RAID(RedundantArraysof IndependentDisks,磁盘阵列)阵列(包括硬件RAID和软件RAID)等用途。
需要指出的是,本申请实施例不对存入隐藏区的数据的类型进行限定,具有特定权限的用户可根据需要选取需要存入隐藏区进行加强保护的数据。示例性地,用户可以选择将由存储设备内数据产生的特征数据或元数据存入隐藏区,从而用户不需要再多准备一个存储设备另外存放,减少了数据的移动并避免了移动数据过程中所可能出现的安全风险。
本申请基于上述实施例还提供了以下实施例,以对技术方案做进一步的说明与优化。
在一些实施例中,如图3所示,上述步骤:执行特定操作指令,包括:
S210:当特定操作指令是安全写入指令时,将预先写入转运区的数据写入隐藏区;以及
S220:当特定操作指令是安全读取指令时,获取安全读取指令关联的目标地址区间,将隐藏区内处于目标地址区间内的数据作为目标数据复制至转运区,使得操作系统能从转运区中读取目标数据。
本实施例中,特定权限的用户不被允许直接对隐藏区进行数据操作,基于此能够杜绝隐藏区内的数据被篡改的可能性,进而提高数据安全性。
其中,特定权限的用户如果需要往隐藏区写入数据,那么向主控制器发送安全写入指令,主控制器接收到该指令后,会将转运区内的部分或全部数据写入隐藏区。其中,转运区内的数据是由该特定权限的用户或其他具有对转运区进行数据操作的权限的用户预先写入的。进一步地,在一些实施例中,主控制器在接收到安全写入指令后,将转运区的整段数据均写入隐藏区,本实施例可以提供强力的安全保护,并且无需用户或操作系统指定目标地址区间。而在另一些实施例中,用户可以自主决定将转运区的哪些数据写入隐藏区,因而,在本实施例中,主控制器会接收到安全写入指令及其关联的目标地址区间,然后将转运区内处于该目标地址区间的数据写入隐藏区。
特定权限的用户如果需要读取隐藏区内的数据,那么向主控制器发送安全读取指令以及相关的目标地址区间,主控制器接收到安全读取指令后,会根据该目标地址区间从隐藏区读取相关的数据,然后写入转运区内。
在一些实施例中,为了进一步提交对隐藏区内数据的安全保护级别,主控制器每次接收到新的针对隐藏区的特定操作指令,都需要对当前用户进行身份验证,确保当前用户的用户权限是特定权限。
进一步地,在一些实施例中,如图4所示,将隐藏区内处于目标地址区间内的数据作为目标数据复制至转运区之后,上述方法还包括:
S310:接收操作系统发送的常规读取指令;
S320:获取常规读取指令关联的目标地址区间;
S330:将转运区内处于目标地址区间内的数据发送至操作系统。
其中,上述常规读取指令关联的目标地址区间即是上述安全读取指令关联的目标地址区间。主控制器存有转运区内的地址和隐藏区内的地址之间的映射关系,从而通过该映射关系可确定出用户或操作系统指定的转运区内的地址区间所对应的隐藏区内的地址区间,继而读取该隐藏区内的地址区间所对应的数据,并写入转运区内的地址区间,从而用户能够从转运区内读取到来自隐藏区内的数据。
本申请基于上述实施例还提供了以下实施例,以对技术方案做进一步的说明与优化。
在一些实施例中,上述步骤:将预先写入转运区的数据写入隐藏区,包括:将预先写入转运区的数据,以预设的写入方式写入隐藏区;其中,上述写入方式为覆盖或附加。在本实施例中,主控制器以覆盖(overwrite)或附加(Append)的写入方式来将转运区的数据写入隐藏区。
其中,上述写入方式可以是用户设定的。在一些实施例中,在接收到安全写入指令之前,或将预先写入转运区的数据写入隐藏区之前,上述方法还包括:根据状态区存储的隐藏区的相关信息确定隐藏区是否有可用存储空间;当隐藏区没有可用存储空间时,通过操作系统提示上述用户设置上述写入方式。
在上述实施例中,主控制器可以主动向状态区查询相关信息(如状态区记录的隐藏区的可用存储空间信息),然后根据查询到的信息确定当前隐藏区是否有可用存储空间。可选的,主控制器也可以是在接收到用户发送的用于查询隐藏区是否有可用存储空间的指令(可称为隐藏区存储空间查询指令)之后,再向状态区查询相关信息来确定当前隐藏区是否有可用存储空间,示例性地,在一些实施例中,根据状态区存储的隐藏区的相关信息确定隐藏区是否有可用存储空间,可以包括:接收上述用户通过操作系统发送的隐藏区存储空间查询指令;向状态区查询隐藏区的当前可用存储空间信息;根据当前可用存储空间信息确定隐藏区是否有可用存储空间。
进一步地,当隐藏区没有可用存储空间时,用户可以选择以覆盖写入的方式往隐藏区写入数据,用户还可以选择备份隐藏区的数据,例如在一些实施例中,当隐藏区没有可用存储空间时,上述方法还包括:将隐藏区当前存储的数据复制至备份存储设备中。假如隐藏区没有可用存储空间,将隐藏区当前存储的数据复制至备份存储设备中,从而避免隐藏区当前的数据在后续的数据操作中丢失。
本申请基于上述实施例还提供了以下实施例,以对技术方案做进一步的说明与优化。
在一些实施例中,如图5所示,将预先写入转运区的数据写入隐藏区之后,上述方法还包括:
S410:记录本次向隐藏区写入数据所产生的安全写入结果;
S420:将安全写入结果存至状态区;安全写入结果包括上述用户的用户标识、采用的写入方式、写入时间和/或执行结果,执行结果为写入成功或写入失败。
进一步地,如图6所示,在接收到操作系统发送的安全读取指令之前,上述方法还包括:
S510:接收上述用户通过操作系统发送的安全写入结果查询指令;
S520:向状态区查询上一次向隐藏区写入数据所产生的写入结果;
S530:通过操作系统向上述用户返回查询到的写入结果。
在本实施例中,将每次特定数据操作的操作结果均记录到状态区,从而可以帮助用户或外部主机(可以是与存储设备连接的CPU)了解当前隐藏区内的数据的状态,进而可以更好地判断是否继续进行后续操作。示例性地,用户在读取隐藏区的数据之前,先在状态区查询上一次安全写入结果,假设上一次安全写入结果是写入失败,则用户可以根据该安全写入结果决定是否继续读取隐藏区内的数据。
本申请基于上述实施例还提供了以下实施例,以对技术方案做进一步的说明与优化。在一些实施例中,状态区设有信号旗;相应地,上述步骤:将预先写入转运区的数据写入隐藏区,包括:读取信号旗的状态;响应于信号旗的状态为空闲状态,将预先写入转运区的数据写入隐藏区,以及将信号旗的状态更新为忙碌状态。进一步地,将预先写入转运区的数据写入隐藏区之后,上述方法还包括:将信号旗的状态更新为空闲状态。
在本实施例中,在将转运区的数据写入隐藏区期间,为了阻止在此期间来自操作系统的其他数据操作指令对存储设备的写入尝试,以防止出现较为复杂的操作(例如suspend-read或suspend-write等),在状态区设置信号旗,通过该信号旗的状态来表示“当前正在向隐藏区写入数据”或“当前已完成向隐藏区写入数据或当前未向隐藏区写入数据”,其中,上述空闲状态用于表示“当前已完成向隐藏区写入数据或当前未向隐藏区写入数据”,上述忙碌状态用于表示“当前正在向隐藏区写入数据”。
主控制器在接收到特定权限的用户发送的安全写入指令之后,如果信号旗的状态为空闲状态,那么就继续执行安全写入指令,将预先写入转运区的数据写入隐藏区,同时将信号旗的状态更新为忙碌状态,从而在将转运区的数据写入隐藏区期间不会因为接收到其他写入指令而出现复杂操作。相应地,在将预先写入转运区的数据写入隐藏区之后,再将信号旗的状态更新为空闲状态,从而主控制器可以继续执行其他的数据写入指令。
进一步地,在一些实施例中,用户通过读取信号旗的状态,确认当前以将转运区的数据写入了隐藏区之后,用户可以決定清除转运区的数据或予以保留,如果用户决定清除转运区的数据,那么可以向主控制器发送针对转运区的常规擦除指令,以清除转运区的数据,如果用户决定保留转运区的数据,则无需进行操作。
更进一步地,在一些实施例中,如果主控制器的效能不够好,在将转运区的数据写入隐藏区期间,如果用户向转运区写入了数据,导致写入隐藏区的数据与进行上述写入操作之前的数据不同,相关后果由用户自行负责,如此设计可以减少固件的工作量。当然,在另一些实施例中,可以对主控制器进行特别设计,以实现原子操作。
需要说明的是,关于上述任何一个实施例中提供的数据保护方法所包括的各个步骤,除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,这些步骤中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
基于相同的发明构思,本申请还提供了一种数据保护装置。在一些实施例中,该装置应用于存储设备的主控制器,存储设备的存储空间内设有转运区,存储设备或内嵌于存储设备的独立非易失性存储模块的存储空间内设有隐藏区,转运区对操作系统可见,隐藏区对操作系统不可见;如图7所示,该装置包括以下模块:
权限获取模块110,用于响应于接收到用于对隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;以及
特定指令执行模块120,用于响应于用户权限为特定权限,执行特定操作指令。
在一些实施例中,特定指令执行模块120执行特定操作指令时,用于:
当特定操作指令是安全写入指令时,将预先写入转运区的数据写入隐藏区;
当特定操作指令是安全读取指令时,获取安全读取指令关联的目标地址范围,将隐藏区内处于目标地址范围内的数据作为目标数据复制至转运区,使得操作系统能从转运区中读取目标数据。
在一些实施例中,存储设备的存储空间内还设有状态区,状态区用于存储隐藏区的相关信息。
在一些实施例中,特定指令执行模块120将预先写入转运区的数据写入隐藏区时,用于将预先写入转运区的数据,以预设的写入方式写入隐藏区;其中,写入方式为覆盖或附加。
在一些实施例中,上述装置还包括提示模块(图中未示出)。提示模块,用于在接收到安全写入指令之前,或将预先写入转运区的数据写入隐藏区之前,根据状态区存储的隐藏区的相关信息确定隐藏区是否有可用存储空间,以及当隐藏区没有可用存储空间时,通过操作系统提示用户设置写入方式。
在一些实施例中,提示模块根据状态区存储的隐藏区的相关信息确定隐藏区是否有可用存储空间时,用于:
接收用户通过操作系统发送的隐藏区存储空间查询指令;
向状态区查询隐藏区的当前可用存储空间信息;
根据当前可用存储空间信息确定隐藏区是否有可用存储空间。
在一些实施例中,上述装置还包括备份模块(图中未示出)。备份模块,用于当隐藏区没有可用存储空间时,将隐藏区当前存储的数据复制至备份存储设备中。
在一些实施例中,上述装置还包括操作结果存储模块(图中未示出)。操作结果存储模块,用于在将预先写入转运区的数据写入隐藏区之后,记录本次向隐藏区写入数据所产生的安全写入结果;以及将安全写入结果存至状态区;安全写入结果包括用户的用户标识、采用的写入方式、写入时间和/或执行结果,执行结果为写入成功或写入失败。
在一些实施例中,上述装置还包括查询结果反馈模块(图中未示出)。查询结果反馈模块,用于在接收到操作系统发送的安全读取指令之前,接收用户通过操作系统发送的安全写入结果查询指令;向状态区查询上一次向隐藏区写入数据所产生的写入结果;以及通过操作系统向用户返回查询到的写入结果。
在一些实施例中,状态区设有信号旗;相应地,特定指令执行模块120将预先写入转运区的数据写入隐藏区时,用于:
读取信号旗的状态;
响应于信号旗的状态为空闲状态,将预先写入转运区的数据写入隐藏区,以及将信号旗的状态更新为忙碌状态。
进一步地,在一些实施例中,特定指令执行模块120将预先写入转运区的数据写入隐藏区之后,还用于将信号旗的状态更新为空闲状态。
在一些实施例中,上述装置还包括常规读取模块(图中未示出)。常规读取模块,用于将隐藏区内处于目标地址范围内的数据作为目标数据复制至转运区之后,接收操作系统发送的常规读取指令;获取常规读取指令关联的目标地址范围;以及将转运区内处于目标地址范围内的数据发送至操作系统。
关于数据保护装置的具体限定可以参见上文中对于数据保护方法的限定,在此不再赘述。上述数据保护装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本申请还提供了一种主控制器,上述主控制器包括存储器、处理器及存储在上述存储器上并能在上述处理器上运行的固件程序,上述处理器执行上述固件程序时上述任一实施例提供的数据保护方法的步骤。
本申请还提供了一种存储设备,该存储设备包括如上述实施例所提供的主控制器。在一些实施例中,上述存储设备是硬盘,可以是固态硬盘或是机械硬盘。
本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)、直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (16)

1.一种数据保护方法,其特征在于,应用于存储设备的主控制器,所述存储设备的存储空间内设有转运区,所述存储设备或内嵌于所述存储设备的独立非易失性存储模块的存储空间内设有隐藏区,所述转运区对操作系统可见,所述隐藏区对操作系统不可见;所述方法包括:
响应于接收到用于对所述隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;
响应于所述用户权限为特定权限,执行所述特定操作指令。
2.如权利要求1所述的方法,其特征在于,
所述执行所述特定操作指令,包括:
当所述特定操作指令是安全写入指令时,将预先写入所述转运区的数据写入所述隐藏区;
当所述特定操作指令是安全读取指令时,获取所述安全读取指令关联的目标地址范围,将所述隐藏区内处于所述目标地址范围内的数据作为目标数据复制至所述转运区,使得所述操作系统能从所述转运区中读取所述目标数据。
3.如权利要求2所述的方法,其特征在于,
所述存储设备的存储空间内还设有状态区,所述状态区用于存储所述隐藏区的相关信息。
4.如权利要求3所述的方法,其特征在于,
将预先写入所述转运区的数据写入所述隐藏区,包括:
将预先写入所述转运区的数据,以预设的写入方式写入所述隐藏区;其中,所述写入方式为覆盖或附加。
5.如权利要求4所述的方法,其特征在于,
在接收到所述安全写入指令之前,或将预先写入所述转运区的数据写入所述隐藏区之前,所述方法还包括:
根据所述状态区存储的所述隐藏区的相关信息确定所述隐藏区是否有可用存储空间;
当所述隐藏区没有可用存储空间时,通过所述操作系统提示所述用户设置所述写入方式。
6.如权利要求5所述的方法,其特征在于,
根据所述状态区存储的所述隐藏区的相关信息确定所述隐藏区是否有可用存储空间,包括:
接收所述用户通过所述操作系统发送的隐藏区存储空间查询指令;
向所述状态区查询所述隐藏区的当前可用存储空间信息;
根据所述当前可用存储空间信息确定所述隐藏区是否有可用存储空间。
7.如权利要求5或6所述的方法,其特征在于,
当所述隐藏区没有可用存储空间时,所述方法还包括:
将所述隐藏区当前存储的数据复制至备份存储设备中。
8.如权利要求3所述的方法,其特征在于,
所述将预先写入所述转运区的数据写入所述隐藏区之后,所述方法还包括:
记录本次向所述隐藏区写入数据所产生的安全写入结果;
将所述安全写入结果存至所述状态区;所述安全写入结果包括所述用户的用户标识、采用的写入方式、写入时间和/或执行结果,所述执行结果为写入成功或写入失败。
9.如权利要求8所述的方法,其特征在于,
在接收到所述操作系统发送的安全读取指令之前,所述方法还包括:
接收所述用户通过所述操作系统发送的安全写入结果查询指令;
向所述状态区查询上一次向所述隐藏区写入数据所产生的写入结果;
通过所述操作系统向所述用户返回查询到的写入结果。
10.如权利要求3所述的方法,其特征在于,
所述状态区设有信号旗;
将预先写入所述转运区的数据写入所述隐藏区,包括:
读取所述信号旗的状态;
响应于所述信号旗的状态为空闲状态,将预先写入所述转运区的数据写入所述隐藏区,以及将所述信号旗的状态更新为忙碌状态。
11.如权利要求10所述的方法,其特征在于,
将预先写入所述转运区的数据写入所述隐藏区之后,所述方法还包括:
将所述信号旗的状态更新为空闲状态。
12.如权利要求2所述的方法,其特征在于,
将所述隐藏区内处于所述目标地址范围内的数据作为目标数据复制至所述转运区之后,所述方法还包括:
接收所述操作系统发送的常规读取指令;
获取所述常规读取指令关联的目标地址范围;
将所述转运区内处于所述目标地址范围内的数据发送至所述操作系统。
13.一种数据保护装置,其特征在于,应用于存储设备的主控制器,所述存储设备的存储空间内设有转运区,所述存储设备或内嵌于所述存储设备的独立非易失性存储模块的存储空间内设有隐藏区,所述转运区对操作系统可见,所述隐藏区对操作系统不可见;所述装置包括:
权限获取模块,用于响应于接收到用于对所述隐藏区进行数据操作的特定操作指令,获取当前登录操作系统的用户的用户权限;
特定指令执行模块,用于响应于所述用户权限为特定权限,执行所述特定操作指令。
14.一种主控制器,其特征在于,所述主控制器包括存储器、处理器及存储在所述存储器上并能在所述处理器上运行的固件程序,所述处理器执行所述固件程序时实现权利要求1至12中任一项所述方法的步骤。
15.一种存储设备,其特征在于,包括如权利要求14所述的主控制器。
16.如权利要求15所述的存储设备,其特征在于,所述存储设备是硬盘。
CN202211721287.8A 2022-12-30 2022-12-30 数据保护方法及相关设备 Pending CN116089327A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211721287.8A CN116089327A (zh) 2022-12-30 2022-12-30 数据保护方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211721287.8A CN116089327A (zh) 2022-12-30 2022-12-30 数据保护方法及相关设备

Publications (1)

Publication Number Publication Date
CN116089327A true CN116089327A (zh) 2023-05-09

Family

ID=86186244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211721287.8A Pending CN116089327A (zh) 2022-12-30 2022-12-30 数据保护方法及相关设备

Country Status (1)

Country Link
CN (1) CN116089327A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117455750A (zh) * 2023-12-26 2024-01-26 芯瞳半导体技术(山东)有限公司 显存管理方法、装置、系统、介质及设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117455750A (zh) * 2023-12-26 2024-01-26 芯瞳半导体技术(山东)有限公司 显存管理方法、装置、系统、介质及设备
CN117455750B (zh) * 2023-12-26 2024-04-02 芯瞳半导体技术(山东)有限公司 显存管理方法、装置、系统、介质及设备

Similar Documents

Publication Publication Date Title
US10331457B2 (en) Byte-addressable non-volatile read-write main memory partitioned into regions including metadata region
KR102567097B1 (ko) 임베디드 시스템의 부트 롬 업데이트 방법 및 부팅 방법
US20090164709A1 (en) Secure storage devices and methods of managing secure storage devices
EP3627368B1 (en) Auxiliary memory having independent recovery area, and device applied with same
JP6399523B2 (ja) メモリ・デバイスの内容を保護するための方法およびメモリ・デバイス
TW201909018A (zh) 資料儲存設備的安全快照管理
CN113508364A (zh) 存储器的受保护区域管理
CN116089327A (zh) 数据保护方法及相关设备
US20230281304A1 (en) Method for switching execution environment and related device thereof
US10445534B2 (en) Selective storage device wiping system and method
CN112825098A (zh) 数据保护方法、装置、计算设备及存储介质
US20140059291A1 (en) Method for protecting storage device data integrity in an external operating environment
US7882353B2 (en) Method for protecting data in a hard disk
JP2022184735A (ja) プログラム起動方法及び機器、記憶媒体
US10831916B2 (en) Method for blocking access of malicious application and storage device implementing the same
US10706169B1 (en) Quarantining storage objects using a quarantine list
JP2000250818A (ja) 記憶システム、記憶装置及び記憶データ保護方法
KR102363182B1 (ko) 저장 디바이스에서 악성 액티비티들을 검출하기 위한 모듈 및 방법
EP3961451B1 (en) Storage device
CN111936978B (zh) 对由设有执行核、安全核和非易失性存储器的计算机执行的软件功能的数据重新编程的方法
US20220374534A1 (en) File system protection apparatus and method in auxiliary storage device
US11573912B2 (en) Memory device management system, memory device management method, and non-transitory computer-readable recording medium erasing data stored in memory device if a value of a first key and second key are different
CN111159716B (zh) 一种安全保护方法及电子设备
CN118819643A (zh) 数据交互方法、装置、设备、存储介质和程序产品
CN118012834A (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