CN107563216A - 一种安卓系统qq聊天记录解密方法 - Google Patents

一种安卓系统qq聊天记录解密方法 Download PDF

Info

Publication number
CN107563216A
CN107563216A CN201610522155.0A CN201610522155A CN107563216A CN 107563216 A CN107563216 A CN 107563216A CN 201610522155 A CN201610522155 A CN 201610522155A CN 107563216 A CN107563216 A CN 107563216A
Authority
CN
China
Prior art keywords
data
character
label
key
xml
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.)
Pending
Application number
CN201610522155.0A
Other languages
English (en)
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 MWH INFORMATION SAFETY TECHNOLOGY Co Ltd
Original Assignee
SICHUAN MWH 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 MWH INFORMATION SAFETY TECHNOLOGY Co Ltd filed Critical SICHUAN MWH INFORMATION SAFETY TECHNOLOGY Co Ltd
Priority to CN201610522155.0A priority Critical patent/CN107563216A/zh
Publication of CN107563216A publication Critical patent/CN107563216A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种安卓系统QQ聊天记录解密方法,其步骤为:S1:找到手机内存放解密密钥的文件;S2:获取QQ聊天数据解密密钥;S3:遍历字段读取类型为TEXT或者BLOB的数据;S4:通过解密密钥对数据库中的数据进行解密;S5:通过AES解密;本发明的有益效果如下:通过QQ数据库快速找到解密密钥,对安卓聊天记录进行解密,可完整恢复加密数据,帮助警方破案。

Description

一种安卓系统QQ聊天记录解密方法
技术领域
本发明涉及信息安全技术领域,特别涉及一种安卓系统QQ聊天记录解密方法。
背景技术
信息数据化时代通讯APP是常用的社交工具,这些社交工具在长期的使用中存储着大量的用户信息,是数据取证的重点提取的数据;但由于其隐私安全的考虑,通常社交工具的数据都进行了加密存储,这给数据丢失取证造成了不小的麻烦。其中在大量的社交工具中,QQ用户量超群,且安卓QQ聊天记录数据库为加密存放。而目前还没有一种技术可以对QQ加密数据进行解密。
发明内容
本发明针对现有技术的缺陷,提供了一种安卓系统QQ聊天记录解密方法,能有效的解决上述现有技术存在的问题。
一种安卓系统QQ聊天记录解密方法,包括以下步骤:
S1:找安卓手机用户数据分区的“data”目录中的QQ数据目录;在QQ数据目录中找“shared_prefs”目录中的“appcenter_mobileinfo.xml”文件和“contact_bind_info“QQ号”.xml”文件;若未找到这两个文件则查找“DENGTA_META.xml”文件,执行S25;
S2:获取QQ聊天数据解密密钥;其详细步骤如下:
S21:通过XML解析库打开“contact_bind_info“QQ号”.xml”文件;
S22:查找该文件内是否存在标签<string name="contact_bind_info_imei">,若存在标签则读取该标签的值,执行S24;若不存在则查找是否存在<string name="contact_bind_info_unique">标签,执行S23;
S23:若存在<string name="contact_bind_info_unique">标签,则读取该标签的值,执行S24;若不存在则执行S25;
S24:判断标签的值中是否存在字符“|”,若不存在则执行S25;若存在则执行S26
S25:获取“DENGTA_META.xml”文件中<string name="IMEI_DENGTA">标签的值作为密钥,结束;
S26:判断“|”字符的左右两边是否存在“null”字符;若不存在“null”字符或“|”字符左边存在“null”字符,则取“appcenter_mobileinfo.xml”文件中<string name="imei">标签的值为密钥;若“|”字符右边存在“null”字符,则取“appcenter_mobileinfo.xml”文件中<string name="wifi_mac_address">标签的值为密钥。
S3:递归遍历QQ数据库中所有数据表的所有字段,若数据类型为TEXT或者BLOB则读取数据;
S4:通过解密密钥对数据库中的数据进行解密,解密算法为异或;
若数据类型为TEXT根据UTF-8字符的编码标识对编码字符数据进行异或操作,每个密钥字节对应一个UTF-8字符,到达密钥的最后一个字节后,又重密钥的第一个字节开始循环,异或完成后得到解密后的UTF-8编码字符串;
若数据类型为BLOB,则每一个密钥字符顺序对其加密数据进行异或,到达密钥的最后一个字节后,又重密钥的第一个字节开始循环,异或完成后得到解密后的字节数据。
S5:每个字段的数据解密完成后通过SQLite库数据写入接口对其进行回写完成数据库解密。
与现有技术相比本发明的优点在于:通过QQ数据库快速找到解密密钥,对安卓QQ聊天记录进行解密,可完整恢复加密数据,帮助警方破案,减少受害人损失。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下举实施例,对本发明做进一步详细说明。
一种安卓系统QQ聊天记录解密方法,包括以下步骤:
S1:安卓QQAPP聊天记录数据库存放在安卓手机用户数据分区中的“\data\com.tencent.mobileqq\”路径中,若安卓手机用户数据分区的“data”目录中存在“com.tencent.mobileqq”目录,则说明该安卓手机中可能存在QQ聊天记录数据,否则该安卓手机中不存在QQ聊天记录数据。
另外安卓国际版QQ的目录为“com.tencent.mobileqqi”、安卓轻聊版QQ的目录为“com.tencent.qqlite”、安卓企业版QQ的目录为“com.tencent.eim”,不同的安卓QQ版本应判断不同的数据目录。
获取QQ聊天记录数据解密密钥主要用到QQ数据目录的“shared_prefs”目录中的“appcenter_mobileinfo.xml”文件和“contact_bind_info“QQ号”.xml”文件,其中“contact_bind_info“QQ号”.xml”文件有多个,在手机中登录过的每一个QQ号基本上会有对应的一个“contact_bind_info“QQ号”.xml”文件。若未找到这两个文件则查找“DENGTA_META.xml”文件。
S2:获取QQ聊天数据解密密钥;其详细步骤如下:
S21:通过XML解析库打开任意一个“contact_bind_info“QQ号”.xml”文件;
S22:查找该文件内是否存在标签<string name="contact_bind_info_imei">,若存在标签则读取该标签的值,执行S24;若不存在则查找是否存在<string name="contact_bind_info_unique">标签,执行S23;
S23:若存在<string name="contact_bind_info_unique">标签,则读取该标签的值,执行S24;若不存在则执行S25;
S24:判断标签的值中是否存在字符“|”,若不存在则执行S25;若存在则执行S26
S25:获取“DENGTA_META.xml”文件中<string name="IMEI_DENGTA">标签的值作为密钥,结束;
S26:判断“|”字符的左右两边是否存在“null”字符;若不存在“null”字符或“|”字符左边存在“null”字符,则取“appcenter_mobileinfo.xml”文件中<string name="imei">标签的值为密钥;若“|”字符右边存在“null”字符,则取“appcenter_mobileinfo.xml”文件中<string name="wifi_mac_address">标签的值为密钥。
S3:QQ数据库结构并未加密,而是存入数据库中的TEXT类型数据和BLOB数据被加密。递归遍历QQ数据库中所有数据表的所有字段,若数据类型为TEXT或者BLOB则读取数据。
S4:通过解密密钥对数据库中的数据进行解密,解密算法为异或。
若数据类型为TEXT根据UTF-8字符的编码标识对编码字符数据进行异或操作,每个密钥字节对应一个UTF-8字符(例如:3个字节的UTF-8字符对其第二个字节低1位和密钥字节高1位进行异或,对其第三个字节低7位和密钥字节第7位进行异或,第一个字节不做异或;2个字节的UTF-8字符对其第一个字节低1位和密钥字节高1位进行异或,对其第二个字节低7位和密钥字节第7位进行异或;1个字节的UTF-8字符对其8位直接进行异或),到达密钥的最后一个字节后,又重密钥的第一个字节开始循环,异或完成后得到解密后的UTF-8编码字符串;
若数据类型为BLOB,则每一个密钥字符顺序对其加密数据进行异或,到达密钥的最后一个字节后,又重密钥的第一个字节开始循环,异或完成后得到解密后的字节数据。
S5:每个字段的数据解密完成后通过SQLite库数据写入接口对其进行回写完成数据库解密。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的实施方法,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

