CN110443053B - 一种基于密钥循环表及映射表的密钥生成方法 - Google Patents
一种基于密钥循环表及映射表的密钥生成方法 Download PDFInfo
- Publication number
- CN110443053B CN110443053B CN201910699929.0A CN201910699929A CN110443053B CN 110443053 B CN110443053 B CN 110443053B CN 201910699929 A CN201910699929 A CN 201910699929A CN 110443053 B CN110443053 B CN 110443053B
- Authority
- CN
- China
- Prior art keywords
- key
- sector
- data
- block
- page
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting 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/79—Protecting 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于密钥循环表及映射表的密钥生成方法,其特征在于包括以下步骤:S100:解析密钥块并构建密钥循环表;S200:读取并记录所述密钥块中各个扇区的前两个字节的内容,用以作为索引;S300:采用所述密钥循环表生成映射表:循环选取所述密钥循环表的所述末尾连续两字节作为映射表中的键,所述键相对于所述密钥循环表的偏移地址作为值,采用所述键及所述值生成所述映射表;S400:密钥生成。
Description
技术领域
本发明属于电子数据恢复与取证领域,涉及一种基于密钥循环表及映射表的密钥生成方法。
背景技术
现有技术中,对于包含主控芯片的U盘或者固态硬盘SSD等存储设备的密钥块的生成,多采用密钥生成算法。随着U盘或者固态硬盘SSD等存储设备愈加广泛的应用,加之主控芯片的发展,主控芯片的加密方式越来越多变、越来越复杂,特别是对加密复杂的SSD存储设备以及存储设备接口损坏、电路短路、断路、元器件损坏、电路板断裂等情况下,密钥块的生成也越来越困难,同时,电子数据恢复与取证有关的解密正面临越来越大额度挑战。
目前,对于密钥块的生成是基于密钥生成算法是以初始字节对(两字节一组为基本单位)为起始,循环向下计算得到密钥块,整个过程比较耗费时。例如,块大小为4521984字节,则大概需计算2260992次,对块大小更大的情况下,计算量会以几何级数增长。
现有技术中尚无一种基于密钥循环表及映射表的密钥生成方法,给此类包含主控芯片的存储设备的电子数据恢复与取证造成了巨大的困难。因此,急需一种针对该类主控芯片的存储设备的数据解密方法,以弥补电子数据恢复与取证困难的不足。
发明内容
本发明针对现有技术的不足问题,提出了一种基于密钥循环表及映射表的密钥生成方法,以少量的内存换取高效的密钥块生成:构建密钥循环表并生成映射表,直接以查映射表的方式生成密钥,大量减少了原有的计算次数,达到生成密钥的目的。
为便于描述,本发明可能包含如下术语:
在主控芯片包含一个或多个通道(channel),每个通道包含一个或多个块(block),每个块包含一个或多个页(page),每个页包含一个页管理字段(或称系统区SA:SystemArea,以下统称页管理字段)及多个扇区(sector),每个扇区包含固定字节长度的数据及固定字节长度的扇区管理字段(或称管理数据MD:ManageData,以下统称扇区管理字段)。
本发明申请包括以下步骤:
S100:解析密钥块并构建密钥循环表,包括以下步骤:
S101:读取所述密钥块并解析所述密钥块中块结构、页结构及扇区结构;
S102:读取所述密钥块中各页,删除各页的页管理字段及各页中各扇区的扇区管理字段,用以获取用户数据区密钥;
S103:选取所述用户数据区密钥中任一扇区作为起始扇区,将当前扇区的数据写入密钥循环表,记录当前该扇区的前两个字节为数据A;
S104:读取当前密钥循环表中末尾两字节内容作为关键字,在所述用户数据区密钥中查找所述关键字;
S105:以所查找的所述关键字起始地址+2为首地址,至所述关键字所在扇区的末地址为止的数据尾加至所述密钥循环表;
S106:判断所述步骤S105中所尾加的数据中是否包含数据A,如果有,执行步骤S107,否则,执行步骤S104,直至完成密钥循环表的构建;
S107:删除数据A至密钥循环表末尾的数据,完成密钥循环表的构建;
S200:读取并记录所述密钥块中各个扇区的前两个字节的内容,用以作为索引;
S300:采用所述密钥循环表生成映射表:循环选取所述密钥循环表的所述末尾连续两字节作为映射表中的键,所述键相对于所述密钥循环表的偏移地址作为值,采用所述键及所述值生成所述映射表;
S400:密钥生成。
优选地,所述步骤S400包括以下步骤:
S401:根据所述步骤S200中的所述索引,查找所述映射表中对应的键及对应的值,所获得的对应的值作为所述索引在所述密钥循环表中的偏移地址;
S402:以所述密钥循环表的起始地址为首地址,并以所述步骤S401中所获取的偏移地址进行寻址并读取一个扇区的数据;
S403:重复执行所述步骤S401及S402直至处理完所有索引,所读取的扇区的数据作为密钥。
本发明的有益效果是解决了现有技术中尚无一种基于密钥循环表及映射表的密钥生成方法的技术问题。
附图说明
图1为本发明所提供的方法的总流程图;
图2为本发明一个实施例中解析密钥块并构建密钥循环表的具体流程图;
图3为本发明一个实施例中密钥块的数据结构示意图。
具体实施方式
本发明采用型号为SM2246XT的慧荣科技的主控芯片作为实施例。下面结合附图和实施例对本发明作进一步阐述。
图1示出了本发明所提供的方法的总流程图。
如图1所示,本发明的方法包括以下步骤:
S100:解析密钥块并构建密钥循环表。图2示出了本发明一个实施例中解析密钥块并构建密钥循环表的具体流程图,如图2所示,步骤S100包括以下步骤:
S101:读取密钥块并解析密钥块中块结构、页结构及扇区结构:获取主控芯片型号为SM2246XT的数据表,读取数据表中的布局,包括扇区字节长度、扇区管理字段字节长度、页管理字段字节长度、每块所包含的页数及密钥块的初始字节。
图3示出了本发明一个实施例中密钥块的数据结构示意图。如图3所示,主控芯片包含一个或多个通道(channel),每个通道包含一个或多个块(block),每个块包含一个或多个页(page),每个页包含一个页管理字段(或称系统区SA:SystemArea,以下统称页管理字段)及多个扇区(sector),每个扇区包含固定字节长度的数据及固定字节长度的扇区管理字段(或称管理数据MD:ManageData,以下统称扇区管理字段)。
该主控芯片为例,其布局为1094_1604983_256,即,扇区字节长度为1094字节,其中,数据字节长度为1024字节,扇区管理字段的字节长度为70字节;页管理字段字节长度为160字节;密钥块的初始字节为4983,每块所包含的页数为256页;
S102:读取密钥块中各页,删除各页的页管理字段及各页中各扇区的扇区管理字段,用以获取用户数据区密钥。具体地,删除如图3所示的各页中各扇区管理字段(或称管理数据MD:ManageData,以下统称扇区管理字段),并删除各页的页管理字段(或称系统区SA:SystemArea,以下统称页管理字段),采用删除后的数据作为用户数据区密钥;
S103:选取用户数据区密钥中任一扇区作为起始扇区,将当前扇区的数据写入密钥循环表,记录当前该扇区的前两个字节为数据A;
S104:读取当前密钥循环表中末尾两字节内容作为关键字,在用户数据区密钥中查找关键字;
S105:以所查找的关键字起始地址+2为首地址,至关键字所在扇区的末地址为止的数据尾加至密钥循环表;
S106:判断步骤S105中所尾加的数据中是否包含数据A,如果有,执行步骤S107,否则,执行步骤S104,直至完成密钥循环表的构建;
S107:删除数据A至密钥循环表末尾的数据,完成密钥循环表的构建;
S200:读取并记录密钥块中各个扇区的前两个字节的内容,用以作为索引;
S300:采用密钥循环表生成映射表:循环选取密钥循环表的末尾连续两字节作为映射表中的键,键相对于密钥循环表的偏移地址作为值,采用键及值生成映射表;
S400:密钥生成,包括以下步骤:
S401:根据步骤S200中的索引,查找映射表中对应的键及对应的值,所获得的对应的值作为索引在密钥循环表中的偏移地址;
S402:以密钥循环表的起始地址为首地址,并以步骤S401中所获取的偏移地址进行寻址并读取一个扇区的数据;
S403:重复执行步骤S401及S402直至处理完所有索引,所读取的扇区的数据作为密钥。
通过本发明提供的方法,解决了现有技术中尚无一种基于密钥循环表及映射表的密钥生成方法的技术问题。
应当理解的是,本发明不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (1)
1.一种基于密钥循环表及映射表的密钥生成方法,其特征在于包括以下步骤:
S100:解析密钥块并构建密钥循环表,包括以下步骤:
S101:读取所述密钥块并解析所述密钥块中块结构、页结构及扇区结构;
S102:读取所述密钥块中各页,删除各页的页管理字段及各页中各扇区的扇区管理字段,用以获取用户数据区密钥;
S103:选取所述用户数据区密钥中任一扇区作为起始扇区,将当前扇区的数据写入密钥循环表,记录当前该扇区的前两个字节为数据A;
S104:读取当前密钥循环表中末尾两字节内容作为关键字,在所述用户数据区密钥中查找所述关键字;
S105:以所查找的所述关键字起始地址+2为首地址,至所述关键字所在扇区的末地址为止的数据尾加至所述密钥循环表;
S106:判断所述步骤S105中所尾加的数据中是否包含数据A,如果有,执行步骤S107,否则,执行步骤S104,直至完成密钥循环表的构建;
S107:删除数据A至密钥循环表末尾的数据,完成密钥循环表的构建;
S200:读取并记录所述密钥块中各个扇区的前两个字节的内容,用以作为索引;
S300:采用所述密钥循环表生成映射表:循环选取所述密钥循环表的所述末尾连续两字节作为映射表中的键,所述键相对于所述密钥循环表的偏移地址作为值,采用所述键及所述值生成所述映射表;
S400:密钥生成,包括以下步骤:
S401:根据所述步骤S200中的所述索引,查找所述映射表中对应的键及对应的值,所获得的对应的值作为所述索引在所述密钥循环表中的偏移地址;
S402:以所述密钥循环表的起始地址为首地址,并以所述步骤S401中所获取的偏移地址进行寻址并读取一个扇区的数据;
S403:重复执行所述步骤S401及S402直至处理完所有索引,所读取的扇区的数据作为密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910699929.0A CN110443053B (zh) | 2019-07-31 | 2019-07-31 | 一种基于密钥循环表及映射表的密钥生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910699929.0A CN110443053B (zh) | 2019-07-31 | 2019-07-31 | 一种基于密钥循环表及映射表的密钥生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110443053A CN110443053A (zh) | 2019-11-12 |
CN110443053B true CN110443053B (zh) | 2023-03-14 |
Family
ID=68432329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910699929.0A Active CN110443053B (zh) | 2019-07-31 | 2019-07-31 | 一种基于密钥循环表及映射表的密钥生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110443053B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111988140B (zh) * | 2020-08-20 | 2023-04-18 | 四川爱联科技股份有限公司 | 物联网模组的密钥管理方法、系统及终端 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0772861A (ja) * | 1994-05-12 | 1995-03-17 | Kawai Musical Instr Mfg Co Ltd | 電子楽器の鍵盤情報処理装置 |
US5832484A (en) * | 1996-07-02 | 1998-11-03 | Sybase, Inc. | Database system with methods for parallel lock management |
WO1998053636A1 (en) * | 1997-05-23 | 1998-11-26 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for maintaining a table in content addressable memory using hole algorithms |
GB9825102D0 (en) * | 1998-11-16 | 1999-01-13 | Insignia Solutions Plc | Computer system |
CN1302497A (zh) * | 1997-09-22 | 2001-07-04 | 夸尔柯姆股份有限公司 | 产生加密密码流的方法和装置 |
JP2004096274A (ja) * | 2002-08-30 | 2004-03-25 | Nippon Telegr & Teleph Corp <Ntt> | 放送再送信装置および多重暗号化装置 |
CN103731261A (zh) * | 2014-01-09 | 2014-04-16 | 西安电子科技大学 | 加密重复数据删除场景下的密钥分发方法 |
CN104579656A (zh) * | 2014-12-31 | 2015-04-29 | 北京时代民芯科技有限公司 | 一种椭圆曲线公钥密码sm2算法的硬件加速协处理器 |
CN106845251A (zh) * | 2015-12-07 | 2017-06-13 | 四川效率源信息安全技术股份有限公司 | 闪存芯片物理镜像后的数据解密方法 |
CN107516053A (zh) * | 2017-08-25 | 2017-12-26 | 四川巧夺天工信息安全智能设备有限公司 | 针对主控芯片ps2251的数据加密方法 |
DE102018125747A1 (de) * | 2017-11-17 | 2019-05-23 | Intel Corporation | Unterstützung für eine höhere anzahl von gleichzeitigenschlüsseln in einer kryptografie-engine mit mehrerenschlüsseln |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050210145A1 (en) * | 2000-07-24 | 2005-09-22 | Vivcom, Inc. | Delivering and processing multimedia bookmark |
US20050251617A1 (en) * | 2004-05-07 | 2005-11-10 | Sinclair Alan W | Hybrid non-volatile memory system |
US9501429B2 (en) * | 2008-09-05 | 2016-11-22 | Vixs Systems Inc. | Dynamic key and rule storage protection |
US8943328B2 (en) * | 2010-01-29 | 2015-01-27 | Hewlett-Packard Development Company, L.P. | Key rotation for encrypted storage media |
US20130238900A1 (en) * | 2011-12-12 | 2013-09-12 | Cleversafe, Inc. | Dispersed storage network secure hierarchical file directory |
US10516533B2 (en) * | 2016-02-05 | 2019-12-24 | Mohammad Mannan | Password triggered trusted encryption key deletion |
-
2019
- 2019-07-31 CN CN201910699929.0A patent/CN110443053B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0772861A (ja) * | 1994-05-12 | 1995-03-17 | Kawai Musical Instr Mfg Co Ltd | 電子楽器の鍵盤情報処理装置 |
US5832484A (en) * | 1996-07-02 | 1998-11-03 | Sybase, Inc. | Database system with methods for parallel lock management |
WO1998053636A1 (en) * | 1997-05-23 | 1998-11-26 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for maintaining a table in content addressable memory using hole algorithms |
CN1302497A (zh) * | 1997-09-22 | 2001-07-04 | 夸尔柯姆股份有限公司 | 产生加密密码流的方法和装置 |
GB9825102D0 (en) * | 1998-11-16 | 1999-01-13 | Insignia Solutions Plc | Computer system |
JP2004096274A (ja) * | 2002-08-30 | 2004-03-25 | Nippon Telegr & Teleph Corp <Ntt> | 放送再送信装置および多重暗号化装置 |
CN103731261A (zh) * | 2014-01-09 | 2014-04-16 | 西安电子科技大学 | 加密重复数据删除场景下的密钥分发方法 |
CN104579656A (zh) * | 2014-12-31 | 2015-04-29 | 北京时代民芯科技有限公司 | 一种椭圆曲线公钥密码sm2算法的硬件加速协处理器 |
CN106845251A (zh) * | 2015-12-07 | 2017-06-13 | 四川效率源信息安全技术股份有限公司 | 闪存芯片物理镜像后的数据解密方法 |
CN107516053A (zh) * | 2017-08-25 | 2017-12-26 | 四川巧夺天工信息安全智能设备有限公司 | 针对主控芯片ps2251的数据加密方法 |
DE102018125747A1 (de) * | 2017-11-17 | 2019-05-23 | Intel Corporation | Unterstützung für eine höhere anzahl von gleichzeitigenschlüsseln in einer kryptografie-engine mit mehrerenschlüsseln |
Non-Patent Citations (3)
Title |
---|
Chapter 4: Securing large datasets involving fast-performing key bunch matrix block cipher;Shirisha Kakarla;《SCIENCEDIRECT》;20181123;全文 * |
密文全文检索系统中的索引机制研究;吴炜;《中国博士学位论文全文数据库信息科技辑》;20110415(第4期);全文 * |
移动存储设备取证技术研究;张若箐;《中国优秀硕士学位论文全文数据库信息科技辑》;20150215(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110443053A (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220129374A1 (en) | Memory system, data storage device, user device and data management method thereof | |
CN101983376B (zh) | 访问装置、信息记录装置、信息记录系统、文件管理方法和程序 | |
CN106874348B (zh) | 文件存储和索引方法、装置及读取文件的方法 | |
KR100533682B1 (ko) | 플래시 메모리의 데이터 관리 장치 및 방법 | |
US20130117507A1 (en) | Memory storage apparatus, memory controller, and method for transmitting and identifying data stream | |
CN104008064A (zh) | 用于多级存储器压缩的方法和系统 | |
CN105224237A (zh) | 一种数据存储方法及装置 | |
WO2015145647A1 (ja) | ストレージ装置とデータ処理方法及びストレージシステム | |
CN109885577B (zh) | 数据处理方法、装置、终端及存储介质 | |
US20130185484A1 (en) | File programming method and associated device for nand flash | |
CN106201774B (zh) | 一种nand flash存储芯片数据存储结构分析方法 | |
KR20160016744A (ko) | 플래시 메모리 장치에 데이터를 기록하는 방법, 플래시 메모리 장치, 및 저장 시스템 | |
CN112463020A (zh) | 基于Flash的数据存取方法、装置及设备 | |
CN110443053B (zh) | 一种基于密钥循环表及映射表的密钥生成方法 | |
CN105528183A (zh) | 一种存储数据的方法及存储设备 | |
KR20100101517A (ko) | 데이터 파일 삭제 명령에 응답하는 시스템 및 방법 | |
EP3093772A1 (en) | Data processing method, data writing method, and related apparatus | |
TWI715408B (zh) | 快閃記憶體控制器、記憶體裝置以及存取快閃記憶體模組之方法 | |
CN117112004A (zh) | 差分数据确定方法、差分还原方法、装置、设备及介质 | |
US9424262B2 (en) | Computing system and data management method thereof | |
CN115857811A (zh) | 一种数据处理方法、装置、固态硬盘及可读存储介质 | |
CN110457239B (zh) | 一种提取固态硬盘基本密钥的方法 | |
CN112380174B (zh) | 含删除文件的xfs文件系统解析方法、终端设备及存储介质 | |
CN110427764B (zh) | 一种针对主控芯片的数据解密方法 | |
CN113590032A (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 |