对于密码加密,我想使用ProtectedData
。
据我所知,这是CryptProtectData
的包装。
MSDN仅根据用户凭据声明有关加密的含糊不清的内容 如果用户有解密通常必须在同一台机器上完成 没有漫游资料。
它使用哪种加密算法?
是否有任何分析说明此加密是否适合密码存储?
如何实现本地密码存储?
答案 0 :(得分:4)
This MSDN文章提供了有关CryptProtectData
和DPAPI
的更多信息,并且应包含您需要的信息。特别是:
DPAPI最初会生成一个名为MasterKey的强密钥,即 受用户密码保护。 DPAPI使用标准加密 在PKCS#5中描述的称为基于密码的密钥派生的过程 从密码生成密钥。然后是这个密码派生的密钥 与Triple-DES一起使用以加密最终存储的MasterKey 在用户的个人资料目录中。
本文适用于较旧版本的Windows,因此根据您的Windows版本,这些算法可能会发生变化,但它们的安全性可能不会低于此处提到的那些。
这是否适合“密码存储”,取决于你究竟是什么意思以及你要存储的密码。