繁体   English   中英

openssl sha1长度

[英]Openssl sha1 length

为什么执行命令openssl sha1 < /dev/null | wc --bytes openssl sha1 < /dev/null | wc --bytes输出为50? SHA-1的输出大小应具有160位,这将为我们提供20个字节。

为什么openssl sha1 < /dev/null | wc --bytes的输出openssl sha1 < /dev/null | wc --bytes openssl sha1 < /dev/null | wc --bytes 50?

$ openssl sha1 < /dev/null
(stdin)= da39a3ee5e6b4b0d3255bfef95601890afd80709

因为20字节摘要以(stdin)=为前缀,并以十六进制表示。

如果您想要未格式化的原始字节,请将十六进制格式的输出从OpenSSL传递到xxd -r -p ,以将该表示形式转换为原始字节。

例如,要对字符串foo进行Base64编码的SHA-1摘要:

$ echo "foo" | openssl sha1 | xxd -r -p | base64
8dLS+STphqyG/fezbJS83zK+7BU=

或简单地验证消息长度:

$ echo "foo" | openssl sha1 | xxd -r -p | wc --bytes
20

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM