CN103049223A - 一种硬盘隐藏区的解除方法、装置和系统 - Google Patents

一种硬盘隐藏区的解除方法、装置和系统 Download PDF

Info

Publication number
CN103049223A
CN103049223A CN201210582938XA CN201210582938A CN103049223A CN 103049223 A CN103049223 A CN 103049223A CN 201210582938X A CN201210582938X A CN 201210582938XA CN 201210582938 A CN201210582938 A CN 201210582938A CN 103049223 A CN103049223 A CN 103049223A
Authority
CN
China
Prior art keywords
hard disk
instruction
hidden area
zone
hpa
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.)
Granted
Application number
CN201210582938XA
Other languages
English (en)
Other versions
CN103049223B (zh
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.)
Xiamen Meiya Pico Information Co Ltd
Original Assignee
Xiamen Meiya Pico Information 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 Xiamen Meiya Pico Information Co Ltd filed Critical Xiamen Meiya Pico Information Co Ltd
Priority to CN201210582938.XA priority Critical patent/CN103049223B/zh
Publication of CN103049223A publication Critical patent/CN103049223A/zh
Application granted granted Critical
Publication of CN103049223B publication Critical patent/CN103049223B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种硬盘隐藏区的解除方法、装置及系统,其中执行所述方法的装置连接于只读保护设备与硬盘之间,所述方法包括,获取硬盘信息;根据硬盘信息包括的硬盘隐藏区校验位识别硬盘是否支持硬盘隐藏区指令,若支持硬盘隐藏区指令,则发送指令获取硬盘隐藏区最大地址;将硬盘信息包括的硬盘可见容量最大地址与硬盘隐藏区最大地址进行比较识别硬盘是否包括硬盘隐藏区;若硬盘包括硬盘隐藏区,发送解除指令进行硬盘隐藏区的解除;发送还原指令进行隐藏区的还原或先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,然后再发送还原指令进行硬盘隐藏区的还原;通过本方法可实现解除及还原硬盘隐藏区,且能保证硬盘数据不被修改。

Description

一种硬盘隐藏区的解除方法、装置和系统
技术领域
 本发明属于硬盘隐藏区解除的领域,特别涉及一种可还原的硬盘隐藏区的解除方法、装置和系统。
