从字符串值构建GUID然后(解构)它们?

时间:2012-11-08 14:17:02

标签: sql-server vb.net guid uniqueidentifier

我有一个程序,用户输入密码登录。然后密码保存在名为users的SQL 2000数据库表中。

问题是任何拥有SQL查询分析器或企业管理器的人都可以非常轻松地读取这些密码。

我希望程序从每个用户的密码构造一个GUID并将该GUID存储在SQL表中,然后当它验证用户密码输入时,它解构相关的GUID并获取原始字符串值以使其与用户输入匹配。 / p>

现在我不确定这是否可行,但我听到一些IT专家在谈论这个问题而且他们不是那种求助的人。

3 个答案:

答案 0 :(得分:3)

你可能试图在这里重新发明轮子。那里有许多标准的Password Hashing解决方案。

答案 1 :(得分:2)

我认为您应该在存储数据库和数据库时使用加密密码然后,解密加密密码进行验证。

此外,您可以使用哈希。 请检查: Salted Password Hashing - Doing it Right

<强>顺便说一句:

哈希是单向函数。 您无法从哈希派生原始数据。

如果加密原始数据可从加密数据中恢复

参见:

<强> Encryption/Decryption Function in .NET using the TripleDESCryptoServiceProvider Class

<强> How to Encrypt or Decrypt password using Asp.Net with c#

答案 2 :(得分:0)

我相信我会使用Hash()方法,这是我通过提供的{U}提供了很多信息。http://crackstation.net/hashing-security.htm 谢谢。

相关问题