CN110457239B - 一种提取固态硬盘基本密钥的方法 - Google Patents

一种提取固态硬盘基本密钥的方法 Download PDF

Info

Publication number
CN110457239B
CN110457239B CN201910699913.XA CN201910699913A CN110457239B CN 110457239 B CN110457239 B CN 110457239B CN 201910699913 A CN201910699913 A CN 201910699913A CN 110457239 B CN110457239 B CN 110457239B
Authority
CN
China
Prior art keywords
data
reading
block
current
basic key
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.)
Active
Application number
CN201910699913.XA
Other languages
English (en)
Other versions
CN110457239A (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.)
Xly Salvationdata Technology Inc
Original Assignee
Xly Salvationdata Technology Inc
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 Xly Salvationdata Technology Inc filed Critical Xly Salvationdata Technology Inc
Priority to CN201910699913.XA priority Critical patent/CN110457239B/zh
Publication of CN110457239A publication Critical patent/CN110457239A/zh
Application granted granted Critical
Publication of CN110457239B publication Critical patent/CN110457239B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了一种提取固态硬盘基本密钥的方法,其特征在于包括以下步骤:S100:读取固态硬盘的主控芯片中各块前八个字节的内容并获取主控芯片的数据表,读取数据表中的布局;S200:读取任一通道中数据的镜像,根据块结构和第一标识提取块数据;S300:读取当前块数据中各页的各扇区中前两个字节内容,用以生成第一数据;S400:将第一数据划分为两字节一组,读取第一组的内容;S500:获取对应当前扇区的基本密钥并尾加至临时密钥文件中;S600:是否完成第一数据中其他组的操作,如果是,执行步骤S800,否则,执行步骤S700;S700:读取下一组的内容,执行步骤S500;S800:获取当前临时密钥文件作为当前块的基本密钥,完成基本密钥的提取。

Description