Claims (1)

1.一种安卓系统QQ聊天记录解密方法,其特征在于包括以下步骤:
S1:找安卓手机用户数据分区的“data”目录中的QQ数据目录;在QQ数据目录中找“shared_prefs”目录中的“appcenter_mobileinfo.xml”文件和“contact_bind_info“QQ号”.xml”文件;若未找到这两个文件则查找“DENGTA_META.xml”文件,执行S25;
S2:获取QQ聊天数据解密密钥;其详细步骤如下:
S21:通过XML解析库打开“contact_bind_info“QQ号”.xml”文件;
S22:查找该文件内是否存在标签<string name="contact_bind_info_imei">,若存在标签则读取该标签的值,执行S24;若不存在则查找是否存在<stringname="contact_bind_info_unique">标签,执行S23;
S23:若存在<string name="contact_bind_info_unique">标签,则读取该标签的值,执行S24;若不存在则执行S25;
S24:判断标签的值中是否存在字符“|”,若不存在则执行S25;若存在则执行S26
S25:获取“DENGTA_META.xml”文件中<string name="IMEI_DENGTA">标签的值作为密钥,结束;
S26:判断“|”字符的左右两边是否存在“null”字符;若不存在“null”字符或“|”字符左边存在“null”字符,则取“appcenter_mobileinfo.xml”文件中<string name="imei">标签的值为密钥;若“|”字符右边存在“null”字符,则取“appcenter_mobileinfo.xml”文件中<string name="wifi_mac_address">标签的值为密钥。
S3:递归遍历QQ数据库中所有数据表的所有字段,若数据类型为TEXT或者BLOB则读取数据;
S4:通过解密密钥对数据库中的数据进行解密,解密算法为异或;
若数据类型为TEXT根据UTF-8字符的编码标识对编码字符数据进行异或操作,每个密钥字节对应一个UTF-8字符,到达密钥的最后一个字节后,又重密钥的第一个字节开始循环,异或完成后得到解密后的UTF-8编码字符串;
若数据类型为BLOB,则每一个密钥字符顺序对其加密数据进行异或,到达密钥的最后一个字节后,又重密钥的第一个字节开始循环,异或完成后得到解密后的字节数据。
S5:每个字段的数据解密完成后通过SQLite库数据写入接口对其进行回写完成数据库解密。
CN201610522155.0A 2016-07-01 2016-07-01 一种安卓系统qq聊天记录解密方法 Pending CN107563216A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610522155.0A CN107563216A (zh) 2016-07-01 2016-07-01 一种安卓系统qq聊天记录解密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610522155.0A CN107563216A (zh) 2016-07-01 2016-07-01 一种安卓系统qq聊天记录解密方法

