zoukankan      html  css  js  c++  java
  • 关于逆向360相关的一点感想

    前两天,在忙一个东西,逆Win10设置默认浏览器的一个算法,

    这个算法是设置Win10操作系统最新版本的默认浏览器,所以肯定是微软自己的算法,360要么有源码,要么逆向出来的。

    因为,涉及到一些不该说的东西,所以我就不贴代码了,微软的那个算法应该是叫CS64吧,应该不是公开的,管他呢,反正我就这么叫了。

    首先,其实我是照着360的代码逆的,但是真的很可怕,360的代码真的很烂,

    不要说什么保护代码,什么手动加密阿什么的,代码写得烂就是写得烂,从编译器编出来的结果就看得出来,就是写得烂,

    360的代码,我逆了6套版本,最后找到了3个公式,来解决了算法的问题,

    但是还是很烂,有很多多余的东西,乱七八糟多余的分支,虽然和微软的代码结构相同,但是明显代码就更烂。

    然后我看了微软的代码。。。超级简洁,

    用微软的代码,我一次就逆出了整个逻辑,优化到了2个公式。

    哎,真的很不一样的。

    前面我猜测了,要么360有源码,要么就是逆向出来的。

    如果360有源码的话,勉强说得过去,毕竟整体代码结构相同,只不过编译出来的汇编代码不完全一样,

    但是我更怀疑,360那边也是逆出来的,他们逆出来之后,根本就没有去考虑算法内部的实现细节,也没有考虑算法各部分的用途,

    结果一段明显没有用的代码,逻辑上,和上下文中,以及各个功能部分都能保证的一块没有用的代码,仍然冠冕堂皇地站在360的代码中。

    有心人,自己去逆那个代码吧,具体是做什么的,具体叫什么,我都说清楚了,只是没贴代码而已。

  • 相关阅读:
    UPNP报文示例
    ceph旧版客户端挂载新版ceph报错
    VUE——配置本地运行指定不同环境
    springBoot——Web开发简介【七】
    C++ 浮点数的存储与精度
    端口复用与惊群效应
    MySQL5.5读写分离之mysql-proxy
    Mysql读写分离--mysql-proxy
    mysql主从之keepalive+MySQL高可用
    如何在CentOS 7上安装Htop
  • 原文地址:https://www.cnblogs.com/suanguade/p/8655229.html
Copyright © 2011-2022 走看看