我需要保护我的程序不被反汇编。第一次尝试是通过加密程序并在需要时解密其部分。也许在执行解密代码时再次加密。
请给我一个线索,如何创造这种防御方式。很明显没有这个任务很困难,但我没有找到很多资源。如果您有任何网址可以分享有关此问题的信息,请分享。
答案 0 :(得分:14)
这毫无意义。如果您没有硬件的控制和支持,则代码可以始终在可以读取解密指令的仿真器中运行。
保护数据而不是代码。
答案 1 :(得分:5)
这是错的:/。如果你加密/解密将要执行的每个函数,你的程序将具有......我不知道的速度。也许是一块石头?
如何完全防止拆卸没有好的解决方案。
答案 2 :(得分:3)
关于可执行代码的二进制级加密,请查看this article和this one。
除此之外,只需剥离调试符号并使用gcc
的{{1}}标志;字节码会或多或少地无法解码。
答案 3 :(得分:0)
你必须明确解密组件,对吗?这意味着你已经向攻击者提供了解锁盒子的钥匙,对吗?那么,你是通过这样做获得了什么呢?