在properties.settings文件中安全存储密码的最佳方法是什么?

时间:2012-01-18 17:00:20

标签: c# winforms encryption

  

可能重复:
  Encrypting passwords in WinForms app.config, .NET

我希望能够为登录框存储用户名/密码对。每次加载应用程序时,都会从Properties.Settings文件中加载保存的凭据,然后使用这些值填充登录框。

我知道密码可能会被黑客攻击,但任何事情都必须比在properties.settings文件中存储明文更好。

我一直在考虑使用SecureString,但似乎只是阻止密码以明文形式存储在内存中。

任何想法都是解决这个问题的最佳方法吗?

1 个答案:

答案 0 :(得分:1)

我不明白为什么要提到哈希;如果它们被设计成不可逆转的,它们怎么能被用来预先填充这些字段呢?

当我刚才做了类似的事情时,我做了以下事情:

AES_encrypt ( username + saltString1 + password + saltString2 )

存储结果并存储AES密钥。

填充字段:

  • 召回数据和密钥
  • 使用密钥
  • 解密数据
  • 将字符串拆分为saltString1
  • 拆分的第一个值是用户名
  • 第二个值是password + saltString2
    • 使用saltString2的子字符串,您有密码