CN110427764A - 一种针对主控芯片的数据解密方法 - Google Patents

一种针对主控芯片的数据解密方法 Download PDF

Info

Publication number
CN110427764A
CN110427764A CN201910699656.XA CN201910699656A CN110427764A CN 110427764 A CN110427764 A CN 110427764A CN 201910699656 A CN201910699656 A CN 201910699656A CN 110427764 A CN110427764 A CN 110427764A
Authority
CN
China
Prior art keywords
block
data
block number
main control
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.)
Granted
Application number
CN201910699656.XA
Other languages
English (en)
Other versions
CN110427764B (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.)
SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Original Assignee
SICHUAN XLY INFORMATION SAFETY 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 SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd filed Critical SICHUAN XLY INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority to CN201910699656.XA priority Critical patent/CN110427764B/zh
Publication of CN110427764A publication Critical patent/CN110427764A/zh
Application granted granted Critical
Publication of CN110427764B publication Critical patent/CN110427764B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种针对主控芯片的数据解密方法,其特征在于包括以下步骤:S100:获取主控芯片的数据表,读取所述数据表中的布局;S200:读取当前块中填用户数据的底层数据并查找所述初始字节;S300:判断所述初始字节后是否具有连续N字节内容为0xFF,如果是,执行步骤S200,否则执行步骤S400;S400:将当前块作为基本密钥块;S500:生成第一块号;S600:判断所述第三块号中以两字节为一组的块号是否为递增/递减,如果是,执行步骤S700,否则,寻址一下块,执行步骤S500;S700:判断所述第三块号中连续缺失的块号个数是否大于M,如果是,执行步骤S600,否则,执行步骤S800;S800:形成完整密钥块;S900:获取解密数据。

Description

一种针对主控芯片的数据解密方法
技术领域
本发明属于电子数据恢复与取证领域,涉及一种针对主控芯片的数据解密方法。
背景技术
包含主控芯片的U盘或者固态硬盘SSD等存储设备的加密算法较为简单,密钥算法多为左移或者右移n位(n>0)、取反等基础数学运算,分析其密钥生成算法较易。随着U盘或者固态硬盘SSD等存储设备愈加广泛的应用,加之主控芯片的发展,主控芯片的加密方式越来越多变、越来越复杂,特别是对加密复杂的SSD存储设备以及存储设备接口损坏、电路短路、断路、元器件损坏、电路板断裂等情况下,电子数据恢复与取证有关的解密正面临越来越大额度挑战。
现有技术中尚无一种针对主控芯片的数据解密方法,给该类包含主控芯片的存储设备的电子数据恢复与取证造成了巨大的困难。因此,急需一种针对该类主控芯片的存储设备的数据解密方法,以弥补电子数据恢复与取证困难的不足。
发明内容
本发明针对现有技术的不足问题,提出了一种针对主控芯片的数据解密方法:采取分析并获取管理字密钥的方法,获取完整密钥块,达到解密数据的目的。
为便于描述,本发明可能包含如下术语:
在主控芯片包含一个或多个通道(channel),每个通道包含一个或多个块(block),每个块包含一个或多个页(page),每个页包含一个页管理字段(或称系统区SA:System Area,以下统称页管理字段)及多个扇区(sector),每个扇区包含固定字节长度的数据及固定字节长度的扇区管理字段(或称管理数据MD:Manage Data,以下统称扇区管理字段)。
本发明申请包括以下步骤:
S100:获取主控芯片的数据表,读取所述数据表中的布局,包括扇区字节长度、扇区管理字段字节长度、页管理字段字节长度、每块所包含的页数及密钥块的初始字节;
S200:读取当前块中填用户数据的底层数据并查找所述初始字节;
S300:判断所述初始字节后是否具有连续N字节内容为0xFF,如果是,表示当前块为无效块并寻址下一块,执行步骤S200,否则执行步骤S400;
S400:将当前块作为基本密钥块,所述基本密钥块包括管理字密钥及数据区密钥;
S500:生成第一块号;
S600:遍历并读取所述另一同型号主控芯片的页管理字段中的块号作为第二块号,所述第二块号为小端格式存储且以两字节为一组,将所述第一块号与所述第二块号对应的两字节为一组进行异或,其结果按升序/降序排列,作为第三块号,所述第三块号为小端格式存储且以两字节为一组;
判断所述第三块号中以两字节为一组的块号是否为递增/递减,如果是,执行步骤S700,否则,寻址一下块,执行步骤S500;
S700:判断所述第三块号中连续缺失的块号个数是否大于M,如果是,则所述第三块号为不可用密钥块,执行步骤S600,否则,表示所述第三块号为可用密钥块,执行步骤S800;
S800:所述数据区密钥保持不变并采用所述第三块号替换所述基本密钥块中的所述管理字密钥,用以形成完整密钥块;
S900:获取解密数据:以块为单位,将各个块与所述完整密钥块进行按位异或得到解密数据。
优选地,N为不小于4的自然数,M为大于10的自然数。
优选地,所述步骤S500包括以下步骤:
S501:将另一同型号主控芯片的底层数据填零并读取所述填零的底层数据;
S502:将所述填零的底层数据与所述填用户数据的底层数据按位异或,用以生成临时解密数据;
S503:获取所述临时解密数据中的块号:读取所述临时解密数据中各个页管理字段,并读取各个所述页管理字段第20、第21字节的内容作为第一块号,所述第一块号为小端格式存储且以两字节为一组,其中,同一块内各个页具有相同的块号。
本发明的有益效果是解决了现有技术中尚无一种针对主控芯片的数据解密方法的技术问题。
附图说明
图1为本发明所提供的方法的总流程图;
图2为本发明一个实施例中密钥块的数据结构示意图;
图3为本发明一个实施例中第一块号的数据结构示意图。
具体实施方式
本发明采用主控芯片型号为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:读取当前块中填用户数据的底层数据并查找初始字节:查找以初始字节4983开头的块,具体地,本发明实施例的该主控芯片的布局分为上下2048块,合计4096块,且块为两两一组。上下2048块对称分布。因此,查找时由上至下遍历2048块即可。
S300:判断初始字节为4983后是否具有连续4字节内容为0xFF,如果是,表示当前块为无效块并寻址下一块,执行步骤S200,否则执行步骤S400;
S400:将当前块作为基本密钥块,基本密钥块包括74字节的管理字密钥及1024字节的数据区密钥;
S500:生成第一块号,步骤S500包括以下步骤:
S501:将另一同型号主控芯片的底层数据填零并读取该填零的底层数据;
S502:将该填零的底层数据与填用户数据的底层数据按位异或,用以生成临时解密数据;
S503:获取临时解密数据中的块号:读取临时解密数据中的48字节的各个页管理字段,并读取各个页管理字段第20、第21字节的内容作为第一块号,第一块号为小端格式存储且以两字节为一组,其中,同一块内各个页具有相同的块号。
图3示出了本发明一个实施例中第一块号的数据结构示意图。如图3中矩形框的内容所示,两字节为一组的第20、第21字节的内容为0x350C,由于是小端格式存储,因此,其块号为0x0C35,且该块内各个页具有相同的块号0x0C35。
S600:遍历并读取另一同型号主控芯片的页管理字段中的块号作为第二块号,第二块号为小端格式存储且以两字节为一组,将第一块号与第二块号对应的两字节为一组进行异或,其结果按升序/降序排列,作为第三块号,第三块号为小端格式存储且以两字节为一组;
判断第三块号中以两字节为一组的块号是否为递增/递减,如果是,执行步骤S700,否则,寻址一下块,执行步骤S500;
S700:判断第三块号中连续缺失的块号个数是否大于10,如果是,则第三块号为不可用密钥块,执行步骤S600,否则,表示第三块号为可用密钥块,执行步骤S800;
S800:数据区密钥保持不变并采用第三块号替换基本密钥块中的管理字密钥,用以形成完整密钥块;
S900:获取解密数据:以块为单位,将各个块与该完整密钥块进行按位异或得到解密数据。
通过本发明提供的方法,解决了现有技术中尚无一种针对主控芯片的数据解密方法的技术问题。
应当理解的是,本发明不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (3)

