微信加密图片如何查看

微信加密图片如何查看

点点

2021-05-15 10:21 阅读 1511 喜欢 3

软件说明

PC微信会下载图片到本地存储,会为.dat后缀的文件进行加密,保护文件。

通过异或的方法对文件进行简单的加解密的方法很常规的做法。微信将收取到的文件,对每个字节进行异或加密,保存为dat文件。

其中异或的值为反推出来的,需要知道文件类型,才能确定文件的头文件特征,才能反推出异或值,所以这个工具是写死的文件类型为jpg的 ,头文件特征为 FFD8FFE1

异或值=FF^加密文件第一个字节。

异或值的计算方法:

1、选择dat文件所在目录 2、输入异或值(自行百度异或值计算方法) 3、解密图片会出现在所选择目录 4、如果出现“图片异或值错误”,请重新计算异或值

使用方法

打开 WeChatImageDatEncryption.exe ,输入图片的位置按回车即可。

如果你没有修改过位置,原来的位置就是在 %USERPROFILE%\Documents\WeChat Files\你的微信名\data

如果确实不知道在哪里,可以打开微信设置,查看通用设置>打开文件夹,在进入到 Data 目录即可。

解密出来的文件会放在 WeChatImageDatEncryption.exe 同级目录的 Data 文件夹里。

原理:

先确定原本的文件类型,就能确定文件的头文件特征,然后查看dat文件的头文件特征,就能反推出异或值。

源码说明

每个账号或者客户端对那个异或值可能是不一样的,所以不同版本的微信可能就会失效,但是你知道原理之后,就可以自己计算异或值啦~我把源码放出来,你们也可以参考。

代码

    //修改图片
   //修改图片
   let fs = require('fs');
   let path = require('path');
  let async = require('async');

 //值是多少自己算。
let base = 0xFF;
let next = 0xD8;
let gifA = 0x47;
let gifB = 0x49;
let pngA = 0x89;
let pngB = 0x50;

let scanDir = 'd:/ttt/load/';
let imgDir = 'd:/ttt/load1/';

let files = fs.readdirSync(scanDir);
var arr = [];
 files.forEach(function(item){
 if(path.extname(item) == '.dat'){
 arr.push(item);
}
})
async.mapLimit(arr,50,function(item,cb){
convert(item,cb);
},function(){
process.exit(0);
})
//convert
function convert(item,cb){
let absPath =path.join(scanDir,item);
let imgPath = path.join(imgDir,item+'.jpg');
fs.readFile(absPath,(err,content)=>{
    if(err){
        console.log(err);
        cb(err);
    }
    let firstV = content[0],
        nextV = content[1],
        jT = firstV ^ base,
        jB = nextV ^ next,
        gT = firstV ^ gifA,
        gB = nextV ^ gifB,
        pT = firstV ^ pngA,
        pB = nextV ^ pngB;
    var v = firstV ^ base;
    if(jT == jB){
        v = jT;
    }else if(gT == gB){
        v = gT;
    }else if(pT == pB){
        v = pT;
    }

    let bb = content.map(br=>{
        return br ^ v
    })
    fs.writeFileSync(imgPath,bb)
    cb(null);
})
}

如果不会代码,又有需要的话.

1.可以到百度搜一下“源代码设计笔记”-->"DEMO"-->"在线解码"——>"输入序列号"-->"下载"——>"安装"-->"完成”。

2.直接进入地址:sdxlp.cn/tool/wechatdat 按1的步骤来一遍就可以了。

希望这篇文章可以帮助有需要的有缘人,写文不易,如果好用回来给个赞啊!

转载请注明出处: http://sdxlp.cn/article/weixin003.html


如果对你有用的话,请赏给作者一个馒头吧 ...或帮点下页面底部的广告,感谢!!

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
通过python 实现电脑版微信中图片转码(原.dat转成JPG或PNG)
特别是当你换新手机的时候,那心里那叫一个纠结啊,最担心的就是旧手机上的微信聊天记录怎么办?那里面可都是宝贵的回忆,重要的信息,岂能说丢就丢?
众所周知,微信聊天记录里面的图片信息,如果不及时查看的话就会被清理,之后就会显示「图片已过期」,无法查看原图。一般来说,微信图片超过3天未及时查看,就可能会被系统判定为过期.
最近微信是一个很火的社交软件,可以用来聊天,也可以用来支付,转账等;再次登陆微信的时候发现自动退出登录了是什么原因呢?
 手机微信听语音时黑屏,是由于手机上方有距离感应器,当通话,屏幕上方被遮挡时,屏幕就会黑屏,没有遮挡时就会点亮,这是为了省电与防止通话时候误操作,那怎么取消微信听语音黑屏呢?感兴趣的小伙伴们,就快跟着小编一起来看看吧。
现在微信成为了我们常用的社交与支付软件,在使用的微信软件是很多小伙伴们在使用的社交聊天软件,在使用的时候就有小伙伴比较好奇了微信支付密码怎么修改呢?
现在微信已经渗透进了我们的工作与生活中,我们在使用时会出现这样那样的问题,就需要我们学着去解决,非常头疼麻烦,很多小伙伴的微信说是被限制使用了,小编就拿了个微信号试一下,找到几个方法,小伙伴们可以有时间的试一下。
在我们生活中会有分享好多自己喜欢的微信照片,当我们在查找微信图片的时候,最不想听到的就是“图片已被清理”的提示语了。