gpt4 book ai didi

java - Android 应用程序中 key 的反黑客解决方案?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:26:52 24 4
gpt4 key购买 nike

我需要在应用程序内部存储一个字符串私钥。它的值永远不会改变,并在代码中手动设置。我显然不能将它存储为 String,因为逆向工程方法会揭示它,即使应用了混淆。

你建议我如何保护这个私钥?

我想把它保存到数据库中,但数据库也可以从手机中取出。

附言。这个键是一个特殊的参数,所以是一个重要的方法,它对任何人来说都是未知的,这一点至关重要!它不是解密 key 。该字符串将用作加密方法(md5 或类似方法)的参数,然后将结果发送到我们的 Internet 服务。

编辑

抱歉,让事情变得如此复杂。我以为我可以用尽可能少的信息得到答案。

此应用程序将允许用户将一些文本发送到 Internet 服务,然后该服务将该文本发布到网站。我们需要确保文本是通过 Android 手机发送的,因为任何网络机器人脚本都可以模仿 Android 手机并发布垃圾邮件。由于类似验证码的方法在手机上不受欢迎,因此将有一个 key 将通过 md5(以及其他一些东西)生成哈希码。此散列将被发送到 Internet 服务。互联网服务会使用相同的 key 得到一个 md5 结果,然后比较它,看看发件人是手机还是某个机器人。

这真的是我能说的最多的了。我希望这足够了。

最佳答案

我建议您重新考虑您的安全架构。该应用程序附带的任何东西都是可发现的。 (例如,Android 的许可证验证库的设计使得公钥随应用程序一起提供。)

一种可能性是应用程序从服务器检索 key (通过安全套接字或 https 连接)。这显然需要应用向服务器提交某种识别/验证(可能基于用户输入)。

如果您使用 key 进行加密,请再看看公钥加密的工作原理。您的应用应该有公钥;然后互联网服务可以使用匹配的私钥解密。

关于java - Android 应用程序中 key 的反黑客解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10203910/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com