一种提取固态硬盘基本密钥的方法
技术领域
本发明属于电子数据恢复与取证领域,涉及一种提取固态硬盘基本密钥的方法。
背景技术
在电子数据存储领域,随着固态硬盘SSD的存储大小不断的增加,以及固态硬盘SSD的价格的降低和读写速度上明显的优势,使得使用固态硬盘SSD的用户在不断增加。但是目前固态硬盘SSD的缺点也非常的明显,固态硬盘SSD的闪存芯片具有擦写次数限制,所以固态硬盘SSD的寿命要比机械硬盘短得多。如果固态硬盘SSD出现了硬件或者固件的损坏,需要恢复固态硬盘SSD中重要的用户数据。无论是修复硬件还是固件的损坏,目前都没有成熟的技术能够实现。所以,固态硬盘SSD在出现损坏的情况下,数据是很难恢复出来。本发明为固态硬盘SSD的数据恢复重要组成部分,将固态硬盘SSD的闪存芯片中直接提取的数据提取基本密钥。而用户数据的密钥生成对数据恢复有着至关重要的作用,同时也提高了数据恢复成功率。
包含主控芯片的U盘或者固态硬盘SSD等存储设备的加密算法较为简单,密钥算法多为左移或者右移n位(n>0)、取反等基础数学运算,分析其密钥生成算法较易。随着U盘或者固态硬盘SSD等存储设备愈加广泛的应用,加之主控芯片的发展,主控芯片的加密方式越来越多变、越来越复杂,特别是对加密复杂的SSD存储设备以及存储设备接口损坏、电路短路、断路、元器件损坏、电路板断裂等情况下,电子数据恢复与取证有关的解密正面临越来越大额度挑战。
现有技术中尚无一种提取固态硬盘基本密钥的方法,给该类包含主控芯片的存储设备的电子数据恢复与取证造成了巨大的困难。因此,急需一种提取固态硬盘基本密钥的方法,以弥补电子数据恢复与取证困难的不足。
发明内容
本发明针对现有技术的不足问题,提出了一种提取固态硬盘基本密钥的方法:采取分析数据表中的布局并获取查找关键字,获取扇区的基本密钥并组合为固态硬盘基本密钥的方法,达到解密数据的目的。
为便于描述,本发明可能包含如下术语:
在主控芯片包含一个或多个通道(channel),每个通道包含一个或多个块(block),每个块包含一个或多个页(page),每个页包含一个页管理字段(或称系统区SA:System Area,以下统称页管理字段)及多个扇区(sector),每个扇区包含固定字节长度的数据及固定字节长度的扇区管理字段(或称管理数据MD:Manage Data,以下统称扇区管理字段)。
本发明申请包括以下步骤:
S100:读取所述固态硬盘的主控芯片中各块前八个字节的内容并获取所述主控芯片的数据表,读取所述数据表中的布局,所述布局包括通道个数、各通道所包含的块数、各块所包含的页数、各页所包含的扇区数、页管理字段字节长度、扇区字节长度、扇区管理字段字节长度;
S200:读取任一通道中数据的镜像,根据块结构和第一标识提取块数据;
S300:读取当前块数据中各页的各扇区中前两个字节内容,用以生成第一数据;
S400:将所述第一数据划分为两字节一组,读取第一组的内容;
S500:将当前组的内容作为关键字,在用户数据区中查找所述关键字,将查找到的当前关键字的前两个字节的内容作为对应当前扇区的基本密钥,将所述对应当前扇区的基本密钥尾加至临时密钥文件中;
S600:是否完成所述第一数据中其他组的操作,如果是,执行步骤S800,否则,执行步骤S700;
S700:读取下一组的内容,执行步骤S500;
S800:获取当前临时密钥文件作为当前块的基本密钥,完成基本密钥的提取。
优选地,所述用户数据区不包含页管理字段及扇区管理字段。
优选地,所述步骤S200包括以下步骤:
S201:根据块结构,读取当前块的前八个字节内容;
S202:当前块的前八个字节内容是否等于所述第一标识,如果是,提取块数据并执行步骤S300,否则结束流程。
本发明的有益效果是解决了现有技术中尚无一种提取固态硬盘基本密钥的方法的技术问题。
附图说明
图1为本发明所提供的方法的总流程图;
图2为本发明一个实施例中密钥块的数据结构示意图。
具体实施方式
本发明采用主控芯片型号为SM2246XT作为实施例。下面结合附图和实施例对本发明作进一步阐述。
图1示出了本发明所提供的方法的总流程图。
如图1所示,本发明的方法包括以下步骤:
S100:读取固态硬盘的主控芯片(主控芯片型号为SM2246XT)中各块前八个字节的内容并获取主控芯片的数据表,读取数据表中的布局,包括扇区字节长度、扇区管理字段字节长度、页管理字段字节长度、每块所包含的页数及密钥块的初始字节。
图2示出了本发明一个实施例中密钥块的数据结构示意图。如图2所示,主控芯片包含一个或多个通道(channel);为简洁考虑,图中未示出通道(channel)。每个通道包含一个或多个块100(block),每个块100包含一个或多个页101(page),每个页101包含一个页管理字段1012(或称系统区SA:System Area,以下统称页管理字段)及多个扇区1011(sector),每个扇区包含固定字节长度的数据10111及固定字节长度的扇区管理字段10112(或称管理数据MD:Manage Data,以下统称扇区管理字段)。
以该主控芯片为例,其布局为一个通道包含4096块,一个块包含256页,一个页包含16个扇区,一个扇区字节长度为1098字节,其中,数据字节长度为1024字节,扇区管理字段的字节长度为74字节;页管理字段字节长度为48字节。
S200:根据图2所示的块结构,读取任一通道中数据的镜像并查找第一标识0x498383C2C8A7FCE7,当查找到该第一标识即提取当前块数据;包括以下步骤:
S201:根据块结构,读取当前块的前八个字节内容;
S202:判断当前块的前八个字节内容是否等于第一标识0x498383C2C8A7FCE7,如果是,提取块数据并执行步骤S300,否则结束流程。
S300:读取当前块数据中各页的各扇区中前两个字节内容,用以生成第一数据;具体地,在步骤S200所提取的当前块数据中,以字节长度为1024字节的扇区为单位,每页包含16个扇区,从当前块数据的第一页开始,依次提取第1至16个扇区中各个扇区的前两个字节,这样每页就会提取出32字节的一组数据;对于一个块,需要依次提取第1至256页的数据,每个页都提取这样32字节的数据,这样组成8192字节的一组数据作为第一数据;
S400:将第一数据划分为两字节一组,读取第一组的内容;
S500:将当前组的内容作为关键字,在用户数据区中查找关键字,将查找到的当前关键字的前两个字节的内容作为对应当前扇区的基本密钥,将对应当前扇区的基本密钥尾加至临时密钥文件中;需要注意的是,用户数据区不包含页管理字段及扇区管理字段;
S600:是否完成第一数据中其他组的操作,如果是,执行步骤S800,否则,执行步骤S700;
S700:读取下一组的内容,执行步骤S500;
S800:获取当前临时密钥文件作为当前块的基本密钥,完成基本密钥的提取。
通过本发明提供的方法,解决了现有技术中尚无一种提取固态硬盘基本密钥的方法的技术问题。
应当理解的是,本发明不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (2)

