linux-从给定哈希计算base64编码哈希?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux-从给定哈希计算base64编码哈希?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2033字,纯文字阅读大概需要3分钟。
内容图文
![linux-从给定哈希计算base64编码哈希?](/upload/InfoBanner/zyjiaocheng/950/779215fa5bb94de8bca11d9ff09e1c58.jpg)
我创建了一个文件,并在其中输入了一些随机字符串.
touch tesseract && echo 'TestTestTestTestTest' > tesseract
现在,如果我使用openssl来计算base64哈希[sha256],请运行以下命令:
cat tesseract | openssl dgst -sha256 | openssl base64 -A
回到我身边
KHN0ZGluKT0gMzJjYjA1MTgzNDNhZmY2N2FlMmY5YzUwNDcwNGRiNGE5Njc5MzIyZWVlNTBmMjBiNTMzNjZlYTBiMDY2MWNlZgo =
现在,我逐步处理此哈希,因为
cat tesseract | openssl dgst -sha256 > partialHash
这给了我
(标准输入)= 32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef
让此哈希为X.
然后我这样做
echo '32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef' > partialHash
cat partialHash | openssl base64 -A
我得到不同的结果.这是为什么?
我问这个问题的原因是因为我使用了一个二进制的hashdeep,它以32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef的形式给我散列,并且我希望将它们转换为base64编码格式,因为hashdeep无法产生base64输出.因此,我将中间哈希通过管道传递给openssl base64 -A,但获得了不同的结果.
我想念什么?如何将未编码的哈希X [32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef]转换为正确的base64编码格式?
为了简单起见,我们可以假设X存在于使用echo’32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef’创建的文件中.文件
解决方法:
您不是对散列进行base-64编码.您正在对字符串进行base64编码
(stdin)= 32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef
(后跟换行符).注意开头的(stdin)=.那是字符串的一部分.它将具有与字符串32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef的base64编码不同的值(后跟换行符).
如果您的目标是获取二进制哈希值(而不是其字符串编码),请对-openssl dgst使用-binary选项.
我对hashdeep并不熟悉,但是当您说“非编码哈希”时,它不是生成的.它正在生成一个十六进制编码的哈希.从外观上看,您实际上是在寻找一个十六进制到base64的转换器.您可以按照以下方式进行操作:
echo '32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef' | xxd -r -p | base64
xxd -r -p将十六进制编码的字符串转换为原始数据.
(如果您使用的是openssl dgst,请确保您使用的选项前面没有注入(stdin)=.我的openssl版本没有执行此操作,因此我不确定是什么标记了您需要.)
内容总结
以上是互联网集市为您收集整理的linux-从给定哈希计算base64编码哈希?全部内容,希望文章能够帮你解决linux-从给定哈希计算base64编码哈希?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。