Android存储密钥,反编译恐惧

时间:2010-01-03 04:29:03

标签: android dalvik decompiler

我正在使用惊人的FPS,我必须将密钥存储在java代码中。但是我担心有人会反编译我的apk并找到密钥。我自己反编译了apk并找不到密钥,但我不是VM专家。有什么帮助吗?

2 个答案:

答案 0 :(得分:8)

您无法将加密密钥放入您的应用程序中,并希望它仍然是一个秘密。只需要一位坚定的程序员对其进行反编译并找到密钥,他们就可以与世界分享。

非对称/公钥加密正是您想要的解决方案。创建公钥/私钥对,然后将公钥放入应用程序并自己保留私钥。然后你可以做两件事:

  • 您的应用程序可以使用公钥加密消息,只能使用私钥解密。
  • 或者,您可以使用私钥签署邮件,该私钥可以使用您应用程序中的公钥进行身份验证。

答案 1 :(得分:1)

一个足够坚定的个人将能够提取你的密钥,而且关于它的确没有那么多。您可以尝试以某种方式对密钥进行模糊处理(提高他们需要确定的标准),但是您无法阻止他们获取密钥。

但是,根据您需要存储密钥的原因,您可以使用Asymmetric Key Cryptography。您将能够存储可能仅限于加密(非解密)或身份验证目的的公钥,同时能够保护私钥的安全。