我正在尝试加密要存储在程序的多个实例中的密码,但是该密码必须能够由计算机上的所有用户解密。我已经到处寻找选项,并向我推荐了javaDPAPI。但是,这似乎仅基于当前用户上下文进行加密。

基于microsoft's documentation似乎有一种方法可以执行此操作,但是我不确定如何执行此操作,并且我对java不太熟悉,并且从未做过这样的事情。

最佳答案

您需要在提到的here的DataProtector的第二个构造函数中将Boolean设置为true

这也需要在您链接的类中进行一些调整:

this.protector = new DataProtector()更改为

我认为this.protector = new DataProtector(true)应该这样做。

您甚至可以添加项目唯一的“熵”字节数组,以便只有知道熵的人才能解密密钥,而其他程序则不能。这也是原始Microsoft设计的一部分。

10-04 20:00