System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于安卓加密微信数据库的聊天记录提取和生成方法技术_技高网

一种基于安卓加密微信数据库的聊天记录提取和生成方法技术

技术编号:41287608 阅读:8 留言:0更新日期:2024-05-11 09:36
本发明专利技术公开了一种基于安卓加密微信数据库的聊天记录提取和生成方法,包括数据库秘钥生成模块、联系人聊天内容导出模块和聊天界面生成模块。所述的聊天记录生成方法,用于在无法正常打开安卓手机微信软件的情况下,不知道登录密码的情况下,生成该微信账号与指定昵称用户的聊天消息界面,对于取证人员获取和恢复当事人微信聊天记录,挖掘案件线索,具有重要作用。数据库秘钥生成模块用于提取微信文件中包含的用于加密的手机IMEI号和微信用户的UIN码,进而生成数据库解密秘钥。联系人聊天内容导出模块用于提取自己和对方的微信号,进而从消息数据表中筛选出和对方的聊天记录。聊天界面生成模块用于将导出的聊天记录构建出可视化的聊天界面。

【技术实现步骤摘要】

本专利技术涉及一种基于安卓加密微信数据库的聊天记录提取和生成方法,属于信息安全。


技术介绍

1、目前,安卓端的微信数据提取普遍存在于信息安全工作中,如何在不知道微信登录密码的前提下,获取其中与特定人员的聊天消内容,将对电子数据取证提供极大的便利。且目前获取安卓系统的root权限变得极为困难,想要在没有root权限的情况下,提取微信聊天内容,给取证工作带来极大的挑战。因此,在没有获取安卓系统root权限,不知道微信登录密码的前提下,获取与特定人员的微信聊天记录,成为取证工作迫在眉睫的需求。


技术实现思路

1、本专利技术针对上述需求,提出一种基于安卓加密微信数据库的聊天记录提取和生成方法,该方法可以在不获取安卓系统root权限的前提下,计算出微信加密数据库enmicromsg.db的解密秘钥,从该数据库中提取出和特定人员的聊天记录,根据不同的消息类型,结合相关图片,文件,表情包等数据,还原出微信聊天界面。

2、本专利技术解决其技术问题所采用的技术方案是:一种基于安卓加密微信数据库的聊天记录提取和生成方法,该方法包括数据库秘钥生成模块、联系人聊天内容导出模块、聊天界面生成模块。数据库秘钥生成模块用于提取微信文件中包含的用于加密的手机imei号和微信用户的uin码,进而生成数据库enmicromsg.db的解密秘钥。联系人聊天内容导出模块用于提取自己和对方的微信号,进而从消息数据表中筛选出和导出对方的聊天记录。聊天界面生成模块用于将导出的聊天记录构建出可视化的聊天界面,包括显示表情包、图片、视频和文件、分享链接等消息,提供直观的视觉效果。

3、进一步地,本专利技术数据库秘钥生成模块包括:(1)使用手机备份功能将微信数据全部备份到pc端。(2)从备份文件中提取手机的imei号。(3)从备份文件中提取微信用户的uin号。(4)将imei号和uin号拼接,使用md5算法对拼接结果进行加密,取加密结果的前七位,得到微信数据库enmicromsg.db的解密密钥。

4、进一步地,本专利技术联系人聊天内容导出模块包括:(1)从联系人表rcontact中获取特定昵称的微信号。(2)从userinfo表中获取自己的微信号。(3)通过对方的微信号从message表中筛选出所有和对方的聊天记录内容并导出至文件中。(4)通过微信号获取自己和对方的微信头像。

5、进一步地,本专利技术聊天界面生成模块包括:根据聊天内容中不同的消息类型从对应的文件夹中寻找具体内容,生成该内容对应的显示效果,具体的消息类型有:文字、图片、表情包、文件、撤回消息、回复信息、拍一拍信息、视频信息、分享链接等。

6、本专利技术所提到的一种基于安卓加密微信数据库的聊天记录提取和生成方法,该方法包括以下步骤:

7、步骤1:使用手机备份功能将微信数据全部备份到pc端,具体视不同品牌手机操作略有不同;

8、步骤2:提取备份文件夹中的storage\com.tencent.mm\micromsg\beacontbs_dengta_meta.xml中的imei_dengta键的值,该值为手机imei号;

9、步骤3:提取备份文件夹中的storage\com.tencent.mm\shared_prefs\auth_info_key_prefs.xml中的map标签的_auth_uin键的值,该值为微信用户的uin号,若该值为多个,说明该安卓端曾经登录过多个微信账号,可以根据不同的uin实现对多个不同账号内容的提取;

10、步骤4:将imei号和uin号拼接,使用md5算法对拼接结果进行加密,取加密结果的前七位,得到微信数据库enmicromsg.db的解密密钥;

11、步骤5:在rcontact表中使用对方的微信昵称找到username字段对应的系统默认分配的微信号,以“wxid_”开头的一串字符串;从userinfo表中获取自己的微信号,同样是系统默认分配的微信号,以“wxid_”开头的一串字符串;

12、步骤6:根据对方的微信号,从message表中筛选出所有和对方的聊天记录内容并导出至文件中;

