我创建了一个文件并在其中输入一些随机字符串。从给定散列计算base64编码的散列?
touch tesseract && echo 'TestTestTestTestTest' > tesseract
现在,如果我用openssl
来计算base64
哈希[sha256
],我运行此:
cat tesseract | openssl dgst -sha256 | openssl base64 -A
返回我
KHN0ZGluKT0gMzJjYjA1MTgzNDNhZmY2N2FlMmY5YzUwNDcwNGRiNGE5Njc5MzIyZWVlNTBmMjBiNTMzNjZlYTBiMDY2MWNlZgo=
现在我处理这个哈希逐步,as,
cat tesseract | openssl dgst -sha256 > partialHash
这给了我
(stdin)= 32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef
让这个哈希是X
。 后来我做到这一点,
echo '32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef' > partialHash
cat partialHash | openssl base64 -A
我得到不同的结果。这是为什么?
我询问原因,是因为我用的是二进制,hashdeep
这给了我散列在32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef
形式,我想将它们转换为base64
编码格式hashdeep
不能够产生base64
输出。所以我管中间散列到openssl base64 -A
,但获得不同的结果。
我缺少什么?如何将非编码散列X
[这是32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef
]转换为适当的base64
编码格式?
为了简单起见,我们可以假设X
存在于文件,
使用echo '32cb0518343aff67ae2f9c504704db4a9679322eee50f20b53366ea0b0661cef' > file
Stack Overflow是一个编程和开发问题的网站。这个问题似乎与题目无关,因为它不涉及编程或开发。请参阅帮助中心的[我可以询问哪些主题](http://stackoverflow.com/help/on-topic)。也许[超级用户](http://superuser.com/)或[Unix&Linux堆栈交换](http://unix.stackexchange.com/)会是一个更好的地方。另请参阅[我在哪里发布关于Dev Ops的问题?](http://meta.stackexchange.com/q/134306) – jww