gam2046
2022-03-16 08:25:37 +08:00
这个问题扩展一下,你会发现很多语言都不具备对抗破解的能力,从最近几年大热的 electron/.net core ,到老牌选手 Java/python 来看,几乎带有跨平台能力的开发语言被反编译都是接近源码级的。其中的例外选手也是有的,比如 Golang 是直接编译到 native code 。可人家直接编译到 native 的目的也并不是为了提高反编译难度,主要还是为了运行速度。
同样再看看大厂应用,Microsoft 、Google 、Adobe 等企业出品的应用,几乎也没有在产品上做什么技术手段对抗反编译,基本上编译出来是啥就是啥。
可以基本认为,语言的开发者(社区)以及多数开发人员都不太关心源码的保护。
现在的对抗反编译的手法几乎是 10 年前没什么区别。
1 、各种中间语言尽可能的编译成 native code
2 、实在编译不成 native code 就加混淆,降低可读性
3 、已经能编译成 native code 就再弄 OLLVM ,再混淆