[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

md5sum【コマンド】

pointこの用語のポイント

pointUNIX系で使えるコマンドだよ

pointMD5チェックサムを計算するよ

スポンサーリンク

簡単に書くよ

md5sum【コマンド】とは

MD5チェックサム(ハッシュ関数のMD5から返ってくる値)を計算するときに使うコマンド
です。

MD5を動かすコマンド
と言っても良いかもしれませんね。

image piyo

詳しく書くよ

まずは予備知識から行きましょう。

ハッシュ関数は「入力に対応する適当な値を返してくれる関数」ね。

例えば、ハッシュ関数に「愛媛みかん」を入れると「3」が返ってくるとしましょう。
同じように「青森りんご」を入れると「4」が返ってきます。
「栃木苺」を入れた場合は「5」が返ってきます。

md5sum

ハッシュ関数は、同じ物を入れれば、必ず同じ値が返ってきます。

「愛媛みかん」を入れた場合に返ってくるのは、必ず「3」です。
何回入れても「3」が返ってきます。
「4」が返ってくることはありません。

md5sum2

このような関数がハッシュ関数です。
ハッシュ関数には

1.適当な値が返ってくる
2.同じ入力に対しては同じ値が返ってくる


という特徴があります。

さて、そんなハッシュ関数ですが、世の中に一つしかないわけではありません。
いろいろあります。

そんないろいろあるハッシュ関数の中のひとつが「MD5」です。
MD5に対して何かを渡すと、適当な値が返ってきます。

md5sum3

このMD5から返ってくる適当な値を「MD5チェックサム」と言います。

md5sum4

以上が予備知識です。

ここまでを踏まえて、対象データのMD5チェックサム(対象データをMD5に渡したときに戻ってくる値)を確認するときに使うコマンドが「md5sum」です。

要するに、MD5を動かすコマンドですね。
指定したファイルなりなんなりのデータをMD5に突っ込んで、その戻りを画面に表示してくれるコマンドです。

「md5sum」コマンドはUNIX系(LinuxとかMacとか)で使えます。

書き方は

md5sum [オプション] [対象のファイル]

です。
オプションは、ちらほらとあります。

オプション説明
-bバイナリデータとして読み込むよ
read in binary mode
--binaryバイナリデータとして読み込むよ
read in binary mode
-cファイルとMD5チェックサムの一覧を読み込んで、それぞれの対応が正しいか検証するよ
read MD5 sums from the FILEs and check them
--checkファイルとMD5チェックサムの一覧を読み込んで、それぞれの対応が正しいか検証するよ
read MD5 sums from the FILEs and check them
--tagBSD-styleとやらのMD5チェックサムにするぞ~
create a BSD-style checksum
-tテキストデータとして読み込むよ
read in text mode (default)
--textテキストデータとして読み込むよ
read in text mode (default)

などです。

使い方は難しくありません。
例えば中身が

abc(改行)

なファイル「hoge.txt」があったとしましょう。
この状態で

md5sum hoge.txt

のように指定すると「hoge.txt」の中身がMD5に渡され、戻ってきた値が画面に表示されます。
私の環境では、以下の値が表示されました。

0bee89b07a248e27c83fc3d5951213c1

ファイルを指定しないで単に

md5sum

を実行すると、入力待ちの状態になります。
この状態で、例えば

abc(改行)

と入力し

Ctrlキーを押しながら「d」のキーを押す

と画面上から入力した内容を元にMD5チェックサムが計算されます。
私の環境では、以下の値が表示されました。

0bee89b07a248e27c83fc3d5951213c1

先ほど「hoge.txt」を渡したときと同じ結果です。
ファイルの中身か手入力かの違いはあれど、渡したデータ自体は同じですからね。
戻ってくる値も同じなのです。

あとは「-c」オプションの使い方も説明しておきましょう。
前準備として、中身が

0bee89b07a248e27c83fc3d5951213c1 hoge.txt(改行)

なファイル「check.txt」を用意しています。
この状態で「-c」オプションを付けて

md5sum -c check.txt

を実行すると「hoge.txt」をMD5に渡した戻りが「0bee89b07a248e27c83fc3d5951213c1」になるかを確認してくれます。

チェック結果が正しい場合、私の環境では以下のように表示されました。

hoge.txt: 完了

チェック結果がおかしい場合は以下のような表示です。

md5sum: 警告: 1 個の計算したチェックサムが一致しませんでした

「チェックしたいのは一つだけなのに、わざわざチェック用のファイルを作るのは面倒くさいよ~」という場合は

echo "0bee89b07a248e27c83fc3d5951213c1 hoge.txt" |md5sum -c

のようにしてください。
echo」コマンドで画面に出力して「|(パイプ)」で「md5sum -c」に突っ込んでいます。

「md5sum」コマンドの使い方は、そんなところです。
あとは必要に応じて情報を補完してください。

image piyo2

一言でまとめるよ

まぁ「md5sum」ってコマンドが出てきたら「MD5チェックサムを計算するときに使うんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク