CN113360957A - 一种主控为sm2246en的固态硬盘的密码提取方法 - Google Patents

一种主控为sm2246en的固态硬盘的密码提取方法 Download PDF

Info

Publication number
CN113360957A
CN113360957A CN202110731408.6A CN202110731408A CN113360957A CN 113360957 A CN113360957 A CN 113360957A CN 202110731408 A CN202110731408 A CN 202110731408A CN 113360957 A CN113360957 A CN 113360957A
Authority
CN
China
Prior art keywords
data
bytes
password
block number
solid state
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
CN202110731408.6A
Other languages
English (en)
Other versions
CN113360957B (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 CN202110731408.6A priority Critical patent/CN113360957B/zh
Publication of CN113360957A publication Critical patent/CN113360957A/zh
Application granted granted Critical
Publication of CN113360957B publication Critical patent/CN113360957B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/80Protecting 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 storage media based on magnetic or optical technology, e.g. disks with sectors
    • 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)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明公开了一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于包括以下步骤:S100:获取固态硬盘的参数数据作为第一数据;S200:计算并获取固态硬盘的最大块号;S300:获取固态硬盘密码所在的块号,包括以下步骤:S301:获取所述第一数据中的第三数值,并判断第三数值是否大于零且小于最大块号,如果是,执行步骤S302,否则执行步骤S400;S302:获取第一块号、第二块号并判断第一块号、第二块号是否为有效块号;S303:遍历并获取固态硬盘密码所在的块号,其中,固态硬盘密码包括主密码及用户密码;S304:校验第三数值;S400:获取固态硬盘密码,步骤S400包括以下步骤:S401:遍历第三块号的页数据;S402:判断密码的存在性;S403:获取主密码及用户密码。

Description

