CN107122311B - 一种解析英飞凌手机字库的方法 - Google Patents

一种解析英飞凌手机字库的方法 Download PDF

Info

Publication number
CN107122311B
CN107122311B CN201710397447.0A CN201710397447A CN107122311B CN 107122311 B CN107122311 B CN 107122311B CN 201710397447 A CN201710397447 A CN 201710397447A CN 107122311 B CN107122311 B CN 107122311B
Authority
CN
China
Prior art keywords
byte
bytes
executing
data
content
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
CN201710397447.0A
Other languages
English (en)
Other versions
CN107122311A (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
Sichuan Aite Yingtai Intelligent 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 Aite Yingtai Intelligent Technology Co ltd filed Critical Sichuan Aite Yingtai Intelligent Technology Co ltd
Priority to CN201710397447.0A priority Critical patent/CN107122311B/zh
Publication of CN107122311A publication Critical patent/CN107122311A/zh
Application granted granted Critical
Publication of CN107122311B publication Critical patent/CN107122311B/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/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/17Embedded application
    • G06F2212/171Portable consumer electronics, e.g. mobile phone

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种解析英飞凌手机字库的方法,其特征在于包括以下步骤:S1:查找字库中的管理字段标识;S2:判断管理字段标识所标识的管理字段是否为总管理字段,如果是,执行步骤S3,否则执行步骤S1;S3:判断总管理字段是否为有效数据的总管理字段,如果是,执行步骤S4,否则执行步骤S1;S4:根据有效数据的总管理字段中的地址指示进行寻址,获取手机数据;S5:解析手机数据,合并所解析的结果;S6:判断是否完成有效数据的总管理字段的解析,如果是,执行步骤S7,否则执行步骤S4;S7:判断是否完成字库的解析,如果是,结束流程,否则执行步骤S1。本发明解决了现有技术无法解析英飞凌手机的短信、通讯录、通话记录以及无法针对英飞凌手机取证的技术问题。

Description

一种解析英飞凌手机字库的方法
技术领域
本发明属于电子取证领域,涉及手机取证,尤其涉及一种解析英飞凌手机字库的方法。
背景技术
随着移动通信技术所提供服务水平和服务种类的不断提高和扩充,手机已日益成为人们工作生活中不可缺少的联系工具。然而,利用手机进行诈骗、诽谤和伪造等犯罪活动也屡见不鲜,手机数据恢复与手机取证是打击这类犯罪的一个有效手段。
从概念上讲,手机取证就是从手机SIM卡、手机内、外置存储卡以及移动网络运营商数据库中收集、保全和分析相关的电子证据,并最终从中获得具有法律效力、能被法庭所接受的证据的过程。目前牵涉到手机的犯罪行为大致有三种:一种是在犯罪行为的实施过程中使用手机来充当通信联络工具;第二种是手机被用作一种犯罪证据的存储媒质;第三种是手机被当作短信诈骗、短信骚扰和病毒软件传播等新型手机犯罪活动的实施工具。这些都充分地表明进行手机取证技术的相关研究对于维持社会稳定、保障人民权益和打击犯罪行为具有充分的必要性和极大的迫切性。
现有技术中,涉及智能手机的取证较多,但涉及非智能手机的取证技术却很少,例如,对于搭载英飞凌CPU的非智能手机,其CPU为早期产品,加之内部数据结构较为复杂,因此,现有技术中尚未涉及此类手机的取证,因此,急需一种解析英飞凌手机字库结构并解析其中的短信、通讯录以及通话记录的方法。
发明内容
本发明针对现有技术的不足和上述问题,提出一种解析英飞凌手机字库的方法,通过查找字库中的有效数据的总管理字段,找出地址指示,再根据该地址指示进行手机数据的寻址并解析出手机数据中的短信、通讯录以及通话记录,最终达到解析英飞凌手机数据的目的,所述方法包括以下步骤:
S1:查找所述字库中的管理字段标识;
S2:判断所述管理字段标识所标识的管理字段是否为总管理字段,如果是,执行步骤S3,否则执行步骤S1;
S3:判断所述总管理字段是否为有效数据的总管理字段,如果是,执行步骤S4,否则执行步骤S1;
S4:根据所述有效数据的总管理字段中的地址指示进行寻址,获取手机数据;
S5:解析所述手机数据,合并所解析的结果;
S6:判断是否完成所述有效数据的总管理字段的解析,如果是,执行步骤S7,否则执行步骤S4;
S7:判断是否完成所述字库的解析,如果是,结束流程,否则执行步骤S1。
作为优选,所述管理字段标识为0x30FCFFFF。
作为优选,所述步骤S2的具体方法为:以所述管理字段标识的首地址为起始位置,向后跳转0x45字节,读取0x45字节的内容,判断所述0x45字节的内容是否为0xFF,如果是,执行步骤S1,否则执行步骤S3。
作为优选,所述步骤S3的具体方法为:以所述管理字段标识的首地址为起始位置,向后跳转至0x17字节并读取该字节的内容,并顺序读取0x19、0x1B、0x1D、0x1F……字节的内容,直至所读出的所述字节内容为0xFF,判断所述0xFF之前所读出的所述字节内容是否为连续递增的数列,如果不是,则所述总管理字段为有效数据的总管理字段,执行步骤S4,否则执行步骤S1。
作为优选,所述步骤S4包括以下步骤:
S401:以所述管理字段标识的首地址为起始位置,向后跳转至0x16字节并以所述0x16字节的地址为起始位置,以两字节为一组,读取所述两字节的内容0xMMNN为地址指示,其中,MM和NN为任意非零的十六进制数,0xNN为数据大段号,表示所述字库中的第0xNN个数据大段,0xMM为段内偏移量;
S402:查找所述字库中所述0xNN数据大段的数据大段标识0x4365NN00,其中,0x4365为数据大段的固定标识,0xNN为所述数据大段号,表示所述字库中的第0xNN个数据大段;
S403:以所述数据大段标识的后一字节的地址为起始位置,将所述0xMM加上所述0xNN的和乘以0x100作为偏移量进行寻址,以获取手机数据。
作为优选,所述步骤S5包括以下步骤:
S501:判断当前位置起始的两字节内容是否为数据小段标识,如果是,执行步骤S502,否则执行步骤S6;
S502:判断所述数据小段标识后是否为短信标识,如果是,执行步骤S505,否则执行步骤S503;
S503:判断所述数据小段标识后是否为通讯录标识,如果是,执行步骤S506,否则执行步骤S504;
S504:判断所述数据小段标识后是否为通话记录,如果是,执行步骤S507,否则,执行步骤S508。
S505:解析短信的数据结构,跳转至步骤S508;
S506:解析通讯录的数据结构,跳转至步骤S508;
S507:解析通话记录的数据结构,跳转至步骤S508;
S508:根据解析结果,将短信、通讯录及通话记录分别进行合并。
作为优选,所述数据小段标识为0xC0FF或0xF0FF。
作为优选,所述短信标识为0x0108或0x0208,其中,0x0108表示未读短信,0x0208表示已读短信。
作为优选,所述通讯录标识为0xKK00,其中,0xKK为顺序递增的非零的十六进制数。
作为优选,所述步骤S505包括以下步骤:
S5051:查找并解析基站信息:所述短信标识的末字节位置向后偏移1字节的内容为所述基站标识,所述基站标识后的字节内容为所述基站号码,所述基站号码以字节交换的格式存储,以F作为所述基站号码的结束标识;
S5052:查找并解析对端号码:所述基站号码的末字节向后偏移4字节的内容为所述对端号码,所述对端号码以字节交换的格式存储,以F作为所述对端号码的结束标识;
S5053:查找并解析短信收发时间:所述对端号码的末字节向后偏移2字节的内容为所述短信收发时间的长度,所述长度包括1字节的长度信息和7字节的所述短信收发时间,所述短信收发时间的长度后的7字节内容为所述短信收发时间,其中,所述短信收发时间按字节交换的格式存储,所述7字节按地址由低至高的内容分别表示年、月、日、时、分、秒及固定填充字节0x23;
S5054:查找并解析短信内容:所述固定填充字节0x23后的1字节内容为所述短信的实际长度,所述实际长度后的字节内容为所述短信内容,所述短信内容以Unicode大端格式存储。
S5055:以所述数据小段标识的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束所述步骤S505的流程,否则,执行步骤S5056;
S5056:在当前所述数据小段中查找下一所述短信标识并执行步骤S5051。
作为优选,所述步骤S506包括以下步骤:
S5061:解析所述通讯录的条目序号:所述通讯录标识的低字节内容0xKK为所述条目序号,表示第0xKK条通讯录,其中,0xKK为顺序递增的非零的十六进制数;
S5062:解析联系人姓名:所述条目序号后为联系人姓名,所述联系人姓名以Unicode小端格式储存并以0x0000为结束符、且长度不超过0x2A字节;
S5063:解析联系人电话号码:以所述通讯录标识的首字节地址为起始位置,向后跳转0x2D字节,顺序读取的内容为所述联系人电话号码,所述联系人电话号码以ASCII码格式储存并以0x0000为结束符、且长度不超过0x2A字节;
S5064:以所述数据小段标识的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束所述步骤S506的流程,否则,执行步骤S5065;
S5065:由于所述通讯录的每一所述条目的长度为0xLL字节,故以当前所述条目序号的首字节地址为起始位置,读取0xLL+1字节和0xLL+2字节的内容作为下一条目序号,执行步骤S5062。
作为优选,所述通讯录的每一所述条目的长度为0x56字节。
作为优选,所述步骤S507包括以下步骤:
S5071:以所述数据小段标识的首地址为起始位置,向后跳转0x10字节,顺序读取所述0x10字节至0x1E字节的内容;
S5072:判断所述0x10字节的内容是否为ASCII码格式存储的“+”号,如果是,执行步骤S5073,否则执行步骤S5074;
S5073:判断0x11字节至所述0x1E字节的内容是否均为ASCII码格式存储的数字,如果是,执行步骤S5075,否则结束所述步骤507的流程;
S5074:判断所述0x10字节至0x12字节的内容是否为ASCII码格式存储的数字,如果是,执行步骤S5075,否则结束所述步骤507的流程;
S5075:查找通话时间:以所述数据小段标识的首地址为起始位置,向后跳转0x2字节至所述通话时间的首地址;
S5076:解析所述通话时间:以当前地址为首地址,顺序读取前十个字节的内容,其中,第一字节的内容为秒,第二字节的内容为分,第三字节的内容为时,第六字节的内容为日,第七字节的内容为月,所述秒、分、时、日、月均以十六进制数表示,第九和第十字节的内容为年并以Unicode小端格式存储;
S5077:查找并解析对端号码:以所述通话时间的首地址为起始位置,向后跳转0xE字节,顺序读取所述0xE字节及其后的字节内容为所述对端号码,所述对端号码以ASCII码的数字格式储存、以0x0000为结束标识且长度不超过0x2A字节;
S5078:以所述数据小段标识的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束所述步骤S507的流程,否则,执行步骤S5079。
S5079:寻址下一通话记录的通话时间:以当前所述通话时间的首字节地址为起始位置,跳转0x38字节至下一通话记录的通话时间的首字节地址,并执行步骤S5076。
作为优选,每一所述通话记录的长度为0x38字节。
作为优选,所述步骤S6的具体方法为,在所述有效数据的总管理字段中,读取下一所述地址指示0xMMNN,判断所述地址指示0xMMNN的值是否为0xFFFF,如果是,执行步骤S7,否则执行步骤S4。
本发明的有益效果是能够解析英飞凌手机的短信及通话记录,填补了现有技术中无法解析英飞凌手机字库的技术空缺,解决了无法针对英飞凌手机的取证问题,避免了无法获取此类电子证据的盲点。
附图说明
图1为本发明的主流程图;
图2为本发明中有效数据的总管理字段的数据结构图;
图3为本发明中无效数据的总管理字段的数据结构图;;
图4为本发明中包含数据大段标识的数据结构图;
图5为本发明中短信字段的数据结构图;
图6为本发明中解析手机数据的处理流程图;
图7为本发明中解析短信字段的处理流程图;
图8为本发明中解析通讯录字段的处理流程图;
图9为本发明中通讯录字段的数据结构图;
图10为本发明中解析通话记录的处理流程图;
图11为本发明中解析通话记录的数据结构图。
具体实施方式
下面结合附图和实施例对本发明作进一步阐述。
搭载英飞凌CPU的手机的短信、通讯录以及通话记录都存储于其字库中,字库容量包括但不限于4M、8M、16M及32M字节,本实施例中的字库容量为4M字节。
如图1所示,一种解析英飞凌手机字库的方法,包括以下步骤:
S1:查找字库中的管理字段标识:如图2所示,本实施例中的管理字段标识为0x30FCFFFF。
S2:判断管理字段标识所标识的管理字段是否为总管理字段,如果是,执行步骤S3,否则执行步骤S1;
本实施例中,以管理字段标识0x30FCFFFF的首地址为起始位置,向后跳转0x45字节,读取0x45字节的内容,判断0x45字节的内容是否为0xFF,如果是,执行步骤S1,否则执行步骤S3;
如图2所示,本实施例中,0x45字节的内容为0xB8,故执行步骤S3。
S3:判断该总管理字段是否为有效数据的总管理字段,如果是,执行步骤S4,否则执行步骤S1;
以该管理字段标识0x30FCFFFF的首地址为起始位置,向后跳转至0x17字节并读取该字节的内容,并顺序读取0x19、0x1B、0x1D、0x1F……字节的内容,直至所读出的字节内容为0xFF,判断该0xFF之前所读出的字节内容是否为连续递增的数列,如果不是,则该总管理字段为有效数据的总管理字段,执行步骤S4,否则执行步骤S1;
如图2所示,本实施例中,顺序读取0x17、0x19、0x1B、0x1D、0x1F……等字节的内容分别为0x94、0xA7、0x30、0x29、0xA1……,可以看出该数列为非连续递增的数列,表示该总管理字段为有效数据的总管理字段,故执行步骤S4;
图3示出了本实施例中另一总管理字段的数据结构图,顺序读取0x17、0x19、0x1B、0x1D、0x1F……等字节的内容分别为0xBF、0xC0、0xC1、0xC2、0xC3……,可以看出该数列为连续递增的数列,表示该总管理字段为无效数据的总管理字段,即,该总管理字段中的地址指示的存储空间中无数据。
S4:根据有效数据的总管理字段中的地址指示进行寻址,获取手机数据,包
括以下步骤:
S401:如图2所示,本实施例中,以管理字段标识0x30FCFFFF的首地址为起始位置,向后跳转至0x16字节并以0x16字节的地址为起始位置,以两字节为一组,分别读取两字节的地址指示为0x9404、0xA704、0x3003……,其中的高字节的内容0x04、0x04、0x03……为数据大段号,表示手机数据分别存储在字库中第0x04、0x04、0x03……个数据大段中,低字节的内容0x94、0xA7、0x30……为段内偏移量。
S402:如图4所示,查找字库中第0x04数据大段的数据大段标识0x43650400,其中,0x4365为数据大段的固定标识,0x04为数据大段号,表示手机数据存储在字库中的第4个数据大段;
S403:如图4所示,以数据大段标识0x43650400的后一字节0xF0FF的地址为起始位置,将图2所示的第一个地址指示0x9404中的段内偏移量0x94加上数据大段号0x04的和,即0x98,再乘以0x100作为偏移量进行寻址,以获取手机数据,本实施例中,由于每一数据小段的长度为0x100字节,所以,从图4所示的0xF0FF的首字节为起始地址,向后跳转0x9800字节,寻址到手机数据,如图5所示。
S5:解析手机数据,合并所解析的结果,包括图6所示的以下步骤:
S501:判断当前位置起始的两字节内容是否为数据小段标识0xC0FF或0xF0FF,如果是,执行步骤S502,否则执行步骤S6;如图5所示,本实施例中,当前位置起始的两字节内容是0xF0FF,故执行S502;
S502:判断数据小段标识后是否为短信标识0x0108或0x0208,如果是,执行步骤S505,否则执行步骤S503;如图5所示,本实施例中,数据小段标识后为短信标识0x0108,故执行步骤S505;
S503:判断数据小段标识后是否为通讯录标识0xKK00,其中,0xKK为顺序递增的非零的十六进制数,如果是,执行步骤S506,否则执行步骤S504;
S504:判断数据小段标识后是否为通话记录,如果是,执行步骤S507,否则,执行步骤S508。
S505:解析短信的数据结构,跳转至步骤S508,包括图7所示的以下步骤:
S5051:查找并解析基站信息:如图5所示,本实施例中,短信标识0x0108的末字节位置向后偏移1字节的内容0x91为基站标识,基站标识0x91后的字节内容为基站号码0x683108301105F0,基站号码以字节交换的格式存储,以F作为基站号码的结束标识,因此,解析出此基站号码为8613800311500;
S5052:查找并解析对端号码:如图5所示,本实施例中,基站号码0x683108301105F0的末字节向后偏移4字节的内容为对端号码0x6851917664F2,该对端号码以字节交换的格式存储,以F作为对端号码的结束标识,因此,解析出此对端号码为8615194967462;
S5053:查找并解析短信收发时间:如图5所示,本实施例中,对端号码0x6851917664F2的末字节向后偏移2字节的内容为短信收发时间的长度0x08,即8个字节,其中,包括1字节的长度信息和7字节的短信收发时间,短信收发时间的长度后的7字节内容0x80904151429123为短信收发时间,其中,短信收发时间按字节交换的格式存储,该7字节按地址由低至高的内容分别表示年、月、日、时、分、秒及固定填充字节0x23,因此,解析出0x80表示2008年,0x90为09月,0x41为14日,0x51为15时;0x42为24分,0x91为19秒,0x23为固定填充字节;
S5054:查找并解析短信内容:如图5所示,本实施例中,固定填充字节0x23后的1字节内容0x86为短信的实际长度,实际长度0x86后的字节内容为短信内容,短信内容以Unicode大端格式存储。
S5055:以数据小段标识0xF0FF的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束步骤S505的流程,否则,执行步骤S5056;
S5056:在当前数据小段中查找下一短信标识0x0108或0x0208并执行步骤S5051。
S506:解析通讯录的数据结构,跳转至步骤S508,包括图8所示的以下步骤:
S5061:解析通讯录的条目序号:如图9所示,通讯录标识0x0100的低字节内容0x01为条目序号,表示第1条通讯录;
S5062:解析联系人姓名:条目序号0x0100后为联系人姓名0x2D4E4C88,联系人姓名以Unicode小端格式储存并以0x0000为结束符、且长度不超过0x2A字节,如图9所示,该联系人姓名为“中行”;
S5063:解析联系人电话号码:以通讯录标识0x0100的首字节地址为起始位置,向后跳转0x2D字节,顺序读取的内容为联系人电话号码0x3133303931313131353232,联系人电话号码以ASCII码格式储存并以0x0000为结束符、且长度不超过0x2A字节,如图9所示,解析出该联系人电话号码为13091111522;
S5064:如图9所示,以数据小段标识0xF0FF的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束步骤S506的流程,否则,执行步骤S5065;
S5065:由于通讯录的每一条目的长度为0x56字节,故以当前条目序号0x0100的首字节地址为起始位置,读取0x57字节和0x58字节的内容0x0200作为下一条目序号,执行步骤S5062。
S507:解析通话记录的数据结构,跳转至步骤S508,包括图10所示的以下步骤;
S5071:如图11所示,以数据小段标识0xF0FF的首地址为起始位置,向后跳转0x10字节,顺序读取所述0x10字节至0x1E字节的内容;由于电话号码可能含有+86的前缀,故电话号码需考虑0x10字节至0x1E字节的14个字节内容,此实施例中,顺序读取0x10字节至0x1E字节的内容为0x3033313038393031383039000000。
S5072:图10所示,判断0x10字节的内容是否为ASCII码格式存储的“+”号,如果是,执行步骤S5073,否则执行步骤S5074;
S5073:图10所示,判断0x11字节至0x1E字节的内容是否均为ASCII码格式存储的数字,如果是,执行步骤S5075,否则结束步骤507的流程;
S5074:图10所示,判断0x10字节至0x12字节的内容是否为ASCII码格式存储的数字,如果是,执行步骤S5075,否则结束步骤507的流程;
S5075:查找通话时间:如图11所示,以数据小段标识0xF0FF的首地址为起始位置,向后跳转0x2字节至通话时间的首地址;
S5076:解析通话时间:如图11所示,以当前地址为首地址,顺序读取前十个字节的内容0x15030100D9110200D907,其中,第一字节的内容0x15为秒,表示15秒,第二字节的内容0x03为分,表示3分,第三字节的内容0x01为时,表示1时,第六字节的内容0x11为日,表示11日,第七字节的内容0x02为月,表示2月,秒、分、时、日、月均以十六进制数表示,第九和第十字节的内容0xD907为年并以Unicode小端格式存储,即解析为十六进制07D9,表示2009年;
S5077:查找并解析对端号码:如图11所示,以通话时间0x15030100D9110200D907的首地址为起始位置,向后跳转0xE字节,顺序读取0xE字节及其后的字节内容0x3033313038393031383039为对端号码,对端号码以ASCII码的数字格式储存、以0x0000为结束标识且长度不超过0x2A字节,本实施例中,对端号码为03108901809;
S5078:以数据小段标识0xF0FF的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束步骤S507的流程,否则,执行步骤S5079。
S5079:寻址下一通话记录的通话时间:由于每一通话记录的长度为0x38字节,因此,以当前通话时间的首字节地址为起始位置,跳转0x38字节至下一通话记录的通话时间的首字节地址,并执行步骤S5076。
S508:根据解析结果,将短信、通讯录及通话记录分别进行合并。
S6:判断是否完成有效数据的总管理字段的解析,如果是,执行步骤S7,否则执行步骤S4;如图2所示,在有效数据的总管理字段中,读取下一地址指示0xA704,判断地址指示0xA704的值是否为0xFFFF,如果是,执行步骤S7,否则执行步骤S4。
S7:判断是否完成字库的解析,如果是,结束流程,否则执行步骤S1。
应当理解的是,本发明不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (12)

1.一种解析英飞凌手机字库的方法,其特征在于包括以下步骤:
S1:查找所述字库中的管理字段标识,所述管理字段标识为0x30FCFFFF;
S2:判断所述管理字段标识所标识的管理字段是否为总管理字段,如果是,执行步骤S3,否则执行步骤S1;
S3:判断所述总管理字段是否为有效数据的总管理字段,如果是,执行步骤S4,否则执行步骤S1:以所述管理字段标识的首地址为起始位置,向后跳转0x45字节,读取0x45字节的内容,判断所述0x45字节的内容是否为0xFF,如果是,执行步骤S1,否则执行步骤S3;
S4:根据所述有效数据的总管理字段中的地址指示进行寻址,获取手机数据;
S5:解析所述手机数据,合并所解析的结果,包括以下步骤:
S501:判断当前位置起始的两字节内容是否为数据小段标识,如果是,执行步骤S502,否则执行步骤S6;
S502:判断所述数据小段标识后是否为短信标识,如果是,执行步骤S505,否则执行步骤S503;
S503:判断所述数据小段标识后是否为通讯录标识,如果是,执行步骤S506,否则执行步骤S504;
S504:判断所述数据小段标识后是否为通话记录,如果是,执行步骤S507,否则,执行步骤S508;
S505:解析短信的数据结构,跳转至步骤S508;
S506:解析通讯录的数据结构,跳转至步骤S508;
S507:解析通话记录的数据结构,跳转至步骤S508;
S508:根据解析结果,将短信、通讯录及通话记录分别进行合并;
S6:判断是否完成所述有效数据的总管理字段的解析,如果是,执行步骤S7,否则执行步骤S4;
S7:判断是否完成所述字库的解析,如果是,结束流程,否则执行步骤S1。
2.根据权利要求1所述的一种解析英飞凌手机字库的方法,其特征在于,所述步骤S3的具体方法为:以所述管理字段标识的首地址为起始位置,向后跳转至0x17字节并读取该字节的内容,并顺序读取0x19、0x1B、0x1D、0x1F……字节的内容,直至所读出的字节内容为0xFF,判断所述0xFF之前所读出的所述字节内容是否为连续递增的数列,如果不是,则所述总管理字段为有效数据的总管理字段,执行步骤S4,否则执行步骤S1。
3.根据权利要求2所述的一种解析英飞凌手机字库的方法,其特征在于,所述步骤S4包括以下步骤:
S401:以所述管理字段标识的首地址为起始位置,向后跳转至0x16字节并以所述0x16字节的地址为起始位置,以两字节为一组,读取所述两字节的内容0xMMNN为地址指示,其中,MM和NN为任意非零的十六进制数,0xNN为数据大段号,表示所述字库中的第0xNN个数据大段,0xMM为段内偏移量;
S402:查找所述字库中所述0xNN数据大段的数据大段标识0x4365NN00,其中,0x4365为数据大段的固定标识,0xNN为所述数据大段号,表示所述字库中的第0xNN个数据大段;
S403:以所述数据大段标识的后一字节的地址为起始位置,将所述0xMM加上所述0xNN的和乘以0x100作为偏移量进行寻址,以获取手机数据。
4.根据权利要求3所述的一种解析英飞凌手机字库的方法,其特征在于,所述数据小段标识为0xC0FF或0xF0FF。
5.根据权利要求4所述的一种解析英飞凌手机字库的方法,其特征在于,所述短信标识为0x0108或0x0208,其中,0x0108表示未读短信,0x0208表示已读短信。
6.根据权利要求5所述的一种解析英飞凌手机字库的方法,其特征在于,所述通讯录标识为0xKK00,其中,0xKK为顺序递增的非零的十六进制数。
7.根据权利要求6所述的一种解析英飞凌手机字库的方法,其特征在于,所述步骤S505包括以下步骤:
S5051:查找并解析基站信息:所述短信标识的末字节位置向后偏移1字节的内容为基站标识,所述基站标识后的字节内容为基站号码,所述基站号码以字节交换的格式存储,以F作为所述基站号码的结束标识;
S5052:查找并解析对端号码:所述基站号码的末字节向后偏移4字节的内容为所述对端号码,所述对端号码以字节交换的格式存储,以F作为所述对端号码的结束标识;
S5053:查找并解析短信收发时间:所述对端号码的末字节向后偏移2字节的内容为所述短信收发时间的长度,所述长度包括1字节的长度信息和7字节的所述短信收发时间,所述短信收发时间的长度后的7字节内容为所述短信收发时间,其中,所述短信收发时间按字节交换的格式存储,所述7字节按地址由低至高的内容分别表示年、月、日、时、分、秒及固定填充字节0x23;
S5054:查找并解析短信内容:所述固定填充字节0x23后的1字节内容为所述短信的实际长度,所述实际长度后的字节内容为所述短信内容,所述短信内容以Unicode大端格式存储;
S5055:以所述数据小段标识的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束所述步骤S505的流程,否则,执行步骤S5056;
S5056:在当前所述数据小段中查找下一所述短信标识并执行步骤S5051。
8.根据权利要求7所述的一种解析英飞凌手机字库的方法,其特征在于,所述步骤S506包括以下步骤:
S5061:解析所述通讯录的条目序号:所述通讯录标识的低字节内容0xKK为所述条目序号,表示第0xKK条通讯录,其中,0xKK为顺序递增的非零的十六进制数;
S5062:解析联系人姓名:所述条目序号后为联系人姓名,所述联系人姓名以Unicode小端格式储存并以0x0000为结束符、且长度不超过0x2A字节;
S5063:解析联系人电话号码:以所述通讯录标识的首字节地址为起始位置,向后跳转0x2D字节,顺序读取的内容为所述联系人电话号码,所述联系人电话号码以ASCII码格式储存并以0x0000为结束符、且长度不超过0x2A字节;
S5064:以所述数据小段标识的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束所述步骤S506的流程,否则,执行步骤S5065;
S5065:由于所述通讯录的每一所述条目的长度为0xLL字节,故以当前所述条目序号的首字节地址为起始位置,读取0xLL+1字节和0xLL+2字节的内容作为下一条目序号,执行步骤S5062。
9.根据权利要求8所述的一种解析英飞凌手机字库的方法,其特征在于,所述通讯录的每一所述条目的长度为0x56字节。
10.根据权利要求9所述的一种解析英飞凌手机字库的方法,其特征在于,所述步骤S507包括以下步骤:
S5071:以所述数据小段标识的首地址为起始位置,向后跳转0x10字节,顺序读取所述0x10字节至0x1E字节的内容;
S5072:判断所述0x10字节的内容是否为ASCII码格式存储的“+”号,如果是,执行步骤S5073,否则执行步骤S5074;
S5073:判断0x11字节至所述0x1E字节的内容是否均为ASCII码格式存储的数字,如果是,执行步骤S5075,否则结束所述步骤S 507的流程;
S5074:判断所述0x10字节至0x12字节的内容是否为ASCII码格式存储的数字,如果是,执行步骤S5075,否则结束所述步骤S 507的流程;
S5075:查找通话时间:以所述数据小段标识的首地址为起始位置,向后跳转0x2字节至所述通话时间的首地址;
S5076:解析所述通话时间:以当前地址为首地址,顺序读取前十个字节的内容,其中,第一字节的内容为秒,第二字节的内容为分,第三字节的内容为时,第六字节的内容为日,第七字节的内容为月,所述秒、分、时、日、月均以十六进制数表示,第九和第十字节的内容为年并以Unicode小端格式存储;
S5077:查找并解析对端号码:以所述通话时间的首地址为起始位置,向后跳转0xE字节,顺序读取所述0xE字节及其后的字节内容为所述对端号码,所述对端号码以ASCII码的数字格式储存、以0x0000为结束标识且长度不超过0x2A字节;
S5078:以所述数据小段标识的首字节地址为起始位置,判断所解析的字节长度是否超过0x100字节,如果是,结束所述步骤S507的流程,否则,执行步骤S5079;
S5079:寻址下一通话记录的通话时间:以当前所述通话时间的首字节地址为起始位置,跳转0x38字节至下一通话记录的通话时间的首字节地址,并执行步骤S5076。
11.根据权利要求10所述的一种解析英飞凌手机字库的方法,其特征在于,每一所述通话记录的长度为0x38字节。
12.根据权利要求11所述的一种解析英飞凌手机字库的方法,其特征在于,所述步骤S6的具体方法为,在所述有效数据的总管理字段中,读取下一所述地址指示0xMMNN,判断所述地址指示0xMMNN的值是否为0xFFFF,如果是,执行步骤S7,否则执行步骤S4。
CN201710397447.0A 2017-05-31 2017-05-31 一种解析英飞凌手机字库的方法 Active CN107122311B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710397447.0A CN107122311B (zh) 2017-05-31 2017-05-31 一种解析英飞凌手机字库的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710397447.0A CN107122311B (zh) 2017-05-31 2017-05-31 一种解析英飞凌手机字库的方法

Publications (2)

Publication Number Publication Date
CN107122311A CN107122311A (zh) 2017-09-01
CN107122311B true CN107122311B (zh) 2020-11-03

Family

ID=59730287

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710397447.0A Active CN107122311B (zh) 2017-05-31 2017-05-31 一种解析英飞凌手机字库的方法

Country Status (1)

Country Link
CN (1) CN107122311B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729451B (zh) * 2017-10-09 2021-02-23 四川巧夺天工信息安全智能设备有限公司 一种查找edb数据库源文件中数据的方法
CN107862023B (zh) * 2017-10-31 2021-12-24 四川巧夺天工信息安全智能设备有限公司 一种解析edb数据库源文件中数据的方法
CN107992561A (zh) * 2017-11-29 2018-05-04 四川巧夺天工信息安全智能设备有限公司 一种解析edb数据库源文件中过长字段的方法
CN108090137B (zh) * 2017-11-29 2021-11-26 四川巧夺天工信息安全智能设备有限公司 一种解析edb数据库源文件中过长字段的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106445736A (zh) * 2016-08-31 2017-02-22 四川效率源信息安全技术股份有限公司 一种提取并重组mtk62系列手机字库数据的方法
CN106649617A (zh) * 2016-11-30 2017-05-10 四川秘无痕信息安全技术有限责任公司 一种解析WindowsPhone手机短信数据结构的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106445736A (zh) * 2016-08-31 2017-02-22 四川效率源信息安全技术股份有限公司 一种提取并重组mtk62系列手机字库数据的方法
CN106649617A (zh) * 2016-11-30 2017-05-10 四川秘无痕信息安全技术有限责任公司 一种解析WindowsPhone手机短信数据结构的方法

Also Published As

Publication number Publication date
CN107122311A (zh) 2017-09-01

Similar Documents

Publication Publication Date Title
CN107122311B (zh) 一种解析英飞凌手机字库的方法
CN108763252B (zh) 公众号的信息推送方法及其系统、存储介质、电子设备
CN103390258B (zh) 基于信息码的实验室物品信息管理系统
CN104104778B (zh) 一种移动终端的短消息处理方法和装置
US8949283B1 (en) Systems and methods for clustering electronic messages
CN101968865A (zh) 在电子日历中添加提醒事件的方法
CN102883059B (zh) 显示短信的方法和装置、回复短信的方法和装置
CN105956008A (zh) 一种图片管理方法及终端
US20160219004A1 (en) An apparatus and method for handling metadata of an email message
CN104717674A (zh) 号码属性识别方法、装置、终端和服务器
CN103942054A (zh) 一种基于安卓的数据取证系统
US20150278248A1 (en) Personal Information Management Service System
CN110458499A (zh) 一种快递订单生成方法、装置、电子设备及存储介质
CN106649617B (zh) 一种解析WindowsPhone手机短信数据结构的方法
US10067631B2 (en) Communication terminal and method of providing unified interface to the same
EP1746813A1 (en) Method and apparatus for playing content on background image of mobile terminal
CN111224859A (zh) 删除聊天记录的方法、计算机设备以及存储介质
US9665574B1 (en) Automatically scraping and adding contact information
US20130054644A1 (en) Information processing method and program for registering special day and information processing apparatus
CN112347129B (zh) 一种通知消息的处理方法、装置和智能穿戴设备
WO2010112951A1 (en) Method and apparatus for creating a user compendium for an electronic book
JP2012129982A (ja) 推定装置、推定方法、並びにプログラム
US20170171128A1 (en) Method and electronic device for email processing
US20150234802A1 (en) Information input system and non-transitory computer readable medium storing program
KR101861813B1 (ko) 사용자의 현재 위치에 기반한 할인 정보 포스팅 시스템, 방법 및 컴퓨터로 독출 가능한 기록 매체

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
TR01 Transfer of patent right

Effective date of registration: 20210428

Address after: 641100 No.1 Hanyu Avenue, Shizhong District, Neijiang City, Sichuan Province

Patentee after: XLY SALVATIONDATA TECHNOLOGY Inc.

Address before: 641000, No. 3, section 1700, building 7, 1, Tianfu Avenue, Chengdu hi tech Zone, Sichuan, 704

Patentee before: SICHUAN AITE YINGTAI INTELLIGENT TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right