背景技术
高级技术附件规格(Advanced Technology Attachment,ATA) 标准从1994年至今共经历了7代标准,ATA接口发展到ATA-6时候,这种并行接口的电缆属性、连接器和信号协议遇到了很大的技术瓶颈,2002年最新的ATA-7标准提出后并没有得到广泛应用,只有迈拓公司推出一系列ATA-7标准的硬盘,而其它厂商则转向串行高级技术附件规格(Serial Advanced Technology Attachment,SATA)接口规范,SATA是由DELL、IBM、Intel、Maxtor、Quantum,Seagate等公司合作开发用于取代并行ATA 接口的技术,兼容ATA协议规范,目前已经发展到第三代SATA。
2001年,根据ATA-4标准,硬盘开始引入HPA(Host Protected Area) 特性。HPA为通过用ATA命令直接把硬盘后部保护起来的一块区域,不仅操作系统无法看到HPA,甚至连主板BIOS都无法读取HPA中的数据。只要不用ATA协议中定义的特别命令打开HPA,就不可能用普通方法对HPA进行读写操作。可以通过发送ATA指令“SET MAX ADDRESS”将硬盘分为用户可访问区域或受限区域,即解除HPA和设置HPA。其中,解除HPA有两种方法,一种是临时解除HPA,即执行“SET MAX ADDRESS”指令前把指令的Count第0位置为1,解除后用户可访问HPA,硬盘掉电或硬件复位后,HPA自动还原,下次读写硬盘需要再次解除才能访问;另一种是彻底解除HPA,即执行“SET MAX ADDRESS”指令前把指令的Count第0位置为0,解除后用户可访问该HPA,硬盘掉电或硬件复位后,HPA消失,需要重新设置才能还原。而且,“SET MAX ADDRESS”指令只能发送一次,如果要再发送,则需要硬盘掉电再上电或硬件复位。
在ATA-6标准中,硬盘引入了DCO(Device Configuration Overlay) 特性。DCO特性主要可以允许设备厂商为PC(Personal Computer) 制作商提供不同型号但容量基本一样的硬盘,使得每个硬盘可以有完全相同的可用扇区数。这使得硬盘制造商在硬盘制造方面更加灵活,同时与其他系统供应商保持一致,而且在DCO基础上还可以同时设置HPA,而不影响HPA特性。只要不用ATA协议中定义的特别命令解除DCO,就不可能用普通方法对此区域进行读写操作。可以通过向硬盘发送ATA指令“DEVICE CONFIGURATION RESTORE”来解除DCO,解除后需要发送“DEVICE CONFIGURATION SET”来设置硬盘实际可用扇区数才能恢复DCO。
为保证取证工作的司法有效性与数据完整性,取证人员一般在计算机和硬盘之间串接一个只读保护设备,保证硬盘的数据只被读取,不被写入。但是设置DCO的ATA指令“DEVICE CONFIGURATION SET” 是写操作,无法通过只读保护设备对硬盘进行操作,无法还原DCO,因此会改变硬盘的可见容量大小。
发明内容
本发明的目的是能够在解除硬盘隐藏区、获得硬盘内部数据后还原硬盘隐藏区,且能够保证硬盘数据不被修改,从而保证取证工作的司法有效性与数据完整性。
本发明提出一种硬盘隐藏区的解除方法,执行所述方法的装置连接于只读保护设备与硬盘之间,所述方法包括:
获取硬盘信息;
根据硬盘信息包括的硬盘隐藏区校验位来识别硬盘是否支持硬盘隐藏区指令,若支持硬盘隐藏区指令,则发送指令获取硬盘隐藏区最大地址;
将硬盘信息包括的硬盘可见容量最大地址与所述硬盘隐藏区最大地址进行比较来识别硬盘是否包括硬盘隐藏区;
若硬盘包括硬盘隐藏区,以根据硬盘信息包括的第一设定参数确定的指令发送方式发送解除指令进行硬盘隐藏区的解除;
以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原或先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,然后再以根据第一设定参数确定的指令发送方式发送还原指令进行硬盘隐藏区的还原。
优选的,本方法还包括将硬盘信息包括的第二设定参数与存储的上个硬盘相应的参数进行比对,判断是否为同一硬盘,若不是同一硬盘,则将硬盘信息进行存储,若是同一硬盘,则选择是否进行硬盘隐藏区的还原。
其中,所述硬盘隐藏区为HPA区域和/或DCO区域。
其中,所述获取硬盘信息为通过发送IDENTIFY DEVICE指令获取IDENTIFY DEVICE DATA,共256字。所述获取硬盘隐藏区最大地址包括获取HPA区域的最大地址和/或获取DCO区域的最大地址,其中,通过发送READ NATIVE MAX ADDRESS指令获取HPA区域的最大地址THE NATIVE MAX ADDRESS,共4字;通过发送DEVICE CONFIGURATION IDENTIFY指令获取DEVICE CONFIGURATION IDENTIFY DATA,所述DCO区域的最大地址为DEVICE CONFIGURATION IDENTIFY DATA的第3~6字。
其中,所述硬盘可见容量的最大地址是通过IDENTIFY DEVICE DATA的第100-103字减1计算出来的。 
优选的,所述硬盘隐藏区校验位为IDENTIFY DEVICE DATA的第83字第11位和第82字第10位。
优选的,所述第一设定参数为IDENTIFY DEVICE DATA的第7字第8位,根据所述第一设定参数确定用28-bit指令方式发送指令或用48-bit方式发送指令。所述第二设定参数为IDENTIFY DEVICE DATA的第27~46字和第10~19字,分别代表硬盘的盘符和序列号。
优选的,若隐藏区包括HPA区域但不包括DCO区域时,对HPA区域的解除包括临时解除HPA区域和彻底解除HPA区域。
特别的,所述方法是基于FPGA控制芯片来控制的方法。
本发明还提出一种硬盘隐藏区的解除装置,所述装置连接于只读保护设备与硬盘之间,包括,
获取单元,用于获取硬盘信息;
第一识别单元,用于根据硬盘信息包括的硬盘隐藏区校验位来识别硬盘是否支持硬盘隐藏区指令,若支持硬盘隐藏区指令,则发送指令获取硬盘隐藏区最大地址;
第二识别单元,用于将硬盘信息包括的硬盘可见容量最大地址与所述硬盘隐藏区最大地址进行比较来识别硬盘是否包括硬盘隐藏区;
解除单元,用于以根据硬盘信息包括的第一设定参数确定的指令发送方式发送解除指令进行硬盘隐藏区的解除;
还原单元,用于以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原或先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,然后再以根据第一设定参数确定的指令发送方式发送还原指令进行硬盘隐藏区的还原。
优选的,所述装置还包括判断单元,用于将硬盘信息包括的第二设定参数与存储的上个硬盘相应的参数进行比对,判断是否为同一硬盘,若不是同一硬盘,则将硬盘信息进行存储,若是同一硬盘,则选择是否进行硬盘隐藏区的还原。
其中,所述硬盘隐藏区为HPA区域和/或DCO区域。
其中,所述获取单元获取硬盘信息为通过发送IDENTIFY DEVICE指令获取IDENTIFY DEVICE DATA,共256字。所述第一识别单元获取硬盘隐藏区最大地址包括获取HPA区域的最大地址和/或获取DCO区域的最大地址,其中,通过发送READ NATIVE MAX ADDRESS指令获取HPA区域的最大地址THE NATIVE MAX ADDRESS,共4字;通过发送DEVICE CONFIGURATION IDENTIFY指令获取DEVICE CONFIGURATION IDENTIFY DATA,所述DCO区域的最大地址为DEVICE CONFIGURATION IDENTIFY DATA的第3~6字。
其中,所述硬盘可见容量的最大地址是通过IDENTIFY DEVICE DATA的第100-103字减1计算出来的。 
优选的,所述硬盘隐藏区校验位为IDENTIFY DEVICE DATA的第83字第11位和第82字第10位。
优选的,所述第一设定参数为IDENTIFY DEVICE DATA的第7字第8位,根据所述第一设定参数确定用28-bit指令方式发送指令或用48-bit方式发送指令。所述第二设定参数为IDENTIFY DEVICE DATA的第27~46字和第10~19字,分别代表硬盘的盘符和序列号。
优选的,当隐藏区包括HPA区域但不包括DCO区域时,所述解除单元执行的对HPA区域的解除包括临时解除和彻底解除。
特别的,所述装置还包含FPGA控制芯片,用于控制所述各单元的执行。
本发明另外提出一种硬盘隐藏区的解除系统,包括本发明所述的装置,还包括:
第一SATA控制器,用于将所述装置与上位机连接,接收上位机发送的数据
并传送给所述装置;
第二SATA控制器,用于将所述装置与SATA硬盘连接,所述装置通过第二
SATA控制器控制SATA硬盘;
FLASH控制器,用于在存储FLASH数据时,将所述装置传送的FLASH数据存储到FLASH存储芯片对应的存储位置;在读取FLASH数据时,读取所述装置指定存储位置的FLASH存储芯片中的FLASH数据传送给所述装置;
SATA硬盘电源控制器,用于将所述装置的SATA硬盘电源通断信号转成SATA
硬盘电源控制模块所需的信号;
按键和显示屏控制器,用于驱动按键和显示屏,将所述装置传送的信息在
显示屏上显示,将用户按下的按键命令传送给所述装置;
FLASH存储芯片,用于存储所述装置获得的 SATA硬盘信息;
配置存储芯片,用于存储FPGA的配置程序,上电时完成对FPGA控制芯片
的配置;
SATA硬盘电源控制模块,用于控制SATA硬盘电源的通断状态;
按键,用于用户输入命令;
显示屏,用于显示所述装置的工作状态及硬盘状态。
通过本发明提供的方法、装置和系统,能够在解除硬盘隐藏区、获得硬盘内部数据后还原硬盘隐藏区,且能够保证硬盘数据不被修改,从而保证取证工作的司法有效性与数据完整性。
附图说明
图1是本发明一种硬盘隐藏区的解除方法实施例的流程图;
图2是本发明一种硬盘隐藏区的解除装置实施例的示意图;
图3是本发明一种硬盘隐藏区的解除装置另一实施例的示意图;
图4是本发明一种硬盘隐藏区的解除系统实施例的示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明硬盘隐藏区的解除方法实施例的流程图,将执行本发明方法的装置连接于只读保护设备与硬盘之间,再将只读保护设备连接于计算机。所述方法包括如下步骤,S1,获取硬盘信息;S2,根据硬盘信息包括的硬盘隐藏区校验位来识别硬盘是否支持硬盘隐藏区指令,若支持硬盘隐藏区指令,则发送指令获取硬盘隐藏区最大地址;S3,将硬盘信息包括的硬盘可见容量最大地址与所述硬盘隐藏区最大地址进行比较来识别硬盘是否包括硬盘隐藏区;S4,若硬盘包括硬盘隐藏区,以根据硬盘信息包括的第一设定参数确定的指令发送方式发送解除指令进行硬盘隐藏区的解除;S5,以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原或先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,然后再以根据第一设定参数确定的指令发送方式发送还原指令进行硬盘隐藏区的还原。其中,所述硬盘隐藏区为HPA区域和/或DCO区域。
通过本发明提供的方法,能够在解除硬盘隐藏区、获得硬盘内部数据后还原硬盘隐藏区,且能够保证硬盘数据不被修改,从而保证取证工作的司法有效性与数据完整性。
具体的,在S1中,获取硬盘信息为通过发送ATA指令IDENTIFY DEVICE获取IDENTIFY DEVICE DATA,共256字,从中可以获取硬盘属性、硬盘支持的ATA指令等信息。
具体的,在S2中,根据硬盘信息包含的硬盘隐藏区校验位IDENTIFY DEVICE DATA的第83字第11位i和第82字第10位j来识别硬盘是否支持硬盘隐藏区指令,即HPA指令和/或DCO指令。设定硬盘可容量最大地址为X,HPA最大地址为Y,DCO最大地址为Z,当ij=00b时,硬盘不支持HPA指令和DCO指令,赋值Y = X ,Z = X ;当ij=01b时,硬盘支持HPA指令但不支持DCO指令,发送ATA指令获取HPA区域的最大地址Y ,同时赋值Z = Y ;当ij=10b时,则硬盘不支持HPA指令但支持DCO指令,发送ATA指令获取DCO区域的最大地址Z ,同时赋值Y = X ;当ij=11b时,则硬盘同时支持HPA指令和DCO指令,发送ATA指令获取HPA区域的最大地址Y 和DCO区域的最大地址Z。具体的,通过发送ATA指令READ NATIVE MAX ADDRESS获取HPA区域的最大地址THE NATIVE MAX ADDRESS,共4字;通过发送ATA指令DEVICE CONFIGURATION IDENTIFY获取DEVICE CONFIGURATION IDENTIFY DATA,共256字,所述DCO区域的最大地址为DEVICE CONFIGURATION IDENTIFY DATA的第3~6字;所述硬盘可见容量的最大地址是通过IDENTIFY DEVICE DATA的第100-103字减1计算出来的。
具体的,在S3中,将上述X,Y,Z进行比较来识别硬盘是否包含HPA和/或DCO。当X=Y且Y=Z时,硬盘不包含HPA和DCO;当X<Y且Y=Z时,硬盘有包含DCO;当X=Y且Y<Z时,硬盘包含HPA;当X<Y且Y<Z时,硬盘包含HPA和DCO。
具体的,在S4中,所述第一设定参数为IDENTIFY DEVICE DATA的第7字第8位,也就是说,根据IDENTIFY DEVICE DATA的第7字第8位确定用28-bit指令方式发送指令或用48-bit方式发送指令。若硬盘包含HPA区域但不包含DCO区域时,发送HPA解除指令进行HPA区域的解除;若硬盘包含DCO区域但不包含HPA区域时,发送DCO解除指令进行DCO区域的解除;若硬盘包括HPA区域和DCO区域时,以根据所述第一设定参数确定的指令发送方式先发送HPA解除指令进行HPA区域的解除,再发送DCO解除指令进行DCO区域的解除。
具体的,在S5中,同样是以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原。若硬盘包含HPA区域但不包含DCO区域时,发送HPA还原指令进行HPA区域的还原;若硬盘包含DCO区域但不包含HPA区域时,发送DCO还原指令进行DCO区域的还原;若硬盘包含HPA区域和DCO区域时,先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,以保证硬盘内电容有足够的时间放电且可让硬盘的盘片停止转动以保护硬盘,然后再以根据第一设定参数确定的指令发送方式先发送DCO还原指令进行DCO区域的还原,再发送HPA还原指令进行HPA区域的还原。其中,断掉的电源和上电的电源可使用5V端电源,也可同时使用5V端电源和12V端电源。
优选的,上述方法还包括如下步骤:将硬盘信息包括的第二设定参数与存储的上个硬盘相应的参数进行比对,判断是否为同一硬盘,若不是同一硬盘,则将硬盘信息进行存储,若是同一硬盘,则可选择是否进行硬盘隐藏区的还原。其中,所述第二设定参数为IDENTIFY DEVICE DATA的第27~46字和第10~19字,分别代表硬盘的盘符和序列号。也就是说,将获取的硬盘盘符和序列号与存储的上个硬盘的盘符和序列号进行比对,以判断在工作过程中出现异常断电等情况下,再次接入的硬盘是否为断电之前的硬盘。
优选的,若隐藏区包括HPA区域但不包括DCO区域时,对HPA的解除包括临时解除HPA区域和彻底解除HPA区域。其中,临时解除HPA区域为执行SET MAX ADDRESS 指令前把指令的Count第0位置为1,解除后用户可访问该HPA区域,硬盘掉电或硬件复位后,HPA区域还存在,但需要再次解除才能访问;彻底解除HPA区域为执行SET MAX ADDRESS指令前把指令的Count第0位置为0,解除后用户可访问该HPA区域,硬盘掉电或硬件复位后,HPA区域消失,需要重新设置才能还原HPA区域。
    优选的,所述方法是基于FPGA控制芯片来控制的方法。