13、步骤7:将步骤5得到的两个微信号分别进行md5计算,取结果的前1、2个字符和前3、4个字符,在与enmicromsg.db数据库同目录下的avatar文件夹中,先打开前1、2个字符命名的文件夹,再在该文件夹中打开前3、4个字符命名的文件夹,在该文件夹中寻找对应的微信头像图片,该图片名以“user_”字符串和md5计算结果拼接而成,将该图片复制到显示界面;

14、步骤8:从导出的聊天记录文件中判断消息类型,根据不同的消息类型从对应的文件夹中寻找具体内容,生成该内容对应的显示结果,具体的消息类型有:文字、图片、表情包、文件、撤回消息、回复信息、拍一拍信息、视频信息、分享链接等;

15、进一步地,本专利技术所述步骤8中根据不同消息类型从对应文件夹中寻找具体内容,包括以下步骤:

16、步骤8-1:先判断消息的类型,在导出的聊天记录表message中,type字段为一串数字,表示消息类型,content字段为xml格式,可从中提取消息内容等各种信息。字段issend==1表示由自己发送给对方,字段issend==0表示对方发送给自己。字段createtime为消息发送的时间戳,需要转换为普通格式的时间,字段imgpath表示图片或表情的文件名,字段status表示消息发送的状态,status==5表示消息未发出,其他表示消息已发送。

17、步骤8-2:根据不同类型的消息,对应不同的显示方式;

18、字段type==1表示文字,则直接将文字内容显示在界面上;

19、字段type==3表示图片,则分别获取该图片文件名的前1、2个字符和前3、4个字符,在与enmicromsg.db数据库同目录下的image2文件夹中,先打开由该文件名前1、2个字符命名的文件夹,再在该文件夹中打开由该文件名前3、4个字符命名的文件夹,在该文件夹中寻找对应的图片内容,将该图片复制到显示界面;

20、字段type=47表示表情包,则分别获取该表情文件名的前1、2个字符和前3、4个字符,在与enmicromsg.db数据库同目录下的emoji文件夹中,先打开由该文件名前1、2个字符命名的文件夹,再在该文件夹中打开由该文件名前3、4个字符命名的文件夹,在该文件夹中寻找对应的图片内容,将该图片复制到显示界面;

21、字段type==1090519089或49表示文件,在电脑端备份文件夹下的用户下载文件夹\android\data\com.tencent.mm\micromsg\download\或在聊天附件文件夹\android\data\com.tencent.mm\micromsg\{32位字符串}\attachment\中,根据content字段的<title>标签表示的文件名寻找到该文件,将该文件本文档来自技高网...

【技术保护点】

1.一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述方法包括数据库秘钥生成模块、联系人聊天内容导出模块和聊天界面生成模块;

2.根据权利要求1所述的一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述的数据库秘钥生成模块包括:(1)使用手机备份功能将微信数据全部备份到PC端,(2)提取备份文件夹中的storage\com.tencent.mm\MicroMsg\beacontbs_DENGTA_META.xml中的IMEI_DENGTA键的值,该值为手机IMEI号,(3)提取备份文件夹中的storage\com.tencent.mm\shared_prefs\auth_info_key_prefs.xml中的map标签的_auth_uin键的值,该值为微信用户的UIN号,若该值为多个,说明该安卓端曾经登录过多个微信账号,可以根据不同的UIN可以实现对多个不同账号内容的提取,(4)将IMEI号和UIN号拼接,使用MD5算法对拼接结果进行加密,取加密结果的前七位,得到微信数据库EnMicroMsg.db的解密密钥。

3.根据权利要求1所述的一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述的联系人聊天内容导出模块包括:(1)从联系人表rcontact中获取特定昵称的微信号,(2)从userinfo表中获取自己的微信号,(3)通过对方的微信号从message表中筛选出所有和对方的聊天记录内容并导出至文件中,(4)通过微信号获取自己和对方的微信头像。

4.根据权利要求1所述的一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述的聊天界面生成模块包括:从聊天记录文件中判断消息类型,根据不同的消息类型从对应的文件夹中寻找具体内容,生成该内容对应的显示效果,具体的消息类型有:文字、图片、表情包、文件、撤回消息、回复信息、拍一拍信息、视频信息、分享链接。

5.一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述方法包括以下步骤:

6.根据权利要求5所述的一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述的步骤8中从导出的聊天记录文件中判断消息类型,根据不同的消息类型生成该内容对应的显示结果,具体包括:

...

【技术特征摘要】

1.一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述方法包括数据库秘钥生成模块、联系人聊天内容导出模块和聊天界面生成模块;

2.根据权利要求1所述的一种基于安卓加密微信数据库的聊天记录提取和生成方法,其特征在于:所述的数据库秘钥生成模块包括:(1)使用手机备份功能将微信数据全部备份到pc端,(2)提取备份文件夹中的storage\com.tencent.mm\micromsg\beacontbs_dengta_meta.xml中的imei_dengta键的值,该值为手机imei号,(3)提取备份文件夹中的storage\com.tencent.mm\shared_prefs\auth_info_key_prefs.xml中的map标签的_auth_uin键的值,该值为微信用户的uin号,若该值为多个,说明该安卓端曾经登录过多个微信账号,可以根据不同的uin可以实现对多个不同账号内容的提取,(4)将imei号和uin号拼接,使用md5算法对拼接结果进行加密,取加密结果的前七位,得到微信数据库enmicromsg.db的解密密钥。

3....

【专利技术属性】
技术研发人员:沙乐天胡春涛夏玲玲
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1