`md5sum`がインターネットと同じハッシュを与えないのはなぜですか?


8

文字列 "a"のmd5ハッシュを見つけたいのですが、実行echo "a" | md5sumすると、インターネットを検索した場合(たとえば、DuckDuckGoまたは最初に見つけた検索結果を使用した場合)に得られるものとは別のハッシュが得られます。

実行echo "a" | md5sumすると「60b725f10c9c85c70d97880dfe8191b3」になりますが、「0cc175b9c0f1b6a831c399e269772661」である必要があります。

「60b725f10c9c85c70d97880dfe8191b3」の逆ハッシュルックアップを行うと、「a」が表示されます。

回答:


15

ハッシュが異なるのはecho、出力文字列の末尾に改行を含めて見栄えをよくするためです。これは、-nフラグ(実装でechoサポートされている場合)、または別のプログラム(などprintf)を使用して禁止できます。

> echo "a" | md5sum   
60b725f10c9c85c70d97880dfe8191b3  -

> echo -n "a" | md5sum
0cc175b9c0f1b6a831c399e269772661  -

> printf "a" | md5sum 
0cc175b9c0f1b6a831c399e269772661  -

2
echo出力に改行を追加して、きれいにするためではなく、完全な行にします。
クサラナンダ

@Kusalananda入力するprintf textと、テキストが次のプロンプト行の前に表示されます。
neverMind9 2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.