我正在使用惊人的FPS,我必须将秘密密钥存储在Java代码中。但是,我恐怕有人会对我的apk进行解码并找到钥匙。我本人已经将APK分解了,找不到钥匙,但我不是VM专家。有帮助吗?

有帮助吗?

解决方案

您不能将加密密钥放入您的应用程序中,并期望其保密。只需要让一个坚定的程序员对其进行解码并找到钥匙,他们可以与世界分享。

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

  • 您的申请可以 加密 使用公共密钥的消息,只能使用私钥解密。
  • 或者,你可以 符号 使用私钥的消息,可以使用应用程序中的公共密钥进行身份验证。

其他提示

一个坚定的人将能够提取您的钥匙,而实际上并没有那么多。您可以尝试以某种方式使钥匙混淆(提高标准的确定需要),但是您不能阻止它们获得钥匙。

但是,根据您为什么需要存储秘密密钥的不同,您可以使用 非对称密钥密码学. 。您将能够存储可能仅限于加密(而不是解密)或身份验证目的的公共密钥,同时能够确保私钥安全。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top