我想知道如何加密我在SQL Server 2008中的密码列。我已阅读this文章,但我仍然不知道如何...有一个更容易理解的教程?谢谢!加密SQL Server 2008中的密码列
回答
通常的做法是存储密码的散列。像:
HASHBYTES('SHA1', convert(varbinary(32), @password))
使用散列,您可以验证密码是否匹配,但您不知道密码本身。所以即使黑客获得了对数据库的完全访问权限,他仍然不知道密码。
有很多教程on the web。
这也是一个不错的主意盐值。随机(crytographically强)int或bigint可以很好地工作。 – Yuck 2011-05-04 18:43:56
我将如何检查凭证?我通常使用If ProfileDataset.Tables(“RO_User”)。Rows.Count = 1和strPassword.ToString <> ProfileDataset.Tables(“RO_User”)。行(0).Item(“User_psw”)。ToString Then ...但现在没有地方让我放置哈希函数 – user133466 2011-05-04 19:01:00
@ user133466:以与原始密码相同的方式哈希凭证。如果哈希匹配,字符串是相等的。 – Andomar 2011-05-04 19:21:40
您应该考虑存储密码散列而不是使用加密。如果你不了解这些差异,一个散列(也称为单向散列)会接收一个输入并产生gobbledygook(称为散列),以便为同一输入生成相同的gobbledygook。身份验证通过散列用户在客户端输入的内容并将其与db中的gobbledygook进行比较。如果它们匹配,密码是相同的。没有深入细节,哈希永远不能恢复为纯文本,这是他们的保护。然而,加密包括创建一个密码,以便如果您有解密密钥,则可以将密码恢复为纯文本。
如果您使用的是SQL Server和ASP.NET,则应该使用SqlMembershipProvider查看Forms Authentication。
微软做出这个超级容易与没好气命名
FormsAuthentication.HashPasswordForStoringInConfigFile
。
http://www.adventuresindevelopment.com/2009/05/23/a-simple-way-to-hash-passwords-in-aspnet/
- 1. sql server 2008密码字段加密
- 2. SQL Server 2008列加密
- 3. SQL Server 2008中的对称加密
- 4. SQL Server 2008中的加密丢失
- 5. 'sa'在SQL Server 2008中更改密码
- 6. 使用SHA1在Sql Server 2008上加密密码
- 7. SQL Server密码
- 8. 在.Net中加密/解密Sql Server 2005加密列NET
- 9. 如何从MS SQL Server 2008中解密密码?
- 10. SQL Server 2008中 - 透明数据加密未解密访问
- 11. 如何加密SQL Server 2008数据库
- 12. JPA和SQL Server列加密
- 13. 加密SQL Server中列中的数据
- 14. 加密在SQL Server中的.NET /解密
- 15. 如何在SQL Server 2008 R2中存储散列密码
- 16. 更新SQL Server 2016中的加密列
- 17. 加密SQL Server列中的所有值
- 18. xmlp-server-config.xml中的加密密码
- 19. C#4.0/Sql Server 2008:业务层加密/解密
- 20. 在SQL Server中密码salting
- 21. 加密在SQL Server
- 22. SQL Server SSL加密
- 23. SQL Profiler 2008 - 显示密码
- 24. 为SQL Server 2008数据库添加用户 - 无密码字段?
- 25. 散列密码的加密?
- 26. 在Sql Server中如何加密zencart密码?
- 27. 重置Windows Server 2008 R2上的密码
- 28. SQL列加密
- 29. 在SQL Server 2008中加密SSN的最佳方式是什么?
- 30. 加密SQL Server 2008中某些字段的最佳方法?
您的“本文”链接似乎已经离开了AWOL。 – 2011-05-04 18:30:58
哎呀,这里去http://msdn.microsoft.com/en-us/library/ms179331.aspx – user133466 2011-05-04 18:32:30
@ user133466 - 你为什么不从源应用程序存储密码散列? – Thomas 2011-05-04 18:37:19