2009-10-22 101 views
2

根据维基百科,一个空字符串的MD5总和d41d8cd98f00b204e9800998ecf8427emd5sum linux命令是否正常工作?

我与我的MD5库证实了这一点

然而,当我在我的Linux shell中运行

echo "" | md5sum 

,我得到68b329da9893e34099c7d8ad5cb9c940 -

事实上,我的散列都没有匹配md5sum命令的输出。

有关这种差异的想法?

回答

12

使用该命令,您正在计算单个换行符的md5sum。尝试改为:

echo -n "" | md5sum 
6

必须消除呼应产生

$ echo -n '' | md5 
d41d8cd98f00b204e9800998ecf8427e 
5

尝试新线:

echo -n | md5sum 

如果没有 '-n',回声输出一个换行符,其正式的md5sum流程。

2

使用更轻便的printf

printf "" | md5sum