NDK是减少逆向工程的替代方法吗?
作者:互联网
我已经放弃尝试让Proguard在Eclipse或Android Studio上工作.该文档是奥术,无论我尝试什么,Proguard都会模糊apk打击.另外,有关Proguard的问题在此论坛上并没有引起太多关注.
标准的Android apk文件旨在几乎邀请进行逆向工程,我正在寻找一些保护代码的方法.并非我所有的代码只是一些方法.
在开始编写Android应用程序之前,我用C和C#编写了应用程序,并且我对这两种语言都很熟悉,实际上我更喜欢这两种语言,所以我最近一直在阅读有关NDK的文章.
NDK当然是关于速度的,但是我想知道它是否还能帮助保护我的代码免受逆向工程和黑客的检查.我知道它是“已编译”的代码,因此我认为源代码将不可见.
我在叫正确的树吗?
谢谢,
院长
解决方法:
这取决于您要寻找的保护类型.如果那是一种革命性的算法,可以让您比现在更快地完成一些非常受欢迎的任务,那么无论您如何混淆代码,都将对其进行反向工程.您需要专利保护.如果您想隐藏一些不友好的行为(例如监视用户),则会发现它.所以不要这样做.如果要保护某些客户端-服务器通信协议,则可能会在其他位置容易受到攻击.
但是在某些情况下,使用C确实有帮助.分发整体式共享库“黑匣子”可能比处理Java API更容易.我认为混淆处理对您作为库出售的代码无效.
当我们销售一个巨大的通信SDK时,我们采用了这种方法,并且我们所有的Java代码都只向客户开放(部分旨在更改/自定义,但是某些类在标题中带有警告:“请不要修改此代码.类中,如果您将其弄乱,则很有可能无法正常使用该产品”.
标签:android-ndk,proguard,android,reverse-engineering 来源: https://codeday.me/bug/20191028/1949880.html