一种主控为SM2246EN的固态硬盘的密码提取方法
技术领域
本发明属于信息安全技术领域,涉及一种固态硬盘的密码提取方法,尤其涉及一种主控为SM2246EN的固态硬盘的密码提取方法。
背景技术
在信息安全技术及数据恢复领域,硬盘容量的不断增加以及硬盘使用量不断扩大,同时,硬盘驱动器HDD类型的硬盘出货量在不断的下降,固态硬盘SSD的出货量在不断的提升。自2010年开始,固态硬盘SSD出货量开始快速增长,且连续九年保持10%以上的增长率:2015年的增长率为30.4%,2018年固态硬盘SSD出货量增长率为37.2%;预计2020年,固态硬盘SSD出货量将增至2亿片以上。
固态硬盘SSD因读写速度快而得到了广泛的运用。随着固态硬盘SSD出货量不断提升,出现的问题也越来越多。例如,在固态硬盘SSD加密的情况下,想要提取固态硬盘SSD数据,就必须要先获取密码并对硬盘进行解密后,才能进行固态硬盘SSD数据的访问,否则,数据是加密状态,无法被访问和提取。
固态硬盘SSD中,主控为SM2246EN的固态硬盘的使用范围也非常广泛。但现有技术中,尚无一种获取固态硬盘SSD密码的方法,尤其是获取主控为SM2246EN的固态硬盘的密码的方法。
发明内容
针对现有技术的不足,本发明提供了一种主控为SM2246EN的固态硬盘的密码提取方法,通过获取固态硬盘的参数数据,计算并获取固态硬盘的最大块号,获取固态硬盘密码所在的块号,从而获取固态硬盘密码。本发明具有操作性强、简单可靠的有益效果。
本发明申请包括以下步骤:
S100:获取固态硬盘的参数数据作为第一数据,步骤S100包括:
向固态硬盘发送写指令,用以设置读指令所读取固态硬盘缓冲区扇区的大小;
向固态硬盘发送所述读指令,用以读取第一数据且所述第一数据的字节长度等于所述缓冲区扇区的大小;
S200:计算并获取固态硬盘的最大块号;
S300:获取固态硬盘密码所在的块号,包括以下步骤:
S301:获取所述第一数据中的第三数值,并判断第三数值是否大于零且小于最大块号,如果是,执行步骤S302,否则执行步骤S400;
S302:获取第一块号、第二块号并判断第一块号、第二块号是否为有效块号;
S303:遍历并获取固态硬盘密码所在的块号,其中,固态硬盘密码包括主密码及用户密码;
S304:校验第三数值;
S400:获取固态硬盘密码,步骤S400包括以下步骤:
S401:遍历第三块号的页数据;
S402:判断密码的存在性;
S403:获取主密码及用户密码。
优选地,步骤S200包括以下步骤:
S201:获取第一数值:所述第一数据的起始地址向后偏移0x10字节,以大端格式连续读取2字节的内容作为第一数值;
S202:所述第一数据的起始地址向后偏移0x20字节,以小端格式连续读取6个字节的内容作为第二数据;
S203:判断第二数据是否等于0xAD3C15AB444A,如果是,最大块号等于第一数值除以2取模,否则,最大块号等于第一数值。
优选地,步骤S301包括以下步骤:
S3011:所述第一数据的起始地址向后偏移0x23E字节,以小端格式连续读取2字节的内容作为第二数值;
S3012:所述第一数据的起始地址向后偏移0x230字节,以小端格式连续读取2字节的内容并记为数据A;
所述第一数据的起始地址向后偏移0x232字节,以小端格式连续读取2字节的内容并记为数据B;
所述第一数据的起始地址向后偏移0x234字节,以小端格式连续读取2字节的内容并记为数据C;
所述第一数据的起始地址向后偏移0x236字节,以小端格式连续读取2字节的内容并记为数据D;
所述第一数据的起始地址向后偏移0x238字节,以小端格式连续读取2字节的内容并记为数据E;
所述第一数据的起始地址向后偏移0x23A字节,以小端格式连续读取2字节的内容并记为数据F;
S3013:判断第二数值是否与数据A至数据F中任一相等,如果是,执行步骤S302,否则执行步骤S3014:
S3014:将第二数值的高、低字节互换,所生成的数值作为第三数值;
S3015:判断第三数值是否大于零且小于最大块号,如果是,执行步骤S302,否则执行步骤S400。
优选地,步骤S302包括以下步骤:
S3021:所述第一数据的起始地址向后偏移0x238字节,以大端格式连续读取2字节的内容作为第一块号,所述第一数据的起始地址向后偏移0x23A字节,以大端格式连续读取2字节的内容作为第二块号;
S3022:判断第一块号、第二块号是否均大于零且小于最大块号,如果是,则执行步骤S3023,否则,退出流程;
S3023:记第一块号、第二块号为有效块号。
优选地,步骤S303包括以下步骤:
S3031:当前页页号赋初值为1;
S3032:依读取第二块号当前页的数据;
S3033:判断当前页前8字节内容所对应的ASCII字符是否为SmiIndex,如果是,执行步骤S3034,否则,执行步骤S3035;
S3034:当前页的起始地址向后偏移0x1C字节,以小端格式连续读取2字节的内容作为第三数值;
S3035:当前页页号=当前页页号+1;
S3036:当前页页号是否不大于最大页号,如果是,执行步骤S3032,否则,执行步骤S3037;
S3037:判断当前第三数值是否有值,如果是,执行步骤S304,否则,执行步骤S3038;
S3038:将第二块号替换为第一块号,执行步骤S3031至S3037,判断当前第三数值是否有值,如果是,执行步骤S304,否则,结束流程。
优选地,所述步骤S304包括以下步骤:
判断第三数值是否小于最大块号,如果是,执行步骤S400,否则,结束流程。
优选地,所述步骤S401包括以下步骤:
S4011:读取第三数值的值作为第三块号,当前页页号赋初值为1;
S4012:读取第三块号的当前页数据;
S4013:判断当前页的数据类型是否为固态硬盘的固件数据,如果是执行步骤S4014,否则,执行步骤S4015;
S4014:将固件数据的页数据尾加至数据列表中;
S4015:当前页页号=当前页页号+1;
S4016:当前页页号是否小于或等于最大页号,如果是,执行步骤S4012,否则,执行步骤S4017;
S4017:查找数据列表中页号为最大且页管理区第7字节的内容为0x22的页数据作为第三数据。
优选地,所述步骤S402包括以下步骤:
S4021:第三数据的起始地址向后偏移0x02字节,读取1字节的内容作为第四数值;
S4022:判断第四数值中第6比特位是否等于1,如果是,表示存在主密码,执行步骤S4023,否则,退出流程;
S4023:判断第四数值中第1比特位或第5比特位是否等于1,如果是,表示存在用户密码,执行步骤S4024,否则,退出流程;
S4024:第三数据的起始地址向后偏移0x03字节,读取1字节的内容作为第五数值;
S4025:判断第五数值中第5比特位、第6比特位是否均等于0,如果是,表示用户密码和主密码没有加密,执行步骤S403,否则,退出流程。
优选地,所述步骤S403包括以下步骤:
第三数据的起始地址向后偏移0x40字节,连续读取0x20字节的内容作为主密码,第三数据的起始地址向后偏移0x20字节,连续读取0x20字节的内容,作为用户密码。
优选地,所述步骤S4013包括以下步骤:
S40131:判断页管理区前两个字节的内容是否等于0xFFFF或0x0000,如果是,执行步骤S4015,否则,执行步骤S40132;
S40132:判断页管理区第三个字节数据的值是否等于0xE7,如果是,表示当前页的数据类型为固态硬盘的固件数据,执行步骤S4014,否则,执行步骤S4015。
本发明所通过的方法的有益效果是:解决了现有技术中尚无一种主控为SM2246EN的固态硬盘的密码的方法的技术问题,且操作性强、简单可靠。
附图说明
图1为本发明所提供的方法的总流程图;
图2为本发明所提供的一个实施例中第一数据的数据结构图;
图3为本发明所提供的一个实施例中遍历并获取固态硬盘密码所在的块号的流程图;
图4为本发明所提供的一个实施例中遍历第三块号的页数据的流程图;
图5为本发明所提供的一个实施例中所获取的主密码及用户密码的数据结构图。
具体实施方式
图1示出了本发明所提供的方法的总流程图。如图1所示,本发明的方法包括以下步骤:
S100:获取固态硬盘的参数数据作为第一数据,步骤S100包括:
向固态硬盘发送写指令,用以设置读指令所读取固态硬盘缓冲区扇区的大小;
向固态硬盘发送读指令,用以读取第一数据且第一数据的字节长度等于缓冲区扇区的大小;
具体地,先发送写指令,其作用是告知固态硬盘在收到下一指令时需要读取2个扇区大小的硬盘信息数据,该写指令为:
0x00,0x01,0xAA,0x55,0x00,0xE0,0xCA,0x00,0x00,0x00,0x00,0x00,写入的缓冲区大小为0x200,缓冲区的前两个字节的数据依次为0xF0、0x20,缓冲区的最后四字节的数据依次为0x55、0xAA、0x55、0xAA,缓冲区的第十二字节为0x02,其他字节的数据全部位零。
发送读指令,指令为:
0x00,0x02,0xAA,0x55,0x00,0xE0,0xC8,0x00,0x00,0x00,0x00,0x00,先将读取缓冲区的数据全部清零,读取缓冲区的大小设置为0x400,读指令发送后,把所读取缓冲区的数据记为第一数据。
图2示出了本发明所提供的一个实施例中第一数据的数据结构图。
S200:计算并获取固态硬盘的最大块号。步骤S200包括以下步骤:
S201:获取第一数值:第一数据的起始地址向后偏移0x10字节,以大端格式连续读取2字节的内容作为第一数值;如图2所示,第一数据起始地址向后偏移0x10字节,以大端格式连续读取2字节的内容0x0379作为第一数值;
S202:第一数据的起始地址向后偏移0x20字节,以小端格式连续读取6个字节的内容作为第二数据;如图2所示,第一数据的起始地址向后偏移0x20字节,以小端格式连续读取6个字节的内容0xCAA44394DEEC作为第二数据;
S203:判断第二数据是否等于0xAD3C15AB444A,如果是,最大块号等于第一数值除以2取模,否则,最大块号等于第一数值。本实施例中,读取6个字节的内容不等于0xAD3C15AB444A,因此,最大块号等于第一数值0x0379。
S300:获取固态硬盘密码所在的块号,包括以下步骤:
S301:获取第一数据中的第三数值,并判断第三数值是否大于零且小于最大块号,如果是,执行步骤S302,否则执行步骤S400;
具体地,步骤S301包括以下步骤:
S3011:第一数据的起始地址向后偏移0x23E字节,以小端格式连续读取2字节的内容作为第二数值;
S3012:第一数据的起始地址向后偏移0x230字节,以小端格式连续读取2字节的内容并记为数据A;
第一数据的起始地址向后偏移0x232字节,以小端格式连续读取2字节的内容并记为数据B;
第一数据的起始地址向后偏移0x234字节,以小端格式连续读取2字节的内容并记为数据C;
第一数据的起始地址向后偏移0x236字节,以小端格式连续读取2字节的内容并记为数据D;
第一数据的起始地址向后偏移0x238字节,以小端格式连续读取2字节的内容并记为数据E;
第一数据的起始地址向后偏移0x23A字节,以小端格式连续读取2字节的内容并记为数据F;
S3013:判断第二数值是否与数据A至数据F中任一相等,如果是,执行步骤S302,否则执行步骤S3014:
S3014:将第二数值的高、低字节互换,所生成的数值作为第三数值;
S3015:判断第三数值是否大于零且小于最大块号,如果是,执行步骤S302,否则执行步骤S400。
S302:获取第一块号、第二块号并判断第一块号、第二块号是否为有效块号;
具体地,步骤S302包括以下步骤:
S3021:第一数据的起始地址向后偏移0x238字节,以大端格式连续读取2字节的内容作为第一块号,第一数据的起始地址向后偏移0x23A字节,以大端格式连续读取2字节的内容作为第二块号;
S3022:判断第一块号、第二块号是否均大于零且小于最大块号,如果是,则执行步骤S3023,否则,退出流程;
S3023:记第一块号、第二块号为有效块号。
S303:遍历并获取固态硬盘密码所在的块号,其中,固态硬盘密码包括主密码及用户密码;
图3示出了本发明所提供的一个实施例中遍历并获取固态硬盘密码所在的块号的流程图;如图3所示,步骤S303包括以下步骤:
S3031:当前页页号赋初值为1;
S3032:依读取第二块号当前页的数据;
S3033:判断当前页前8字节内容所对应的ASCII字符是否为SmiIndex,如果是,执行步骤S3034,否则,执行步骤S3035;
S3034:当前页的起始地址向后偏移0x1C字节,以小端格式连续读取2字节的内容作为第三数值;
S3035:当前页页号=当前页页号+1;
S3036:当前页页号是否不大于最大页号,如果是,执行步骤S3032,否则,执行步骤S3037;
S3037:判断当前第三数值是否有值,如果是,执行步骤S304,否则,执行步骤S3038;
S3038:将第二块号替换为第一块号,执行步骤S3031至S3037,判断当前第三数值是否有值,如果是,执行步骤S304,否则,结束流程。
S304:校验第三数值;步骤S304包括以下步骤:
判断第三数值是否小于最大块号,如果是,执行步骤S400,否则,结束流程。
S400:获取固态硬盘密码,步骤S400包括以下步骤:
S401:遍历第三块号的页数据;
图4示出了本发明所提供的一个实施例中遍历第三块号的页数据的流程图。如图4所示,步骤S401包括以下步骤:
S4011:读取第三数值的值作为第三块号,当前页页号赋初值为1;
S4012:读取第三块号的当前页数据;
S4013:判断当前页的数据类型是否为固态硬盘的固件数据,如果是执行步骤S4014,否则,执行步骤S4015;
具体地,步骤S4013包括以下步骤:
S40131:判断页管理区前两个字节的内容是否等于0xFFFF或0x0000,如果是,执行步骤S4015,否则,执行步骤S40132;
S40132:判断页管理区第三个字节数据的值是否等于0xE7,如果是,表示当前页的数据类型为固态硬盘的固件数据,执行步骤S4014,否则,执行步骤S4015。
S4014:将固件数据的页数据尾加至数据列表中;
S4015:当前页页号=当前页页号+1;
S4016:当前页页号是否小于或等于最大页号,如果是,执行步骤S4012,否则,执行步骤S4017;
S4017:查找数据列表中页号为最大且页管理区第7字节的内容为0x22的页数据作为第三数据。
S402:判断密码的存在性;
具体地,步骤S402包括以下步骤:
S4021:第三数据的起始地址向后偏移0x02字节,读取1字节的内容作为第四数值;
S4022:判断第四数值中第6比特位是否等于1,如果是,表示存在主密码,执行步骤S4023,否则,退出流程;
S4023:判断第四数值中第1比特位或第5比特位是否等于1,如果是,表示存在用户密码,执行步骤S4024,否则,退出流程;
S4024:第三数据的起始地址向后偏移0x03字节,读取1字节的内容作为第五数值;
S4025:判断第五数值中第5比特位、第6比特位是否均等于0,如果是,表示用户密码和主密码没有加密,执行步骤S403,否则,退出流程。
S403:获取主密码及用户密码。步骤S403包括以下步骤:
第三数据的起始地址向后偏移0x40字节,连续读取0x20字节的内容作为主密码,第三数据的起始地址向后偏移0x20字节,连续读取0x20字节的内容,作为用户密码。
图5示出了本发明所提供的一个实施例中所获取的主密码及用户密码的数据结构图。如图5所示,第三数据的起始地址向后偏移0x40字节,连续读取0x20字节的内容皆为零(即,图5中黑色下划线部分所示内容),表示没有主密码。
第三数据的起始地址向后偏移0x20字节,连续读取0x20字节的内容(即,图5中黑框部分所示内容)0x313233343536(即,ASCII表示的123456),即为用户密码。
获取到主密码和/或用户密码,即可提取固态硬盘的数据。
应当理解的是,本发明不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (10)

