【问题标题】:Which Encryption algorithm does ProtectedData use?ProtectedData 使用哪种加密算法?
【发布时间】:2013-03-30 05:08:24
【问题描述】:

对于密码加密,我想使用ProtectedData

据我所知,这是CryptProtectData 的包装器。

MSDN 仅对基于用户凭据的加密进行了模糊说明 并且解密通常必须在同一台机器上完成,如果用户有 没有漫游配置文件。

它使用哪种加密算法?

是否有任何分析表明这种加密是否适合密码存储?

如何实现本地密码存储?

【问题讨论】:

    标签: c# encryption passwords dpapi


    【解决方案1】:

    This MSDN 文章有更多关于CryptProtectDataDPAPI 的信息,并且应该包含您需要的信息。特别是:

    DPAPI 最初会生成一个称为 MasterKey 的强密钥,它是 受用户密码保护。 DPAPI 使用标准加密 PKCS #5 中描述的称为基于密码的密钥派生的过程 从密码生成密钥。然后这个密码派生密钥 与 Triple-DES 一起使用对 MasterKey 进行加密,最终存储 在用户的个人资料目录中。

    本文适用于旧版本的 Windows,因此根据您的 Windows 版本,这些算法可能会发生变化,但它们的安全性可能不会低于此处提到的那些。

    这是否适合“密码存储”,在某种程度上取决于您的确切含义以及您要存储的密码。

    【讨论】:

    • 谢谢!这确实很有帮助。你知道任何研究加密有多强吗?它是否足够强大以保存数据库凭据?
    • 我不知道,但根据 Wikipedia (en.wikipedia.org/wiki/Data_Protection_API),一些 Microsoft 产品本身使用 API 来存储已保存的凭据。它还引用了一份可能感兴趣的赛门铁克文档 (symantec.com/connect/articles/…)。
    猜你喜欢
    • 1970-01-01
    • 2020-07-24
    • 2015-08-29
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 2022-09-27
    • 2010-12-06
    • 1970-01-01
    相关资源
    最近更新 更多