我正在使用 DPAPI 来存储 XML 数据。CryptProtectData 之后的数据存储在一个文件中。在我的一个用例中,需要在任何用户登录工作站之前解密此数据。因为,我不能在其中使用用户特定的密钥,所以我在加密时设置了标志“CRYPTPROTECT_LOCAL_MACHINE”。熵键是静态文本。
Unprotect 在所有情况下都有效,除非我在登录前调用它(没有用户登录)。其返回错误 87(参数不正确)。
我重新阅读了整个 DPAPI 文档以查看密钥是如何生成的。但是,不幸的是,对于这个特定的标志没有足够的信息。
CryptUnprotectData 会在这种情况下工作吗?它可以被在某个用户会话下运行的应用程序调用吗?任何帮助表示赞赏。
感谢:D