1.一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于包括以下步骤:
S100:获取固态硬盘的参数数据作为第一数据,步骤S100包括:
向固态硬盘发送写指令,用以设置读指令所读取固态硬盘缓冲区扇区的大小;
向固态硬盘发送所述读指令,用以读取第一数据且所述第一数据的字节长度等于所述缓冲区扇区的大小;
S200:计算并获取固态硬盘的最大块号;
S300:获取固态硬盘密码所在的块号,包括以下步骤:
S301:获取所述第一数据中的第三数值,并判断第三数值是否大于零且小于最大块号,如果是,执行步骤S302,否则执行步骤S400;
S302:获取第一块号、第二块号并判断第一块号、第二块号是否为有效块号;
S303:遍历并获取固态硬盘密码所在的块号,其中,固态硬盘密码包括主密码及用户密码;
S304:校验第三数值;
S400:获取固态硬盘密码,步骤S400包括以下步骤:
S401:遍历第三块号的页数据;
S402:判断密码的存在性;
S403:获取主密码及用户密码。
2.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,步骤S200包括以下步骤:
S201:获取第一数值:所述第一数据的起始地址向后偏移0x10字节,以大端格式连续读取2字节的内容作为第一数值;
S202:所述第一数据的起始地址向后偏移0x20字节,以小端格式连续读取6个字节的内容作为第二数据;
S203:判断第二数据是否等于0xAD3C15AB444A,如果是,最大块号等于第一数值除以2取模,否则,最大块号等于第一数值。
3.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,步骤S301包括以下步骤:
S3011:所述第一数据的起始地址向后偏移0x23E字节,以小端格式连续读取2字节的内容作为第二数值;
S3012:所述第一数据的起始地址向后偏移0x230字节,以小端格式连续读取2字节的内容并记为数据A;
所述第一数据的起始地址向后偏移0x232字节,以小端格式连续读取2字节的内容并记为数据B;
所述第一数据的起始地址向后偏移0x234字节,以小端格式连续读取2字节的内容并记为数据C;
所述第一数据的起始地址向后偏移0x236字节,以小端格式连续读取2字节的内容并记为数据D;
所述第一数据的起始地址向后偏移0x238字节,以小端格式连续读取2字节的内容并记为数据E;
所述第一数据的起始地址向后偏移0x23A字节,以小端格式连续读取2字节的内容并记为数据F;
S3013:判断第二数值是否与数据A至数据F中任一相等,如果是,执行步骤S302,否则执行步骤S3014:
S3014:将第二数值的高、低字节互换,所生成的数值作为第三数值;
S3015:判断第三数值是否大于零且小于最大块号,如果是,执行步骤S302,否则执行步骤S400。
4.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,步骤S302包括以下步骤:
S3021:所述第一数据的起始地址向后偏移0x238字节,以大端格式连续读取2字节的内容作为第一块号,所述第一数据的起始地址向后偏移0x23A字节,以大端格式连续读取2字节的内容作为第二块号;
S3022:判断第一块号、第二块号是否均大于零且小于最大块号,如果是,则执行步骤S3023,否则,退出流程;
S3023:记第一块号、第二块号为有效块号。
5.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,步骤S303包括以下步骤:
S3031:当前页页号赋初值为1;
S3032:依读取第二块号当前页的数据;
S3033:判断当前页前8字节内容所对应的ASCII字符是否为SmiIndex,如果是,执行步骤S3034,否则,执行步骤S3035;
S3034:当前页的起始地址向后偏移0x1C字节,以小端格式连续读取2字节的内容作为第三数值;
S3035:当前页页号=当前页页号+1;
S3036:当前页页号是否不大于最大页号,如果是,执行步骤S3032,否则,执行步骤S3037;
S3037:判断当前第三数值是否有值,如果是,执行步骤S304,否则,执行步骤S3038;
S3038:将第二块号替换为第一块号,执行步骤S3031至S3037,判断当前第三数值是否有值,如果是,执行步骤S304,否则,结束流程。
6.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,所述步骤S304包括以下步骤:
判断第三数值是否小于最大块号,如果是,执行步骤S400,否则,结束流程。
7.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,所述步骤S401包括以下步骤:
S4011:读取第三数值的值作为第三块号,当前页页号赋初值为1;
S4012:读取第三块号的当前页数据;
S4013:判断当前页的数据类型是否为固态硬盘的固件数据,如果是执行步骤S4014,否则,执行步骤S4015;
S4014:将固件数据的页数据尾加至数据列表中;
S4015:当前页页号=当前页页号+1;
S4016:当前页页号是否小于或等于最大页号,如果是,执行步骤S4012,否则,执行步骤S4017;
S4017:查找数据列表中页号为最大且页管理区第7字节的内容为0x22的页数据作为第三数据。
8.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,所述步骤S402包括以下步骤:
S4021:第三数据的起始地址向后偏移0x02字节,读取1字节的内容作为第四数值;
S4022:判断第四数值中第6比特位是否等于1,如果是,表示存在主密码,执行步骤S4023,否则,退出流程;
S4023:判断第四数值中第1比特位或第5比特位是否等于1,如果是,表示存在用户密码,执行步骤S4024,否则,退出流程;
S4024:第三数据的起始地址向后偏移0x03字节,读取1字节的内容作为第五数值;
S4025:判断第五数值中第5比特位、第6比特位是否均等于0,如果是,表示用户密码和主密码没有加密,执行步骤S403,否则,退出流程。
9.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,所述步骤S403包括以下步骤:
第三数据的起始地址向后偏移0x40字节,连续读取0x20字节的内容作为主密码,第三数据的起始地址向后偏移0x20字节,连续读取0x20字节的内容,作为用户密码。
10.根据权利要求1所述的一种主控为SM2246EN的固态硬盘的密码提取方法,其特征在于,所述步骤S4013包括以下步骤:
S40131:判断页管理区前两个字节的内容是否等于0xFFFF或0x0000,如果是,执行步骤S4015,否则,执行步骤S40132;
S40132:判断页管理区第三个字节数据的值是否等于0xE7,如果是,表示当前页的数据类型为固态硬盘的固件数据,执行步骤S4014,否则,执行步骤S4015。
CN202110731408.6A 2021-06-30 2021-06-30 一种主控为sm2246en的固态硬盘的密码提取方法 Active CN113360957B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110731408.6A CN113360957B (zh) 2021-06-30 2021-06-30 一种主控为sm2246en的固态硬盘的密码提取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110731408.6A CN113360957B (zh) 2021-06-30 2021-06-30 一种主控为sm2246en的固态硬盘的密码提取方法

