注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

BCB-DG's Blog

...

 
 
 

日志

 
 

微信数据库  

2014-10-30 09:34:55|  分类: Android |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
//Wu, Yongkai

微信4.0开始对数据库进行了加密处理,所以提取的过程分为获取密钥,解密两个过程。

获取密钥

微信数据库加密是根据手机的设备串号和用户uin计算而来。

安卓版微信文件目录下有CompatibleInfo.cfgsystemInfo.cfg,两个文件是java的hashmap流,用以下代码可以提取。

import java.io.FileInputStream;
import java.io.ObjectInputStream;
import java.io.PrintStream;
import java.util.*;

public class TestFile
{
  public static void main(String[] arg)
  {
    FileInputStream sysFile = null;
    FileInputStream campatiFile = null;
    try {
      sysFile = new FileInputStream("./systemInfo.cfg");
      ObjectInputStream localObjectInputStream = new ObjectInputStream(sysFile);
      Map DL = (Map)localObjectInputStream.readObject();
      Integer meid=(Integer) DL.get(1);
      System.out.println("meid:   "+meid);
      campatiFile = new FileInputStream("./CompatibleInfo.cfg");
      ObjectInputStream localObjectInputStream2 = new ObjectInputStream(campatiFile);
      Map DL2 = (Map)localObjectInputStream2.readObject();
      String uin=(String) DL2.get(256);
      System.out.println("uin:    "+uin);
    }
    catch (Exception e)
    {
      e.printStackTrace();
    }
  }
}

解密
微信数据库EnMicroMsg.db的密码是md5(meid+uin)[0:7]。
打开
用sqlcipher可以打开。
  评论这张
 
阅读(1830)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017