![](/img/trans.png)
[英]OpenSSL: Trouble creating a public/private keypair using 64 bit DSA with SHA1 encryption
[英]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.