微信dat文件如何打开

微信dat文件如何打开

点点

2021-03-18 19:59 阅读 1407 喜欢 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


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

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
微信是一款在线通讯平台,深受小伙伴们的喜爱。可是,也有部分小伙伴们使用时有一些小小的困扰,有的小伙伴不知道如何找到微信电脑版接收的图片。别着急哦,小编今天就教小伙伴们如何轻松搞定。
现在生活与工作中都离不得微信,微信中有很多的铃声,有得小伙伴喜欢,但不知道如何下载?微信里歌曲不支持下载当铃声,同时小编很遗憾的告诉小伙伴们,苹果手机也不支持修改系统声音。今天小编就带小伙伴们看一下如何的下载。
怎样一个一个的查看pc 端微信版的dat文件,有点慢就是。 后边有一个批量的。
这年头微信在手机里的地位越来越高,有些小伙伴能接受手机丢了,但前提是微信里保存的小视频和聊天记录必须留下…… 可是又能怎么办哪?小编来给小伙伴们科普一下啦!
手机微信中群聊是我们在微信使用中不可缺少的一个功能,并且就算好友之间不是微信好友关系也是可以聊天的,但是很多群聊都是不经过我们同意就拉我们进群的,我们也并没有保存到群聊功能中,所以有用户想要知道微信怎么查看自己所有的群聊,下面就让小编给小伙伴们介绍一下查看的具体方法。
微信作为一款广受欢迎的社交软件,语音功能是其重要的组成部分。有时候,我们可能会遇到需要转发微信语音的情况。那么,如何转发微信语音呢?
通讯软件现今有很多,微信是常用的,很多小伙伴们对其很多的功能都是一知半解,微信现在不仅是社交软件,更是支付软件,有些小伙伴想知道如何删除手机微信账单记录,接下来小编就给小伙伴介绍一下具体的操作步骤。
现在我们工作经常需要用到微信,如果你的工作需要和客户沟通,可能需要使用多个微信账号,但是一直切换账号也不是办法,而且还可能错过重要的消息。