二进制格式的 md5 哈希函数

use*_*531 3 macos terminal md5

我正在尝试使用 md5 算法计算文件的摘要。我被要求将输出格式化为二进制而不是十六进制。这是我在终端中的命令(我使用 mac):

openssl dgst -md5 -binary ~/Documents/msg_Joudi.txt > ~/Documents/hash.txt

这会生成hash.txt文件,但其内容不是二进制格式,我不知道错误在哪里。

Cyb*_*org 6

创建文件的 MD5 哈希值:msgFile.txt>转换为二进制并保存:

cat msgFile.txt | openssl dgst -md5 -binary > hash.bin.txt
Run Code Online (Sandbox Code Playgroud)

以Base64格式保存二进制文件:

cat msgFile.txt | openssl dgst -md5 -binary | base64 > hash.bin.b64.txt
Run Code Online (Sandbox Code Playgroud)

以十六进制表示形式保存二进制:

cat msgFile.txt | openssl dgst -md5 -binary | xxd -ps -c16 > hash.bin.hex.txt
Run Code Online (Sandbox Code Playgroud)

使用Python将二进制转换为整数

python -c "print(int('$(cat msgFile.txt | openssl dgst -md5 -binary | xxd -ps -c16)', 16))" > hash.bin.int.txt
Run Code Online (Sandbox Code Playgroud)