【发布时间】:2021-10-13 20:36:10
【问题描述】:
我一直在研究需要 md5 计算的 bacula 云支持问题 并且一直在尝试使用https://github.com/firebladed/bacula/blob/Branch-11.0/bacula/src/lib/md5.c,并且从 amazon s3 得到了严重的 md5 错误
所以我尝试将代码直接编译成 md5sum 可执行文件,请参阅 (Makefile)
我得到的 md5 与 ubuntu md5sum 不同
md5sum (GNU coreutils) 8.28
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Ulrich Drepper, Scott Miller and David Madore.
Example File that gets wrong md5
2521308b3fe3836623f78708a5c988d6 - ubuntu md5sum
e972192662d26a25af5fb895cf79b175 - 编译的 md5sum
正在使用简单的命令行进行测试
./md5sum <file>
用于编译的 md5sum
md5sum <file>
用于系统 md5sum
使用链接示例
理想情况下,如果它的一些简单的 id 喜欢修复它
【问题讨论】:
-
肯定是这样。向作者提出您的疑虑。
-
你是如何测试它的?可能是你给它提供了不同的数据(比如一个有换行符,一个没有换行符或类似的东西)。
-
通过文件作为参数进行测试,为问题添加了细节
-
md5.c 一次处理 4 个字节。你怎么告诉它字节顺序?
-
@stark 对于诸如文件之类的字节流应该没关系... FWIW,我的工具正在生成与 ubuntu 相同的哈希(嗯,不足为奇)