V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
twoyang
V2EX  ›  程序员

找回微信撤回的图片(原理分析、工具)

  •  
  •   twoyang · 2016-07-12 13:49:41 +08:00 · 8296 次点击
    这是一个创建于 2861 天前的主题,其中的信息可能已经有所发展或是发生改变。
    13 条回复    2016-07-14 17:48:33 +08:00
    TheLamb
        1
    TheLamb  
       2016-07-12 15:53:15 +08:00
    有点意思, lz 挺有专研意识的,以前我也考虑过这个问题,无奈自己不会写代码来解密
    chareice
        2
    chareice  
       2016-07-12 16:00:50 +08:00
    👍赞楼主的探索精神〜
    lawlietxxl
        3
    lawlietxxl  
       2016-07-12 16:18:53 +08:00
    看见 lz 是疼逊的,戳中笑点,这不是后院起火了,哈哈
    linKnowEasy
        4
    linKnowEasy  
       2016-07-12 16:19:03 +08:00
    想问下 Mac 和 iOS 微信怎么使用?
    lawlietxxl
        5
    lawlietxxl  
       2016-07-12 16:19:32 +08:00
    不过主要还是赞赞赞
    Ellison
        6
    Ellison  
       2016-07-12 16:27:14 +08:00
    发现我居然已经 Star 过了
    annielong
        7
    annielong  
       2016-07-12 17:31:36 +08:00
    有一些清理工具可以看到所有 图片,没有打开的公众号发的图片竟然都有,不知道是什么时候偷偷下载的,怪不得流量跑的快
    hitmanx
        8
    hitmanx  
       2016-07-13 10:38:13 +08:00
    赞 lz 的分析能力。看到这个地方,有个小疑问:

    '''
    其实,我们无需关心 magic 码的计算方式。因为,我们可以肯定的是,.dat 文件是图片,而对于 JPEG 的图片,其对应二进制的第一个字节是 0xFF 。

    所以,问题变成了,已知:.dat 文件对应二进制的第一个字节 ^ magic 码 = 0xFF ,求 magic 码。所以,问题变成了,已知:.dat 文件对应二进制的第一个字节 ^ magic 码 = 0xFF ,求 magic 码
    '''

    这儿不应该是 0xFF ^ magic number = first byte of .dat file?另外 XOR 0xFF 就是取反吧,用取反算不知道是不是还会快一些。
    ghostsf
        9
    ghostsf  
       2016-07-13 10:39:18 +08:00
    没空看 mark 下
    twoyang
        10
    twoyang  
    OP
       2016-07-13 16:32:38 +08:00
    @lawlietxxl 暴露了...
    twoyang
        11
    twoyang  
    OP
       2016-07-13 16:33:45 +08:00
    @Ellison 之前发过,但是后来又发现有瑕疵,于是才有了续集...
    twoyang
        12
    twoyang  
    OP
       2016-07-13 18:09:08 +08:00
    @hitmanx 已修改,谢谢~

    对于一个 200KB 左右的图片,分别使用取反和异或测试 10 次。
    取反耗时 0.028968716 ;异或,则耗时 0.030300784 。差不太多。

    python 的取反,好蛋疼啊: magic = ~(list(buf)[0]) & 0xff
    linKnowEasy
        13
    linKnowEasy  
       2016-07-14 17:48:33 +08:00
    感觉会有人有需求 https://github.com/imoldman/wechatNoRevoke Mac 端的方法
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2719 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 15:41 · PVG 23:41 · LAX 08:41 · JFK 11:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.