1.一种针对主控芯片的数据解密方法,其特征在于包括以下步骤:
S100:获取主控芯片的数据表,读取所述数据表中的布局,包括扇区字节长度、扇区管理字段字节长度、页管理字段字节长度、每块所包含的页数及密钥块的初始字节;
S200:读取当前块中填用户数据的底层数据并查找所述初始字节;
S300:判断所述初始字节后是否具有连续N字节内容为0xFF,如果是,表示当前块为无效块并寻址下一块,执行步骤S200,否则执行步骤S400;
S400:将当前块作为基本密钥块,所述基本密钥块包括管理字密钥及数据区密钥;
S500:生成第一块号;
S600:遍历并读取所述另一同型号主控芯片的页管理字段中的块号作为第二块号,所述第二块号为小端格式存储且以两字节为一组,将所述第一块号与所述第二块号对应的两字节为一组进行异或,其结果按升序/降序排列,作为第三块号,所述第三块号为小端格式存储且以两字节为一组;
判断所述第三块号中以两字节为一组的块号是否为递增/递减,如果是,执行步骤S700,否则,寻址一下块,执行步骤S500;
S700:判断所述第三块号中连续缺失的块号是否多于M个,如果是,则所述第三块号为不可用密钥块,执行步骤S600,否则,表示所述第三块号为可用密钥块,执行步骤S800;
S800:所述数据区密钥保持不变并采用所述第三块号替换所述基本密钥块中的所述管理字密钥,用以形成完整密钥块;
S900:获取解密数据:以块为单位,将各个块与所述完整密钥块进行按位异或得到解密数据。
2.根据权利要求1所述的一种针对主控芯片的数据解密方法,其特征在于,N为不小于4的自然数,M为大于10的自然数。
3.根据权利要求2所述的一种针对主控芯片的数据解密方法,其特征在于,所述步骤S500包括以下步骤:
S501:将另一同型号主控芯片的底层数据填零并读取所述填零的底层数据;
S502:将所述填零的底层数据与所述填用户数据的底层数据按位异或,用以生成临时解密数据;
S503:获取所述临时解密数据中的块号:读取所述临时解密数据中各个页管理字段,并读取各个所述页管理字段第20、第21字节的内容作为第一块号,所述第一块号为小端格式存储且以两字节为一组,其中,同一块内各个页具有相同的块号。
CN201910699656.XA 2019-07-31 2019-07-31 一种针对主控芯片的数据解密方法 Active CN110427764B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910699656.XA CN110427764B (zh) 2019-07-31 2019-07-31 一种针对主控芯片的数据解密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910699656.XA CN110427764B (zh) 2019-07-31 2019-07-31 一种针对主控芯片的数据解密方法