Publications (2)

Publication Number Publication Date
CN113360957A true CN113360957A (zh) 2021-09-07
CN113360957B CN113360957B (zh) 2022-08-02

Family

ID=77537228

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110731408.6A Active CN113360957B (zh) 2021-06-30 2021-06-30 一种主控为sm2246en的固态硬盘的密码提取方法

Country Status (1)

Country Link
CN (1) CN113360957B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114139181A (zh) * 2021-11-30 2022-03-04 四川效率源信息安全技术股份有限公司 一种设置、清除及打开固态硬盘密码的方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611549A (zh) * 2011-01-21 2012-07-25 夏普株式会社 数据加密设备和存储卡
US20130124932A1 (en) * 2011-11-14 2013-05-16 Lsi Corporation Solid-State Disk Manufacturing Self Test
CN104794027A (zh) * 2015-04-30 2015-07-22 四川效率源信息安全技术有限责任公司 一种参数识别错误的修复方法
CN110427764A (zh) * 2019-07-31 2019-11-08 四川效率源信息安全技术股份有限公司 一种针对主控芯片的数据解密方法
CN110427765A (zh) * 2019-07-31 2019-11-08 四川效率源信息安全技术股份有限公司 一种生成固态硬盘中用户数据密钥的方法
CN110457239A (zh) * 2019-07-31 2019-11-15 四川效率源信息安全技术股份有限公司 一种提取固态硬盘基本密钥的方法
CN111694764A (zh) * 2020-05-29 2020-09-22 四川效率源信息安全技术股份有限公司 一种故障固态硬盘的数据读取方法
CN112286720A (zh) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Sm2246en主控的固态硬盘启用trim命令后提取被删除数据的方法
CN112417491A (zh) * 2020-12-11 2021-02-26 合肥大唐存储科技有限公司 固态硬盘的数据加密密钥获取、恢复方法和数据读写方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611549A (zh) * 2011-01-21 2012-07-25 夏普株式会社 数据加密设备和存储卡
US20130124932A1 (en) * 2011-11-14 2013-05-16 Lsi Corporation Solid-State Disk Manufacturing Self Test
CN104794027A (zh) * 2015-04-30 2015-07-22 四川效率源信息安全技术有限责任公司 一种参数识别错误的修复方法
CN110427764A (zh) * 2019-07-31 2019-11-08 四川效率源信息安全技术股份有限公司 一种针对主控芯片的数据解密方法
CN110427765A (zh) * 2019-07-31 2019-11-08 四川效率源信息安全技术股份有限公司 一种生成固态硬盘中用户数据密钥的方法
CN110457239A (zh) * 2019-07-31 2019-11-15 四川效率源信息安全技术股份有限公司 一种提取固态硬盘基本密钥的方法
CN111694764A (zh) * 2020-05-29 2020-09-22 四川效率源信息安全技术股份有限公司 一种故障固态硬盘的数据读取方法
CN112286720A (zh) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Sm2246en主控的固态硬盘启用trim命令后提取被删除数据的方法
CN112417491A (zh) * 2020-12-11 2021-02-26 合肥大唐存储科技有限公司 固态硬盘的数据加密密钥获取、恢复方法和数据读写方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CARLO MEIJER 等: "Self-Encrypting Deception: Weaknesses in the Encryption of Solid State Drives", 《2019 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP)》 *
张佳强 等: "缺陷固态硬盘的电子数据提取方法探讨", 《信息数据与电子工程》 *
肖堃: "基于Hoare逻辑的密码软件安全性形式化验证方法", 《吉林大学学报(工学版)》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114139181A (zh) * 2021-11-30 2022-03-04 四川效率源信息安全技术股份有限公司 一种设置、清除及打开固态硬盘密码的方法

