微信dat文件如何打开

微信dat文件如何打开

点点

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


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

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
现在手机与电脑非常普遍,都有微信软件,有很多的功能,很多小伙伴们都搞不清楚,很多小伙伴都有在电脑上使用微信,其中的新消息通知声音如何才能打开或关闭呢?方法很简单,下面小编就就来为小伙伴们介绍。
微信是我们常用的软件,很多的小伙伴私信小编,问小编,换了新电脑后如何把旧电脑的微信数据迁移到新电脑上,其实方法是很多的,今天讲个简单点的,希望可以帮到小伙伴们,那就跟小编来看一下吧!
最近后台很多的小伙伴在咨询如何隐藏微信好友?微信聊天记录能不能隐藏呢?今天本文给小伙伴们讲解一下如何通过微信设置来隐藏好友和聊天记录。
在微信软件中有一个拍一拍功能,我们只要在聊天页面中双击一下头像即可,那么就有小伙伴好奇了微信不小心拍了拍怎么撤回呢?
电脑端微信,相信很多小伙伴都有在使用,其中的小视频如何才能导出呢?导出后又该如何保存呢?方法很简单,下面小编就来为小伙伴们介绍。
很多的小伙伴私信小编说是微信账单删除后如何可以再恢复,移动支付普及的今天,微信账单流水的取证在有些案子中是至关重要的。今天的文章就给小伙伴们讲一个微信里查询账单流水的小技巧。
微信现在成了我们日常中的帮手,而我们的聊天记录越来越多,那就需要备份,每个小伙伴的备份方法都不一样,但是原理都是一样的,保存到电脑后,需要重装系统时我们应该怎么处理?跟小编来看一下吧!
微信由于聊天记录数据多,很多时候工作、生活中会涉及大量的聊天记录、照片、视频等,为此我们平常会定期对聊天记录进行彻底删除,以减少微信内容对手机内存的占用。可是由于彻底删除时操作失误,会把不该删除的重要聊天记录删除了,那微信聊天记录删了怎么恢复找回来呢?