2009-10-22 100 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