Publications (2)

Publication Number Publication Date
CN110427764A true CN110427764A (zh) 2019-11-08
CN110427764B CN110427764B (zh) 2022-11-04

Family

ID=68413217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910699656.XA Active CN110427764B (zh) 2019-07-31 2019-07-31 一种针对主控芯片的数据解密方法

Country Status (1)

Country Link
CN (1) CN110427764B (zh)

Cited By (1)

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

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020071274A (ko) * 2001-03-06 2002-09-12 한승조 Pc기반의 암호칩 및 플래시 메모리를 이용한 유.에스.비보안보조기억장치
CN1936870A (zh) * 2005-09-23 2007-03-28 中国科学院计算技术研究所 一种硬盘扇区级数据加密解密方法及系统
US20100268864A1 (en) * 2009-04-20 2010-10-21 Arunprasad Ramiya Mothilal Logical-to-Physical Address Translation for a Removable Data Storage Device
CN104090790A (zh) * 2014-06-30 2014-10-08 飞天诚信科技股份有限公司 一种安全终端的双芯片方案的固件更新方法
CN106201774A (zh) * 2016-06-28 2016-12-07 中国人民解放军61660部队 一种nand flash存储芯片数据存储结构分析方法
CN107516053A (zh) * 2017-08-25 2017-12-26 四川巧夺天工信息安全智能设备有限公司 针对主控芯片ps2251的数据加密方法
CN108075882A (zh) * 2016-11-14 2018-05-25 航天信息股份有限公司 密码卡及其加解密方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020071274A (ko) * 2001-03-06 2002-09-12 한승조 Pc기반의 암호칩 및 플래시 메모리를 이용한 유.에스.비보안보조기억장치
CN1936870A (zh) * 2005-09-23 2007-03-28 中国科学院计算技术研究所 一种硬盘扇区级数据加密解密方法及系统
US20100268864A1 (en) * 2009-04-20 2010-10-21 Arunprasad Ramiya Mothilal Logical-to-Physical Address Translation for a Removable Data Storage Device
CN104090790A (zh) * 2014-06-30 2014-10-08 飞天诚信科技股份有限公司 一种安全终端的双芯片方案的固件更新方法
CN106201774A (zh) * 2016-06-28 2016-12-07 中国人民解放军61660部队 一种nand flash存储芯片数据存储结构分析方法
CN108075882A (zh) * 2016-11-14 2018-05-25 航天信息股份有限公司 密码卡及其加解密方法
CN107516053A (zh) * 2017-08-25 2017-12-26 四川巧夺天工信息安全智能设备有限公司 针对主控芯片ps2251的数据加密方法

Cited By (2)

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

Also Published As

Publication number Publication date
CN110427764B (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
CN104298680B (zh) 数据统计方法及数据统计装置
CN109948641A (zh) 异常群体识别方法及装置
CN106445588B (zh) 属性信息的更新方法及装置
CN106452858B (zh) 一种识别网络用户的方法、装置和计算设备
CN102768662A (zh) 一种加载图片的方法和装置
CN107766469A (zh) 一种缓存处理方法和装置
CN109032720A (zh) 文件夹图标显示方法、系统、可读存储介质及终端
CN108492338B (zh) 动画文件的压缩方法、装置、存储介质和电子装置
CN107516045A (zh) 文件保护方法及装置
CN107678640A (zh) 一种长截屏方法、装置、移动终端及计算机可读存储介质
CN109359263A (zh) 一种用户行为特征提取方法及系统
CN110427764A (zh) 一种针对主控芯片的数据解密方法
CN106682285A (zh) 一种静态时序分析方法和装置
CN108984339A (zh) 数据恢复方法及相关产品
CN108319628A (zh) 一种用户兴趣确定方法及装置
CN109284624A (zh) 一种基于区块链存储的数据安全隔离方法及装置
CN108958652A (zh) 一种记录日志信息的方法、装置和计算机可读存储介质
CN102171696B (zh) 定制资料的生成方法和装置
CN108241499A (zh) 字段值注释的更新方法、装置及计算机可读存储介质
CN104636432B (zh) 一种日志文件压缩和解压的方法及装置
CN105049578B (zh) 一种节省存储空间的用户群组管理方法、系统及移动终端
CN104885084A (zh) 分析用网格数据生成方法以及分析用网格数据生成装置
CN106484691A (zh) 移动终端的数据存储方法和装置
CN109446827A (zh) 数据加解密方法及系统
CN108540471A (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