在java中加密文件的内容,而不需要手动指定加密密钥

dgtucam1  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(332)

关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。

上个月关门了。
改进这个问题
我正在用java开发一个工具(有点像sdk),它将敏感配置(比如api键)存储在一个文件中。我看到了c的protecteddata类#为了在windows中访问dpapi,有没有java替代方案来加密配置文件的内容而不需要手动提供一个在windows、linux和mac环境下工作的密钥?
对不起,这个问题不属于这里。

dfty9e19

dfty9e191#

加密基本上需要密钥。它可以由用户提供、存储在配置文件中或由某些安全硬件提供。
我看到c的protecteddata类在windows中访问dpapi
dpapi基本上仅限于windows,而且dpapi周围有一个jni Package 器,您可以使用它
适用于windows、linux和mac环境
dpapi是windowsapi的一部分,但在底层它都与tpm交互,tpm应该在当前的每个硬件上都可用。
java被设计成独立于平台的,因此您无法与开箱即用的硬件(任何特定于平台的调用)进行交互,但是有jni Package 器,比如tmp/j。我不确定这个项目有多新,是否还在运作。
作为替代方案,还有其他硬件模块,例如yubihsm或您可以使用加密智能卡。在任何情况下,加密密钥都会绑定到硬件,并产生所有后果。

相关问题