首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在客户端java应用程序中存储加密密钥/Api密钥?

如何在客户端java应用程序中存储加密密钥/Api密钥?
EN

Stack Overflow用户
提问于 2017-11-03 05:05:26
回答 2查看 950关注 0票数 0

我有一个客户端java应用程序(在客户端机器上运行web应用程序)。我希望在客户端应用程序中存储加密密钥,以加密/解密某些数据。此外,我还想存储API密钥,用于从客户端应用程序调用REST服务。

如何将这些密钥安全地存储在客户端,以确保它们不会被调校或被盗?

我正在考虑使用java密钥存储库,但问题仍然是如何安全地存储密钥库密码?

对此有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-09 10:04:40

你不能这样做。这就像给某人一个上锁的盒子,并试图把盒子的钥匙贴在盒子的底部来保密。

试图通过使用keystore来增加这一点,就像将密钥放在一个单独的较小的盒子中,然后用一个不同的键将其锁定,然后将其粘贴到盒子的底部。

如果您想真正提高安全性,您必须让客户端在需要打开该框时向服务器请求一个密钥,最好使用一个密码或其他一些令牌,这是客户机可以访问的。

票数 0
EN

Stack Overflow用户

发布于 2020-07-24 06:58:22

在Windows上,我认为有“比没有更好”的解决方案可以在这个https://github.com/dariusz-szczepaniak/java.jna.WindowsCredentialManager解决方案中使用Windows凭据管理器

我不是安全专家,但我认为这会提供一些额外的保护,因为敌对攻击者需要知道客户端计算机的用户名/密码,才能访问Windows凭据管理器中的密码/证书/密钥。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47088809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档