本发明还提出一种与上述硬盘隐藏区的解除方法相对应的装置,将所述装置连接于只读保护设备与硬盘之间,再将只读保护设备连接于计算机。参看图2,为本发明的硬盘隐藏区的解除装置实施例的示意图,所述装置包括,获取单元21,用于获取硬盘信息;第一识别单元22,用于根据硬盘信息包括的硬盘隐藏区校验位来识别硬盘是否支持硬盘隐藏区指令,若支持硬盘隐藏区指令,则发送指令获取硬盘隐藏区最大地址;第二识别单元23,用于将硬盘信息包括的硬盘可见容量最大地址与所述硬盘隐藏区最大地址进行比较来识别硬盘是否包括硬盘隐藏区;解除单元24,用于以根据硬盘信息包括的第一设定参数确定的指令发送方式发送解除指令进行硬盘隐藏区的解除;还原单元25,用于以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原或先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,然后再以根据第一设定参数确定的指令发送方式发送还原指令进行硬盘隐藏区的还原。其中,所述硬盘隐藏区为HPA区域和/或DCO区域。
通过本发明提供的装置,能够在解除硬盘隐藏区、获得硬盘内部数据后还原硬盘隐藏区,且能够保证硬盘数据不被修改,从而保证取证工作的司法有效性与数据完整性。
优选的,参看图3,所述装置还包括判断单元26,用于将硬盘信息包括的第二设定参数与存储的上个硬盘相应的参数进行比对,判断是否为同一硬盘,若不是同一硬盘,则将硬盘信息进行存储,若是同一硬盘,则可选择是否进行硬盘隐藏区的还原。其中,所述第二设定参数为IDENTIFY DEVICE DATA的第27~46字和第10~19字,分别代表硬盘的盘符和序列号。也就是说,将获取的硬盘盘符和序列号与存储的上个硬盘的盘符和序列号进行比对,以判断在工作过程中出现异常断电等情况下,再次接入的硬盘是否为断电之前的硬盘。
具体的,在获取单元21中,获取硬盘信息为通过发送IDENTIFY DEVICE指令获取IDENTIFY DEVICE DATA,共256字,从中可以获取硬盘属性、硬盘支持的ATA指令等信息。
具体的,在第一识别单元22中,根据硬盘信息包含的硬盘隐藏区校验位IDENTIFY DEVICE DATA的第83字第11位i和第82字第10位j来识别硬盘是否支持硬盘隐藏区指令,即HPA指令和/或DCO指令。设定硬盘可容量最大地址为X,HPA区域的最大地址为Y,DCO区域的最大地址为Z,当ij=00b时,硬盘不支持HPA指令和DCO指令,赋值Y = X ,Z = X ;当ij=01b时,硬盘支持HPA指令但不支持DCO指令,发送ATA指令获取HPA区域的最大地址Y ,同时赋值Z = Y ;当ij=10b时,则硬盘不支持HPA指令但支持DCO指令,发送ATA指令获取DCO区域的最大地址Z ,同时赋值Y = X ;当ij=11b时,则硬盘同时支持HPA指令和DCO指令,发送ATA指令获取HPA区域的最大地址Y 和DCO区域的最大地址Z。具体的,通过发送ATA指令READ NATIVE MAX ADDRESS获取HPA区域的最大地址THE NATIVE MAX ADDRESS,共4字;通过发送ATA指令DEVICE CONFIGURATION IDENTIFY获取DEVICE CONFIGURATION IDENTIFY DATA,共256字,所述DCO区域的最大地址为DEVICE CONFIGURATION IDENTIFY DATA的第3~6字;所述硬盘可见容量的最大地址是通过IDENTIFY DEVICE DATA的第100-103字减1计算出来的。
具体的,在第二识别单元23中,将上述X,Y,Z进行比较来识别硬盘是否包含HPA区域和/或DCO区域。当X=Y且Y=Z时,硬盘不包含HPA区域和DCO区域;当X<Y且Y=Z时,硬盘有包含DCO区域;当X=Y且Y<Z时,硬盘包含HPA区域;当X<Y且Y<Z时,硬盘包含HPA区域和DCO区域。
具体的,在解除单元24中,所述第一设定参数为IDENTIFY DEVICE DATA的第7字第8位,也就是说,根据IDENTIFY DEVICE DATA的第7字第8位确定用28-bit指令方式发送指令或用48-bit方式发送指令。若硬盘包含HPA区域但不包含DCO区域时,发送HPA解除指令进行HPA区域的解除;若硬盘包含DCO区域但不包含HPA区域时,发送DCO解除指令进行DCO区域的解除;若硬盘包括HPA区域和DCO区域时,以根据所述第一设定参数确定的指令发送方式先发送HPA解除指令进行HPA区域的解除,再发送DCO解除指令进行DCO区域的解除。
具体的,在还原单元25中,同样是以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原。若硬盘包含HPA区域但不包含DCO区域时,发送HPA还原指令进行HPA区域的还原;若硬盘包含DCO但不包含HPA时,发送DCO还原指令进行DCO区域的还原;若硬盘包含HPA区域和DCO区域时,先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,以保证硬盘内电容有足够的时间放电且可让硬盘的盘片停止转动以保护硬盘,然后再以根据第一设定参数确定的指令发送方式先发送DCO还原指令进行DCO区域的还原,再发送HPA还原指令进行HPA区域的还原。其中,断掉的电源和上电的电源可使用5V端电源,也可同时使用5V端电源和12V端电源。
优选的,若隐藏区包括HPA区域但不包括DCO区域时,解除单元24对HPA的解除包括临时解除HPA区域和彻底解除HPA区域。其中,临时解除HPA区域为执行SET MAX ADDRESS 指令前把指令的Count第0位置为1,解除后用户可访问该HPA区域,硬盘掉电或硬件复位后,HPA区域还存在,但需要再次解除才能访问;彻底解除HPA区域为执行SET MAX ADDRESS指令前把指令的Count第0位置为0,解除后用户可访问该HPA区域,硬盘掉电或硬件复位后,HPA区域消失,需要重新设置才能还原HPA区域。
优选的,所述装置还包含FPGA控制芯片作为主控芯片,用于控制所述各单元的执行。所述FPGA控制芯片的配置可选用主动配置方式、被动配置方式或JTAG配置方式。通过FPGA控制芯片实现对SATA硬盘及满足SATA协议设备的控制,可提高取证速度,且可减少PCB(Printed Circuit Board) 面积,实现设备小型化,更便于携带,同时只有FPGA需要编写程序,升级操作简单。
如图4所示,为一种硬盘隐藏区的解除系统实施例的示意图,所述系统包括上文所述的硬盘隐藏区的解除装置,同时还包括:第一SATA控制器31-1,作为从设备控制器,用于将所述装置30通过只读保护设备41与计算机40连接,接收计算机40发送的数据并传送给所述装置30;第二SATA控制器31-2,作为主设备控制器,用于将所述装置30与SATA硬盘50连接,所述装置30通过第二SATA控制器31-2控制SATA硬盘50;FLASH控制器33,用于在存储FLASH数据时,将所述装置30传送的FLASH数据存储到FLASH存储芯片60对应的存储位置;在读取FLASH数据时,读取所述装置30指定存储位置的FLASH存储芯60片中的FLASH数据传送给所述装置30;SATA硬盘电源控制器34,用于将所述装置30的SATA硬盘电源通断信号转成SATA硬盘电源控制模块70所需的信号;按键和显示屏控制器35,用于驱动按键80和显示屏90,将所述装置30传送的信息在显示屏90上显示,将用户按下的按键命令传送给所述装置30;FLASH存储芯片60,用于存储所述装置30获得的 SATA硬盘信息;配置存储芯片100,用于存储FPGA的配置程序,上电时完成对FPGA控制芯片的配置;SATA硬盘电源控制模块70,用于控制SATA硬盘电源的通断状态;按键80,用于用户输入命令;显示屏90,用于显示所述装置30的工作状态及硬盘状态。
其中,FLASH存储芯片60存储的硬盘信息包括IDENTIFY DEVICE DATA,共256字;DEVICE CONFIGURATION IDENTIFY DATA,共256字和THE NATIVE MAX ADDRESS。
通过本发明提供的系统,能够在解除硬盘隐藏区、获得硬盘内部数据后还原硬盘隐藏区,且能够保证硬盘数据不被修改,从而保证取证工作的司法有效性与数据完整性。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本发明所提供的一种硬盘隐藏区的解除方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (23)

