Android + JSON防范反编译?

时间:2011-05-27 15:06:44

标签: android json security obfuscation

我希望能够使用HTTPS和JSON安全地将数据从我的Android应用程序发送到我的服务器。

使用HTTPS我可以安全地防止嗅探,但不会反对反编译,所以我也会使用Proguard来进行混淆。

我的问题是JSON是一种发送数据的纯文本方法,熟练的反编译器将能够计算出发送和接收的内容。那么什么是发送这些数据的更好方法 - 如果我假设在某些时候有人会反编译APK或JAR(取决于我如何启动该程序)。

我可以混淆JSON

"x":{"xx":12345678}

但我再次认为,如果有人知道我试图发送时间码等,那只是时间问题。

3 个答案:

答案 0 :(得分:1)

无法阻止反编译。混淆使反编译的结果更难使用,但专用的黑帽仍然可以使用它。

答案 1 :(得分:1)

嗯......你做不到。抱歉。如果你能想出这个,音乐和电影业会让你成为英雄。

答案 2 :(得分:0)

我发现的最佳组合是DojoToolkit和高级模式下的Closure编译器。

高级模式下的关闭使得JavaScript代码几乎不可能进行逆向工程,即使在通过美化器之后也是如此。一旦您的JavaScript代码被混淆,超出任何认可和任何反向工程的可能性,您的HTML将不会泄露您的大部分秘密。

此链接用于在移动应用程序的高级模式下使用Dojo Toolkit和Closure Compiler:

http://dojo-toolkit.33424.n3.nabble.com/file/n2636749/Using_the_Dojo_Toolkit_with_the_Closure_Compiler.pdf?by-user=t

如果使用Closure Compiler,则可以使用JavaScript编写加密引擎,然后加密JSON数据。通过Closure Compiler提供的级别混淆,人们很难对您的代码进行反向工程以发现用于解密的密钥。