【发布时间】:2012-10-25 22:44:55
【问题描述】:
我知道混淆,但它所做的只是让代码更难理解。它并没有真正加密代码。有没有办法加密Android代码?或者有什么办法可以让反编译的代码更加不可恢复?
我问这个问题是为了知道我正在寻找的东西是否可能。现在,我的想法是不可能加密代码,因为如果我们加密它,Dalvik 也将无法理解代码并运行它。但我不太确定。有可能我什么都不知道。
请发表您对此有何看法或有什么建议?另外,请考虑一个金融应用程序,其中可以访问人类可读的代码意味着能够理解后端正在进行的财务流程的流程。谢谢!
【问题讨论】:
-
“请发表您对此有何看法” 我认为这很愚蠢。 1)没有人想窃取你的代码。 2)如果应用程序。事实证明它是一个“杀手级应用程序”。如果你让一组人来描述输入和输出,然后由一组程序员来编程,它通常会成为一个更好的克隆。 -- 它更便宜、更好且合法。
-
@AndrewThompson:我不担心有人窃取代码。我问上面的问题是因为我担心其他人可以通过阅读代码获得哪些敏感信息。
-
@Arci 总是存在有人对您的代码进行逆向工程并了解其工作原理的风险。从代码将被反编译和研究的假设开始,并尽最大努力设计能够保护其用户及其数据的软件无论如何。如果一个系统是安全的,那么它的设计应该可以在不损害系统或其用户的情况下公开。
-
“其他人可以通过阅读代码获得哪些敏感信息。” 全部。二进制文件必须在某个阶段被解密,然后敏感信息就会被盗。
-
@acj:感谢您的回复! :) 我同意你的观点,最终这一切都取决于系统。但是是否可以在 Android 上加密代码?或者混淆真的是我能做的最好的保护我的代码不被理解的方法吗?
标签: java android security encryption obfuscation