1.一种硬盘隐藏区的解除方法,其特征在于,执行所述方法的装置连接于只读保护设备与硬盘之间,所述方法包括,
获取硬盘信息;
根据硬盘信息包括的硬盘隐藏区校验位来识别硬盘是否支持硬盘隐藏区指令,若支持硬盘隐藏区指令,则发送指令获取硬盘隐藏区最大地址;
将硬盘信息包括的硬盘可见容量最大地址与所述硬盘隐藏区最大地址进行比较来识别硬盘是否包括硬盘隐藏区;
若硬盘包括硬盘隐藏区,以根据硬盘信息包括的第一设定参数确定的指令发送方式发送解除指令进行硬盘隐藏区的解除;
以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原或先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,然后再以根据第一设定参数确定的指令发送方式发送还原指令进行硬盘隐藏区的还原。
2.如权利要求1所述的方法, 其特征在于,还包括将硬盘信息包括的第二设定参数与存储的上个硬盘相应的参数进行比对,判断是否为同一硬盘,若不是同一硬盘,则将硬盘信息进行存储,若是同一硬盘,则选择是否进行硬盘隐藏区的还原。
3.如权利要求2所述的方法,其特征在于,所述硬盘隐藏区为HPA区域和/或DCO区域。
4.如权利要求3所述的方法,其特征在于,所述获取硬盘信息为通过发送IDENTIFY DEVICE指令获取IDENTIFY DEVICE DATA,共256字。
5.如权利要求3所述的方法,其特征在于,所述获取硬盘隐藏区最大地址包括获取HPA区域的最大地址和/或获取DCO区域的最大地址,其中,通过发送READ NATIVE MAX ADDRESS指令获取HPA区域的最大地址THE NATIVE MAX ADDRESS,共4字;通过发送DEVICE CONFIGURATION IDENTIFY指令获取DEVICE CONFIGURATION IDENTIFY DATA,所述DCO区域的最大地址为DEVICE CONFIGURATION IDENTIFY DATA的第3~6字。
6.如权利要求4所述的方法,其特征在于,所述硬盘可见容量的最大地址是通过IDENTIFY DEVICE DATA的第100-103字减1计算出来的。
7.如权利要求4所述的方法,其特征在于,所述硬盘隐藏区校验位为IDENTIFY DEVICE DATA的第83字第11位和第82字第10位。
8.如权利要求4所述的方法,其特征在于,所述第一设定参数为IDENTIFY DEVICE DATA的第7字第8位,根据所述第一设定参数确定用28-bit指令方式发送指令或用48-bit方式发送指令。
9.如权利要求4所述的方法,其特征在于,所述第二设定参数为IDENTIFY DEVICE DATA的第27~46字和第10~19字,分别代表硬盘的盘符和序列号。
10.如权利要求3所述的方法,其特征在于,若隐藏区包括HPA区域但不包括DCO区域时,对HPA区域的解除包括临时解除HPA区域和彻底解除HPA区域。
11.如权利要求1至10中任一项所述的方法,其特征在于,所述方法是基于FPGA控制芯片来控制的方法。
12.一种硬盘隐藏区的解除装置,其特征在于,所述装置连接于只读保护设备与硬盘之间,包括,
获取单元,用于获取硬盘信息;
第一识别单元,用于根据硬盘信息包括的硬盘隐藏区校验位来识别硬盘是否支持硬盘隐藏区指令,若支持硬盘隐藏区指令,则发送指令获取硬盘隐藏区最大地址;
第二识别单元,用于将硬盘信息包括的硬盘可见容量最大地址与所述硬盘隐藏区最大地址进行比较来识别硬盘是否包括硬盘隐藏区;
解除单元,用于以根据硬盘信息包括的第一设定参数确定的指令发送方式发送解除指令进行硬盘隐藏区的解除;
还原单元,用于以根据第一设定参数确定的指令发送方式发送还原指令进行隐藏区的还原或先断掉硬盘连接和硬盘电源一设定时间后重新进行硬盘连接和硬盘上电,然后再以根据第一设定参数确定的指令发送方式发送还原指令进行硬盘隐藏区的还原。
13.如权利要求12所述的装置,其特征在于,还包括判断单元,用于将硬盘信息包括的第二设定参数与存储的上个硬盘相应的参数进行比对,判断是否为同一硬盘,若不是同一硬盘,则将硬盘信息进行存储,若是同一硬盘,则选择是否进行硬盘隐藏区的还原。
14.如权利要求13所述的装置,其特征在于,所述硬盘隐藏区为HPA区域和/或DCO区域。
15.如权利要求14所述的装置,其特征在于,所述获取单元获取硬盘信息为通过发送IDENTIFY DEVICE指令获取IDENTIFY DEVICE DATA,共256字。
16.如权利要求14所述的装置,其特征在于,所述第一识别单元获取硬盘隐藏区最大地址包括获取HPA区域的最大地址和/或获取DCO区域的最大地址,其中,通过发送READ NATIVE MAX ADDRESS指令获取HPA区域的最大地址THE NATIVE MAX ADDRESS,共4字;通过发送DEVICE CONFIGURATION IDENTIFY指令获取DEVICE CONFIGURATION IDENTIFY DATA,所述DCO区域的最大地址为DEVICE CONFIGURATION IDENTIFY DATA的第3~6字。
17.如权利要求15所述的装置,其特征在于,所述硬盘可见容量的最大地址是通过IDENTIFY DEVICE DATA的第100-103字减1计算出来的。
18.如权利要求15所述的装置,其特征在于,所述硬盘隐藏区校验位为IDENTIFY DEVICE DATA的第83字第11位和第82字第10位。
19.如权利要求15所述的装置,其特征在于,所述第一设定参数为IDENTIFY DEVICE DATA的第7字第8位,根据所述第一设定参数确定用28-bit指令方式发送指令或用48-bit方式发送指令。
20.如权利要求15所述的装置,其特征在于,所述第二设定参数为IDENTIFY DEVICE DATA的第27~46字和第10~19字,分别代表硬盘的盘符和序列号。
21.如权利要求14所述的装置,其特征在于,当隐藏区包括HPA区域但不包括DCO区域时,所述解除单元执行的对HPA区域的解除包括临时解除和彻底解除。
22.如权利要求12至21中任一项所述的装置,其特征在于,还包含FPGA控制芯片,用于控制所述各单元的执行。
23.一种硬盘隐藏区的解除系统,其特征在于,包括如权利要求12至22中任一项所述的装置,所述系统还包括:
第一SATA控制器,用于将所述装置与上位机连接,接收上位机发送的数据
并传送给所述装置;
第二SATA控制器,用于将所述装置与SATA硬盘连接,所述装置通过第二
SATA控制器控制SATA硬盘;
FLASH控制器,用于在存储FLASH数据时,将所述装置传送的FLASH数据存储到FLASH存储芯片对应的存储位置;在读取FLASH数据时,读取所述装置指定存储位置的FLASH存储芯片中的FLASH数据传送给所述装置;
SATA硬盘电源控制器,用于将所述装置的SATA硬盘电源通断信号转成SATA
硬盘电源控制模块所需的信号;
按键和显示屏控制器,用于驱动按键和显示屏,将所述装置传送的信息在
显示屏上显示,将用户按下的按键命令传送给所述装置;
FLASH存储芯片,用于存储所述装置获得的 SATA硬盘信息;
配置存储芯片,用于存储FPGA的配置程序,上电时完成对FPGA控制芯片
的配置;
SATA硬盘电源控制模块,用于控制SATA硬盘电源的通断状态;
按键,用于用户输入命令;
显示屏,用于显示所述装置的工作状态及硬盘状态。
CN201210582938.XA 2012-12-28 2012-12-28 一种硬盘隐藏区的解除方法、装置和系统 Active CN103049223B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210582938.XA CN103049223B (zh) 2012-12-28 2012-12-28 一种硬盘隐藏区的解除方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210582938.XA CN103049223B (zh) 2012-12-28 2012-12-28 一种硬盘隐藏区的解除方法、装置和系统

