Dovecot pw 生成不匹配

Dovecot pw 生成不匹配

根据Dovecot 的维基,SHA256 方案是将密码以 base64 形式存储的 sha256 总和。

$ doveadm pw -s SHA256 -p "test"
{SHA256}n4bQgYhMfWWaL+qgxVrQFaO/TxsrC4Is0V1sFbDwCgg=

但它与该命令的输出不匹配:

$ echo -n "test" | sha256sum | awk '{ print $1 }' | base64
OWY4NmQwODE4ODRjN2Q2NTlhMmZlYWEwYzU1YWQwMTVhM2JmNGYxYjJiMGI4MjJjZDE1ZDZjMTVi
MGYwMGEwOAo=

为什么不同?

答案1

我找到了答案。

$ echo -n "test" | sha256sum

是哈希的十六进制表示。sha256sum没有原始(二进制)输出的选项。此命令有效:

$ echo -n "test" | openssl dgst -binary -sha256 | base64

相关内容