sha1pass的输出中$ 4 $意味着什么?

时间:2010-09-23 01:30:44

标签: passwords sha1

使用sha1pass创建密码时,令牌中的第一个值为“4”。

例如:

sha1pass test

给我们:

$4$GTdnmykS$25iwV+ruXRwor4pUmKF57uXHj70$

令牌使用$作为分隔符:25iwV+ruXRwor4pUmKF57uXHj70是计算的哈希值,GTdnmykS是生成的盐,因为我没有提供第二个参数,但是4是什么呢sha1pass 1}}意味着什么?

4实际上是硬编码的,这是print '$4$', $salt, '$', $pass, "\$\n"; 的最后一行,它是一个Perl脚本:

{{1}}

为什么该标记的第一个值为'4',它是什么意思?

3 个答案:

答案 0 :(得分:8)

这只是一个签名,所以你知道你在看什么是SHA-1密码; $1$用于MD5,$5$用于SHA-2-256,$6$用于SHA-2-512。

答案 1 :(得分:6)

我见过使用的约定,其中$ 1 $表示MD5,$ 4 $表示SHA1。它是硬编码的,因为它只是编码哈希的生成方式以供将来比较。

答案 2 :(得分:3)

这是一个签名告诉你使用了哈希类型,很多明显的

现在,为什么存在?这是因为它用于unix密码哈希,请检查crypt (Unix)

  

如果盐以字符串 $ digit $ 开头,则使用Modular Crypt Format。数字表示加密中使用的算法。