sql-server-2005 – 一个GUID好盐吗?是我的注册/登录过程有任何缺陷吗?

前端之家收集整理的这篇文章主要介绍了sql-server-2005 – 一个GUID好盐吗?是我的注册/登录过程有任何缺陷吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我的数据库里面的表格如下所示:
userid uniqueidentifier
 username varchar(20)
 password varbinary(max)

用户提交(注册)时,我将用户/传递发送到存储过程.

存储过程创建一个新的GUID(使用NEWID()),然后使用sql Server的HashBytes(sha1)函数根据提供的GUID密码创建密码,然后将值插入到上表中.

用户提交(登录)时,我将用户/传递发送到存储过程.

存储过程查找用户名,并抓取用户名将guid密码的哈希字节(sha1)与密码字段进行比较.

你看到这个逻辑里有什么缺陷吗?

解决方法

这是非常标准的 – 一个准则将适用于盐.盐的一点是为了防止 Rainbow attacks,几乎任何值都是随机的(即使不是随机的,那么至少是不同的),每个用户都会做的.

猜你在找的MsSQL相关文章