OpenSSL从shell stdin创建SHA哈希

时间:2012-06-16 18:52:28

标签: shell unix openssl

如何在不使用文件的情况下从命令行使用OpenSSL生成SHA-512哈希?

我试过这个

echo "password" | openssl dgst -sha512

但是哈希看起来不对(与http://hash.online-convert.com/sha512-generator相比)。

2 个答案:

答案 0 :(得分:22)

尝试echo -n "password"

正在发生的事情是echo添加到字符串末尾的新行字符被哈希处理。 -necho会抑制此行为。

答案 1 :(得分:0)

如果您使用的是MacOS,则可能会偶然发现echo忽略-n参数的情况。要解决此问题,请直接调用二进制文件:

/bin/echo -n "password" | openssl sha512