Publications (2)

Publication Number Publication Date
CN103049223A true CN103049223A (zh) 2013-04-17
CN103049223B CN103049223B (zh) 2016-01-20

Family

ID=48061876

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210582938.XA Active CN103049223B (zh) 2012-12-28 2012-12-28 一种硬盘隐藏区的解除方法、装置和系统

Country Status (1)

Country Link
CN (1) CN103049223B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107341077A (zh) * 2017-06-30 2017-11-10 郑州云海信息技术有限公司 一种用于硬盘筛选的方法及其系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020133714A1 (en) * 2001-01-16 2002-09-19 Gateway, Inc. Host protected area( HPA) duplication process
CN1506853A (zh) * 2002-12-09 2004-06-23 联想(北京)有限公司 Windows系统下实现利用硬盘隐藏扇区保护数据的方法
CN1877727A (zh) * 2005-06-10 2006-12-13 技嘉科技股份有限公司 硬盘数据备份方法
CN101183341A (zh) * 2007-12-10 2008-05-21 上海北大方正科技电脑系统有限公司 一种电脑数据保密方法
CN101271430A (zh) * 2007-03-21 2008-09-24 联想(北京)有限公司 一种对存储设备中的数据进行保护的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020133714A1 (en) * 2001-01-16 2002-09-19 Gateway, Inc. Host protected area( HPA) duplication process
CN1506853A (zh) * 2002-12-09 2004-06-23 联想(北京)有限公司 Windows系统下实现利用硬盘隐藏扇区保护数据的方法
CN1877727A (zh) * 2005-06-10 2006-12-13 技嘉科技股份有限公司 硬盘数据备份方法
CN101271430A (zh) * 2007-03-21 2008-09-24 联想(北京)有限公司 一种对存储设备中的数据进行保护的方法和装置
CN101183341A (zh) * 2007-12-10 2008-05-21 上海北大方正科技电脑系统有限公司 一种电脑数据保密方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107341077A (zh) * 2017-06-30 2017-11-10 郑州云海信息技术有限公司 一种用于硬盘筛选的方法及其系统