Also Published As

Publication number Publication date
CN113360957B (zh) 2022-08-02

Similar Documents

Publication Publication Date Title
US7984296B2 (en) Content protection device and content protection method
CN101169795B (zh) 信息处理装置、信息处理方法、程序和程序记录介质
US20130271865A1 (en) Creating an identical copy of a tape cartridge
CN113360957B (zh) 一种主控为sm2246en的固态硬盘的密码提取方法
KR100623125B1 (ko) 정보 기억 장치, 정보 기억 방법 및 정보 기억 처리프로그램 제품
US20150149415A1 (en) Rollback Mechanism for Linear Tape File Systems
SG181959A1 (en) System event logging system
Vieyra et al. Solid state drive forensics: Where do we stand?
CN101465937B (zh) 图像处理装置和数据擦除方法
US20180314837A1 (en) Secure file wrapper for tiff images
JP2011158966A (ja) 情報処理装置、情報処理方法、および情報処理プログラム
CN111930708A (zh) 基于Ceph对象存储的对象标签的扩展***及方法
CN108831510B (zh) 对音视频文件进行打点的方法、装置、终端及存储介质
CN112527195B (zh) 一种提取固态硬盘物理数据的方法
US7925773B2 (en) Virtual format for the storage of streaming data
CN112286720B (zh) Sm2246en主控的固态硬盘启用trim命令后提取被删除数据的方法
US8078795B2 (en) Methods and media for writing data to flash memory
CN103049534A (zh) 一种快速销毁数据库数据的方法
Cox et al. Potential difficulties during investigations due to solid state drive (SSD) technology
CN107134287A (zh) 基于cdfs文件***的文件提取方法
US10606985B2 (en) Secure file wrapper for TIFF images
US11176096B2 (en) File system for genomic data
WO2019183849A1 (zh) 数据处理方法和设备
US20170139946A1 (en) Reading and writing a header and record on tape
JP2010128605A (ja) 情報記憶装置、データ記憶方法、およびプログラム

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