1 前言

寻找微信撤回的图片是不少人一直在寻找的方法

但苦于在网上一直找不到结果

因此本文提出了一种可以找到微信撤回图片的方法。

区别于网上其他的不可用代码,本文能成功恢复!

2 原理

之前的说法是,工程师并没有真正把撤回的图片删除,而是加密后藏起来了。其实这样说并不严谨,经过后续测试,发现PC端的确如此,而手机端(Android)撤回的图片是有删除的,但是删除的不干净。

2.1 PC端

微信所有接收到的图片都储在:

C:\Users\你的用户名\Documents\WeChat Files\wxid_你的微信ID\FileStorage\Image\日期

里面有一堆以.dat为后缀的文件,他们大小不一,都经过了加密。而加密的方法便是对字节逐一解密。

加密后的字节 = 原始字节 ^ 0x51。为了方便,我们把0x51称作“magic码”。

其中,magic码不一定是0x51,有的机器是0x50。经过一些测试,结论是,magic码与微信号有关,即不同的微信号在同一台机器可能得到不同的magic码,而同一个微信号在不同的机器上得到了相同的magic码。因此,magic码是由微信号或者微信ID计算得来的。

其次,.dat文件是图片,而对于JPEG的图片,其对应二进制的第一个字节是0xFF。

根据此原理,我们使用以下算法进行解密:.dat文件对应二进制的第一个字节 = 0xFF ^ magic码,求magic码。

我们已经知道,如果C=AB,则AC=(AA)B,而AA=0,所以AC=B,即B=A^C。

magic码 = 0xFF ^ 已知.dat文件对应二进制的第一个字节。

3 得到最终的复原方法:

3.1 调用我们写的恢复函数:

3.2 源文件:

3.3 恢复文件:

4 附上源码:

https://download.csdn.net/download/weixin_39589455/85300198

【日常】如何将微信中对方所撤回的消息恢复?——电脑PC端微信教程:附源码相关推荐

  1. 2023微信社区小程序+APP+后台,附带超详细完整搭建教程【源码+教程】

    2023微信社区小程序+APP+后台,附带超详细完整搭建教程[源码+教程] 微信授权登陆正常,小程序和APP带后台 手机号登陆正常,发帖,建圈子.发活动. 微信小程序是一种轻量级的应用程序,可以在微信 ...

  2. java中batch基础_详解Spring batch 入门学习教程(附源码)

    详解Spring batch 入门学习教程(附源码) 发布时间:2020-09-08 00:28:40 来源:脚本之家 阅读:99 作者:achuo Spring batch 是一个开源的批处理框架. ...

  3. 电脑PC端微信提示:你的微信崩溃次数较多,建议使用最新版本

    电脑PC端微信提示:你的微信崩溃次数较多,建议使用最新版本 1.报错截图如下: 2. 打开这个微信的安装路径,设置微信属性--兼容性--勾选以兼容模式运行这个程序 ,选择Windows XP (Ser ...

  4. 微信小程序UI自动化实践:python+minium+PO模式(超详细教程附源码供下载)

    文章目录 前言 一.minium介绍 二.安装环境 1. 安装minium doc 2. 安装minium 3. 启动小程序 三.准备知识 1. 启动 2. 配置 3. 命令行运行 4. 元素定位 5 ...

  5. 完美电脑PC端微信多开实现及源码

    引用链接:http://www.ppsbbs.tech/?thread-22.htm 已更新,支持最新版本的微信版本 微信多开实现有很多种方法: 1.IOS端微信都开,需越狱 2.Android端微信 ...

  6. ssm基于微信小程序的外卖点餐系统的设计与实现毕业设计-附源码211704

    摘要 立足于当下餐饮行业现有的点餐模式,分析传统APP点餐的运作流程,结合微信小程序的特点设计新型的外卖点餐系统.近几年,人们生活水平日益提升,但工作强度和压力不断增强,尤其是对于上班族而言,到餐厅吃 ...

  7. 微信小程序 推送模板教程 附源码

    无聊的时候 玩一下小功能踩踩坑  首先模板推送 需要准备一些材料 准备材料:1)公众号|小程序,添加选择的模板消息,2)在设置>开发设置页面,开通消息模板功能:如: 如果还没模板素材的 请新建一 ...

  8. 【微信小程序】带你做一个公众号留言系统(附源码)

    公众号留言小程序正式开源,文章底部有源码获取方式. 我当时就用微信小程序做了一个留言助手,用了大约一个月左右的时间,留言系统的基本功能包括留言.点赞.筛选.置顶.删除.关联多个公众号等,只需要把小程序 ...

  9. Android Studio App开发之网络通信中使用POST方式调用HTTP接口实现应用更新功能(附源码 超详细必看)

    运行有问题或需要源码请点赞关注收藏后评论区留言~~~ 一.POST方式调用HTTP接口 POST方式把接口地址与请求报文分开,允许使用自定义的报文格式,由此扩大了该方式的应用场景.POST请求与GET ...

最新文章

  1. 初学者怎么学单片机,嵌入式单片机培训机构有用吗?
  2. 沙市一中2021年高考成绩查询,2021年荆州高考状元名单公布,荆州文理科状元是谁多少分...
  3. 客户/服务器模型:编程思想
  4. TransactionTemplate和@Transactional注解的区别
  5. java stream中Collectors的用法
  6. python3(十)pickle库
  7. linux下启动tomcat,Cannot find setclasspath.sh
  8. SQL-用JOIN连接多个表
  9. 水印相机定位不准确怎么办_选好镜头 选好3D四轮定位仪
  10. Unsupervised Learning | 对比学习——13篇论文综述
  11. 如何利用家谱制作软件快速修谱录入
  12. realsenseD400系列使用realense-ros出现“symbol lookup error ... undefined symbol: _ZN2cv3M “解决方法(这个问题在我这里终结)
  13. OAuth2.0公钥私钥授权技术
  14. 【Ubuntu】检测内存并压力测试
  15. Spring Boot+Vue+阿里云OOS实现图片上传
  16. 图片分析——现代家居风水学[图文]居家必然之奇术
  17. Java中Switch选择语句的用法
  18. 进入外包公司之后…………
  19. 《炬丰科技-半导体工艺》IC制造化学清洗过程中硅上重金属污染的表面光电压监测
  20. sencha touch的pinch zoom控件

热门文章

  1. 【C++】头文件 bits/stdc++.h 是啥?
  2. 强化学习笔记(一)马尔可夫决策过程
  3. 赢得值系列1:赢得值管理的历史
  4. 软件开发领域,英文function翻译为函数并不准确
  5. Bilibili Mini 客户端
  6. 2843 拯救炜哥 (bfs)
  7. web3.0 会是下一代互联网的风口么?
  8. CVPR2021中的事件相机研究
  9. 唐骏在大连理工演讲两次的经典内容
  10. 企业招聘新方式—远程面试