逆向工程的安全性如何?

Sim*_*all 11 security passwords networking android proguard

我将在应用程序中处理非常敏感的数据.根据我的定义进行模糊处理不会增加安全性,只会在有限时间内延迟破解者.Proguard是否有可能做到这一点,它可能被称为增加安全性?

最敏感的是一些网络呼叫.嗅探密码很难,因为我们会在双方生成密码,并通过时间戳检查它的有效性.问题是app可能是逆向工程的,并且可以利用生成算法.

不可能将算法本地保存在文件中,因为使用root电话,破解者可能能够检索它.从服务器下载算法不起作用,因为这里同样的问题适用,如果破解者对应用程序进行逆向工程,他/她将能够看到算法的来源.

任何有关如何进行的输入非常感谢!

编辑

我想要保护的是生成算法,因此破解者可能不会向我们的服务器发送大量数据.

yoa*_*oah 13

一般来说,你可以让破解者的生活更加艰难.你做得越难,剩下的就越少.特别是如果财务激励有限.

您的代码混淆选项是:

  • 使用proguard,它做得很好,当然不完美,但很好
  • 使用DexGuard,可以使逆向工程更加困难,例如加密字符串或检测代码篡改
  • 用C写出关键部分

无论代码混淆,使您的网络协议也难以解决:加密和签名消息,确保消息不能重复(通过使用时间或序列),并验证客户端

不要在磁盘上保存任何敏感的明文.

  • 很好的一点.我真的很喜欢"用C写出关键部分". (3认同)
  • 为什么在C中编写关键部分是一个好主意? (3认同)