我很感激你的时间。
我试图理解一些事情。为什么我手动生成的哈希似乎只包含字母数字字符 0-9、af,但我们最喜欢的应用程序使用的所有哈希似乎都包含所有字母 [以及大写字母]?
例子:
使用 sha256 手动散列:
# sha256sum <<< asdf
d1bc8d3ba4afc7e109612cb73acbdddac052c93025aa1f82942edabb7deb82a1 -
您永远不会看到 f 上方的任何字母。而且没有大写。
但是如果我使用 htpasswd 创建一个 SHA 哈希,它会包含所有的字母数字:
# htpasswd -snb test asdf
test:{SHA}PaVBVZkYqAjCQCu6UBL2xgsnZhw=
例如,如果您查看网站 CMS 数据库中的密码哈希,也会发生同样的事情。我必须缺少一些额外的步骤,或者最终格式与实际的哈希格式不同。我认为它可能是 base64 编码或其他东西,但它似乎没有解码。
有人可以解释一下幕后发生的事情吗?我的朋友解释说,管道“asdf”到 sha256sum 显示校验和,这不是实际的哈希本身。那是对的吗?如果是这样,我怎样才能看到实际的哈希?
非常感谢您的先进!