微信dat文件如何打开

微信dat文件如何打开

点点

2021-03-18 19:59 阅读 1314 喜欢 2 微信2

微信的dat 实际上是微信软件将聊天的图片加密后产生的文件。

正常的图片软件无法开,加密方式为异或加密,但是加密值每个人都不同,需要计算。

可以通过在线解码百度搜索【源代码设计笔记】直接查看dat文件。

原理:微信dat文件在微信进行图片存储的时候做了异或加密,然后将后缀修改为了dat格式。由于文件大小没有变化,可以很容易得到异或值,然后我们通过异或值,将文件进行字节码解码,就可以将文件还原成为图片了。

至此,微信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);
    })
}

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


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

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
微信语音是微信上的和好友说话的语音文件,由于微信规则设置,是不可以直接转发给别人的,因此很多想转发微信语音的人会很抓狂。那么微信语音可不可以转发呢?其实是可以的,只不过要多做一个步骤而已。
我们有的时候在清理手机上的内存时,会不小心把微信中的照片也一起清理掉了,那么微信已清理的照片怎么恢复回来,现在来看一下已清理的照片恢复到相册方法吧。
我们在使用微信的时候,会去看朋友圈或者小伙伴们在聊天框内发送的视频,语音,图片资料等,我们感觉好或者很有用的时候收藏了,可是后期再想看的时候找不到了。嘿嘿,小伙伴们有没有遇到过哪?
通过python 实现电脑版微信中图片转码(原.dat转成JPG或PNG)
亲爱的小伙伴们,你们有没有遇到过微信被永久封禁的遭遇?小编就遇到了。真是让人欲哭无泪啊。不过,别急,小编这就来分享一下我是如何成功解封的。
腾讯微信是一个很火的社交软件,就在微信中来聊天,一个人聊天很没有意思,这个时候就会选择建群,建过群之后想该群头像不知道怎么修改,现在就让小编带小伙伴们来看一下吧。
每年苹果发布会过后,应该都会有部分使用安卓手机的小伙伴转到iPhone的阵营里,手机中很多的资料都需要转移到新手机上,尤其是当下的微信聊天记录,珍贵的相片等,那当购买新iPhone后,如何将Android的资料转移到iOS上呢?相信小伙伴们也很好奇,不同系统也可以转移吗?现在小编就来教小伙伴们如果把Android的资料转移到iOS里,跟小编一起看看吧!
我们都知道手机微信里面的语音是无法转发的,而且微信的android版的语音文件采用amr格式,而iPhone版采用aud格式,这两种格式连播放器都无法播放!