Also Published As

Publication number Publication date
CN103049223B (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
CN107526665B (zh) 机箱管理系统及机箱管理方法
CN104424044A (zh) 伺服器系统
CN102375788A (zh) 为具有非易失性存储器的系统动态地分配功率预算的方法及装置
JP2015057726A (ja) メモリインターフェイスを利用してメモリモジュールのパーティショニングを制御する方法
CN103176883A (zh) 固态硬盘状态监控系统
CN102662804A (zh) 一种固态硬盘防掉电不可逆自毁的方法
CN104216796A (zh) 一种数据备份、恢复方法及电子设备
CN201828901U (zh) 一种存储功能卡
US20120271983A1 (en) Computing device and data synchronization method
CN110488673A (zh) 一种低功耗模式的数据处理模块及数据处理方法
CN103513937A (zh) 能够增加其生命周期的存储设备及其操作方法
JP2015049907A (ja) メモリをホットスワップできるマザーボード
CN102207905A (zh) 系统恢复方法、存储媒体控制器及存储系统
CN103870367A (zh) Sas扩展卡自动切换系统及方法
CN103136487B (zh) 一种管理硬盘隐藏区中数据的方法、装置及系统
CN105608013A (zh) 一种集成mram的存储卡控制芯片及存储卡
CN103425591A (zh) 具可延长储存空间使用寿命的非挥发性内存装置及其方法
CN105159839A (zh) 一种配置方法和装置以及固态硬盘
CN101620568B (zh) 存储装置和数据储存方法
CN104484289A (zh) 一种基于扇区的嵌入式系统写保护的装置以及方法
CN103853638A (zh) 一种刷新固件的方法及电子设备
CN103389941A (zh) 存储器格式化方法、存储器控制器及存储器存储装置
CN102135896B (zh) 一种基于嵌入式系统实现软件升级的方法和系统
CN103049223A (zh) 一种硬盘隐藏区的解除方法、装置和系统
CN104699410B (zh) 一种信息处理方法及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant