为什么不能无损反编译?

 从人的思路到机器代码,最后到cpu可以执行的指令。每一层经历的都是一个从概括到实现的过程。

这也是工业的思路。上层来概括做什么,下层来决定怎么做。这也是人的欲望的思路,是或者说是人性中贪欲的思路。好了说的有点多。

从一个想法可以解释为怎么实现,但是给你一堆实现你能概括出思路却很困难,这个困难也是反编译之所以不能等效的原因。


这听起来有些匪夷所思,给我一台F16让我复制出来一台,不是比告诉我F16怎么飞让我自己去实验做出来要难的多吗?

这里面给出的一台F16似乎不能够作为给出低级指令或者机器代码的恰当的比喻。或者说,给出你每一个细胞的工作流程图,似乎也不能发现生命是怎样协调的,也很难找出生命的奥秘。


人类对于自然的探索,似乎是处于一种从怎么做到做什么的发现过程。但是同时也有反过程。发现鸟儿可以飞,蝴蝶可以飞,人们有了飞的概念。后来发现鸟儿是如何飞的,蝴蝶是如何飞的,我们只是知道他们不同,却难以实现。而我们却按照飞的指示制造出了自己的飞行方式。飞机,热气球,火箭等等。


反编译的意义在于拿来修改。如果指示运行的话,拥有二进制机器代码就足矣。如同人们研究基因工程的意义同样是在于按照自己的意愿修改。



你可能感兴趣的:(观点,网络安全)