1.一种提取固态硬盘基本密钥的方法,其特征在于包括以下步骤:
S100:读取所述固态硬盘的主控芯片中各块前八个字节的内容并获取所述主控芯片的数据表,读取所述数据表中的布局,所述布局包括通道个数、各通道所包含的块数、各块所包含的页数、各页所包含的扇区数、页管理字段字节长度、扇区字节长度、扇区管理字段字节长度;
S200:读取任一通道中数据的镜像,根据块结构和第一标识提取块数据;
S300:读取当前块数据中各页的各扇区中前两个字节内容,用以生成第一数据;
S400:将所述第一数据划分为两字节一组,读取第一组的内容;
S500:将当前组的内容作为关键字,在用户数据区中查找所述关键字,将查找到的当前关键字的前两个字节的内容作为对应当前扇区的基本密钥,将所述对应当前扇区的基本密钥尾加至临时密钥文件中,其中,用户数据区不包含页管理字段及扇区管理字段;
S600:是否完成所述第一数据中其他组的操作,如果是,执行步骤S800,否则,执行步骤S700;
S700:读取下一组的内容,执行步骤S500;
S800:获取当前临时密钥文件作为当前块的基本密钥,完成基本密钥的提取。
2.根据权利要求1所述的一种提取固态硬盘基本密钥的方法,其特征在于,所述步骤S200包括以下步骤:
S201:根据块结构,读取当前块的前八个字节内容;
S202:当前块的前八个字节内容是否等于所述第一标识,如果是,提取块数据并执行步骤S300,否则结束流程。
CN201910699913.XA 2019-07-31 2019-07-31 一种提取固态硬盘基本密钥的方法 Active CN110457239B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910699913.XA CN110457239B (zh) 2019-07-31 2019-07-31 一种提取固态硬盘基本密钥的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910699913.XA CN110457239B (zh) 2019-07-31 2019-07-31 一种提取固态硬盘基本密钥的方法

Publications (2)

Publication Number Publication Date
CN110457239A CN110457239A (zh) 2019-11-15
CN110457239B true CN110457239B (zh) 2023-05-02

Family

ID=68484253

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910699913.XA Active CN110457239B (zh) 2019-07-31 2019-07-31 一种提取固态硬盘基本密钥的方法

Country Status (1)

Country Link
CN (1) CN110457239B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360957B (zh) * 2021-06-30 2022-08-02 四川效率源信息安全技术股份有限公司 一种主控为sm2246en的固态硬盘的密码提取方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102014015A (zh) * 2010-06-29 2011-04-13 北京飞天诚信科技有限公司 智能密钥设备的自检方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6459495B1 (en) * 1997-07-15 2002-10-01 Silverbrook Research Pty Ltd Dot center tracking in optical storage systems using ink dots
CN100557716C (zh) * 1999-04-27 2009-11-04 松下电器产业株式会社 半导体存储卡及其控制方法
US7021971B2 (en) * 2003-09-11 2006-04-04 Super Talent Electronics, Inc. Dual-personality extended-USB plug and receptacle with PCI-Express or Serial-At-Attachment extensions
CN100464315C (zh) * 2006-05-22 2009-02-25 中国软件与技术服务股份有限公司 移动存储器失泄密防护的方法和系统
US8417902B2 (en) * 2008-08-05 2013-04-09 Atmel Corporation One-time-programmable memory emulation
CN106845251A (zh) * 2015-12-07 2017-06-13 四川效率源信息安全技术股份有限公司 闪存芯片物理镜像后的数据解密方法
CN106445416B (zh) * 2016-09-22 2019-08-09 飞天诚信科技股份有限公司 一种数据记录的存储、查询和检索的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102014015A (zh) * 2010-06-29 2011-04-13 北京飞天诚信科技有限公司 智能密钥设备的自检方法

Also Published As

Publication number Publication date
CN110457239A (zh) 2019-11-15

Similar Documents

Publication Publication Date Title
CN106201774B (zh) 一种nand flash存储芯片数据存储结构分析方法
CN106874348B (zh) 文件存储和索引方法、装置及读取文件的方法
CN109496292B (zh) 一种磁盘管理方法、磁盘管理装置及电子设备
US9164845B2 (en) Partition recovery method and apparatus
CN104461390A (zh) 将数据写入叠瓦状磁记录smr硬盘的方法及装置
KR20090002839A (ko) 플래시 메모리를 위한 색인 스킴
CN104238962A (zh) 向缓存中写入数据的方法及装置
KR20140083556A (ko) SQLite 데이터베이스에서 삭제된 데이터의 복원 방법 및 장치
CN110457239B (zh) 一种提取固态硬盘基本密钥的方法
CN106445476A (zh) 一种代码变更信息确定方法、装置及电子设备
CN112732191A (zh) 基于日志结构合并树合并数据的方法、系统、设备及介质
CN103870364B (zh) 一种基于时间戳的yaffs2文件最终版恢复方法
CN111897675B (zh) 一种手机端f2fs文件系统的近期删除文件恢复方法
CN112463020A (zh) 基于Flash的数据存取方法、装置及设备
CN104462148A (zh) 一种数据存储管理方法及装置
CN110443053B (zh) 一种基于密钥循环表及映射表的密钥生成方法
CN104536947A (zh) 版式文档的处理方法及装置
CN105260130B (zh) 一种希捷硬盘系统文件的读写方法
CN109684124B (zh) 一种修复西数硬盘固件只读故障的方法
CN103856365A (zh) 客户终端接入设备自动测试方法和系统
CN110427764B (zh) 一种针对主控芯片的数据解密方法
CN100565688C (zh) 媒体处理方法及其装置
CN105760313A (zh) 基于SPI-Flash的文件系统的数据处理方法及装置
KR101486235B1 (ko) 대용량 포렌식 이미지의 정보 추출 장치
CN103559106A (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
GR01 Patent grant
GR01 Patent grant