我将在应用程序中处理非常敏感的数据。按照我的定义,混淆并没有增加安全性,它只会在有限的时间内延迟解密器。 Proguard是否有可能做得如此出色以至于可以被称为增加安全性?

最敏感的是一些网络调用。很难嗅出密码,因为我们将在两侧生成密码并通过时间戳检查其有效性。问题在于该应用程序可能会被反向工程,并且可能会利用生成算法。

无法将算法本地保存在文件中,因为使用 Root 电话,破解者可能会检索到该算法。从服务器下载算法无效,因为此处存在相同的问题,如果破解者对应用进行逆向工程,他/她将能够看到算法的来源。

任何有关如何进行的意见,我们将不胜感激!

编辑

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

最佳答案

通常,您可以使 cookies 的生活更艰难。您越努力,将剩下的越少。特别是在经济激励措施有限的情况下。

您的代码混淆选项是:

  • 使用proguard可以很好地完成工作,当然不是很完美,但是
  • 很好
  • 使用DexGuard,这会使逆向工程更加困难,例如
    通过加密字符串,或检测篡改
  • 的代码
  • 用C编写关键部分

  • 不管代码混淆如何,都使您的网络协议(protocol)也变得一团糟:加密和签名消息,确保消息不能重复(通过使用时间或顺序),并对客户端进行身份验证

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

    09-26 01:00