为什么`md5sum`没有提供与Internet相同的哈希值?

Modified on: Sat, 30 Jun 2018 04:30:00 +0800

我想找到字符串“a”的md5哈希值,但是运行echo "a" | md5sum给我的另一个哈希比我搜索互联网时得到的哈希值(例如使用DuckDuckGo我找到的第一个搜索结果。)

运行echo "a" | md5sum给了我“60b725f10c9c85c70d97880dfe8191b3”,但它应该是“0cc175b9c0f1b6a831c399e269772661”。

如果我对“60b725f10c9c85c70d97880dfe8191b3”进行反向哈希查找,我会得到“a”。

作者:lindhe

最佳答案

散列不同的原因是echo在输出字符串的末尾包含一个换行符以使其漂亮。这可以通过-n标志(如果echo的实现支持它)或使用其他程序(如printf)禁止:

> echo "a" | md5sum 60b725f10c9c85c70d97880dfe8191b3 - > echo -n "a" | md5sum 0cc175b9c0f1b6a831c399e269772661 - > printf "a" | md5sum 0cc175b9c0f1b6a831c399e269772661 -

作者:terdon,lindhe

相关问答

添加新评论