Publications (1)

Publication Number Publication Date
CN107563216A true CN107563216A (zh) 2018-01-09

Family

ID=60970000

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610522155.0A Pending CN107563216A (zh) 2016-07-01 2016-07-01 一种安卓系统qq聊天记录解密方法

Country Status (1)

Country Link
CN (1) CN107563216A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111405550A (zh) * 2020-03-23 2020-07-10 深圳软牛科技有限公司 一种WhatsApp的key文件提取方法及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270516A (zh) * 2014-09-23 2015-01-07 中兴通讯股份有限公司 解密方法和移动终端
CN105678174A (zh) * 2015-12-31 2016-06-15 四川秘无痕信息安全技术有限责任公司 一种基于二进制解密微信加密数据的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270516A (zh) * 2014-09-23 2015-01-07 中兴通讯股份有限公司 解密方法和移动终端
CN105678174A (zh) * 2015-12-31 2016-06-15 四川秘无痕信息安全技术有限责任公司 一种基于二进制解密微信加密数据的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ONEZEROS: "QQ聊天记录存储规则及其加密读取", 《HTTPS://BLOG.CSDN.NET/ONEZEROS/ARTICLE/DETAILS/4996381》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111405550A (zh) * 2020-03-23 2020-07-10 深圳软牛科技有限公司 一种WhatsApp的key文件提取方法及设备
CN111405550B (zh) * 2020-03-23 2023-08-08 深圳软牛科技有限公司 一种WhatsApp的key文件提取方法及设备

Similar Documents

Publication Publication Date Title
CN103780622B (zh) 一种面向云存储的数据分类加密方法
US9158933B2 (en) Protection of encryption keys in a database
US8135948B2 (en) Method and system for transparently encrypting sensitive information
US8332655B2 (en) Method for order invariant correlated encrypting of data and SQL queries for maintaining data privacy and securely resolving customer defects
CN101634992B (zh) Ntfs文件系统下轻量级文件加密及其解密恢复方法
CN103106372A (zh) 用于Android系统的轻量级隐私数据加密方法及系统
RU2017131424A (ru) Защита данных с переводом
WO2017036547A1 (en) Method for providing encrypted data in a database and method for searching on encrypted data
CN113569269B (zh) 一种代码混淆的加密方法、装置、设备及可读介质
KR20140053898A (ko) 암호화된 데이터의 관리를 위한 시스템 및 방법
US20210357516A1 (en) Method for duplexing database
CN105138585B (zh) 数据库加密字段部分匹配查询方法及系统
JP5392439B2 (ja) 暗号化検索データベース装置、暗号化検索用データの追加削除方法および追加削除プログラム
CN103324671A (zh) 一种基于Webkit浏览器的信息存储管理方法及装置
CN108595971A (zh) 一种数据库自适应加密方法
CN106992851A (zh) 基于TrustZone的数据库文件口令加解密方法、装置及终端设备
CN106934299A (zh) 一种数据库加密系统和方法
CN104679816A (zh) 一种嵌入式系统下的sqlite数据库应用方法
CN107563215A (zh) 一种安卓系统微信聊天记录解密方法
CN103530581A (zh) 硬盘加密方法和操作系统
CN106778292A (zh) 一种Word加密文档的快速还原方法
CN102135944A (zh) 一种在移动通讯设备中安全存储数据的方法
CN107563216A (zh) 一种安卓系统qq聊天记录解密方法
CN103186746A (zh) 一种可执行文件的保护方法及系统
CN114756887A (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
CB02 Change of applicant information

Address after: 641000 Sichuan province Neijiang City Songshan Road No. 183

Applicant after: Sichuan Miwu Traceless Science and Technology Co., Ltd.

Address before: 641000 Sichuan province Neijiang City Songshan Road No. 183

Applicant before: SICHUAN MWH INFORMATION SAFETY TECHNOLOGY CO., LTD.

CB02 Change of applicant information
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180109

WD01 Invention patent application deemed withdrawn after publication