“记住密码”选项[C#]

时间:2009-11-28 17:09:58

标签: c# passwords save

我需要在我的程序中实现“记住密码”选项,它适用于客户端 - 服务器协议,需要在登录过程中传递整个密码,而不仅仅是哈希,所以我需要在本地存储整个密码。我搜遍了整个地方,但我没有找到确凿的答案或根本没有答案。但是,由于电子邮件客户端,互联网浏览器,IM客户端这样做,它应该是不可能的......

那么,最好的方法是什么?

由于

4 个答案:

答案 0 :(得分:4)

1)不要这样做。无论您的安全性如何, 存储 密码仍然更好。

2)如果你 consider windows secure storage

答案 1 :(得分:2)

我会使用CredentialsUI。 There's an article on MSDN解释如何在.NET中使用它。

我很确定这是现代电子邮件客户端,互联网浏览器等所使用的内容。它提供了保存凭据的选项,使用DPAPI加密。

我已经创建了一个C#包装类,可以让它从托管应用程序中轻松使用。

答案 2 :(得分:0)

这是一个相关的问题。 Windows equivalent of OS X Keychain?

您的应用必须在某个时间以明文形式获取密码。 你只能让攻击者更难。 这是一种安全/努力权衡。

答案 3 :(得分:-1)

.NET提供了所谓的“隔离存储”功能,您可以在其中存储此类数据。在this MSDN article中,还提供了如何加密隔离存储以保护存储数据的参考。