我正在尝试加密要存储在程序的多个实例中的密码,但是该密码必须能够由计算机上的所有用户解密。我已经到处寻找选项,并向我推荐了javaDPAPI。但是,这似乎仅基于当前用户上下文进行加密。
基于microsoft's documentation似乎有一种方法可以执行此操作,但是我不确定如何执行此操作,并且我对java不太熟悉,并且从未做过这样的事情。
最佳答案
您需要在提到的here的DataProtector的第二个构造函数中将Boolean设置为true
。
这也需要在您链接的类中进行一些调整:
将this.protector = new DataProtector()
更改为
我认为this.protector = new DataProtector(true)
应该这样做。
您甚至可以添加项目唯一的“熵”字节数组,以便只有知道熵的人才能解密密钥,而其他程序则不能。这也是原始Microsoft设计的一部分。