使用salt为密码哈希加前缀或在哈希中解析salt更安全吗?

时间:2014-02-02 15:26:39

标签: php security hash passwords

说我有两个字符串,哈希和盐

$hash = "1234567890";
$salt = "abcdefghij";

使用salt

为哈希添加前缀是否更安全
$password = "abcdefghij1234567890";

或者将盐溶解在哈希

$password = "a1b2c3d4e5f6g7h8i9j0";

第二个似乎更安全,但是它呢?

编辑:我目前正在使用SHA512方法创建128位散列和128位盐。

2 个答案:

答案 0 :(得分:1)

不,假设您正在使用体面的哈希算法并不重要。 说到这一点,你应该使用bcrypt进行密码散列,无论如何都将盐作为一个单独的参数。

但是,在散列之前,不应将盐添加到哈希值,而应添加密码。其他方面它没用。

答案 1 :(得分:1)

我要说你应该在明文密码前加上盐,然后然后哈希整个事情。这样,实际上不可能将查询的哈希值检索为暴力破解或在查找表中搜索。如果你只是用哈希值加上哈希值,那么一旦攻击者看到另外两个或更多的盐渍哈希值,就很容易识别盐。