md5sum コマンドは、ファイルや入力データの MD5 チェックサム(ハッシュ値)を計算・表示 するコマンドです。
また、既存のチェックサムファイルと照合して データの改ざん検出や整合性確認 にも利用されます。
※MD5 は高速ですが、暗号学的には脆弱性がありセキュリティ用途には不向きです。
主にダウンロードファイルの整合性確認などに使われます。
構文(Syntax)
md5sum [オプション] [ファイル...]
主なオプション一覧
| オプション | 説明 | 使用例 |
|---|---|---|
| (なし) | ファイルの MD5 チェックサムを計算 | md5sum file.txt |
-b | バイナリモードで計算 | md5sum -b file.txt |
-t | テキストモードで計算 | md5sum -t file.txt |
-c | チェックサムファイルと照合 | md5sum -c checksums.md5 |
--tag | OpenSSL 形式で出力 | md5sum --tag file.txt |
--quiet | 検証時にエラーのみ表示 | md5sum -c --quiet checksums.md5 |
--status | 検証結果を表示せず終了ステータスで判定 | md5sum -c --status checksums.md5 |
実行例
ファイルのハッシュ値を計算
md5sum hello.txt
出力例:
5d41402abc4b2a76b9719d911017c592 hello.txt
複数ファイルを同時に計算
md5sum file1.txt file2.txt
出力例:
098f6bcd4621d373cade4e832627b4f6 file1.txt
5eb63bbbe01eeed093cb22bb8f5acdc3 file2.txt
出力をチェックサムファイルに保存
md5sum file1.txt file2.txt > checksums.md5
チェックサムファイルを使って検証
md5sum -c checksums.md5
出力例:
file1.txt: OK
file2.txt: OK
改ざんされた場合の出力
md5sum -c checksums.md5
出力例:
file1.txt: OK
file2.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match
OpenSSL 互換のタグ付き出力
md5sum --tag file1.txt
出力例:
MD5 (file1.txt) = 098f6bcd4621d373cade4e832627b4f6
標準入力のハッシュ値を計算
echo -n "hello" | md5sum
出力例:
5d41402abc4b2a76b9719d911017c592 -
関連コマンド
sha1sum: SHA-1 ハッシュを計算sha256sum: SHA-256 ハッシュを計算cksum: CRC チェックサムを計算openssl dgst: 多様なハッシュアルゴリズムに対応
備考
- MD5 は暗号用途には推奨されません。衝突攻撃が可能であり、セキュリティ的に強度が不足しています。
- 整合性確認(例: ファイルが壊れていないかの確認)には依然として利用されていますが、SHA-256 以上のアルゴリズムを使う方が安全です。
md5sum -cの終了ステータスは、整合性確認の自動化に便利です(0=正常、1=失敗)。
参考
- manページ: man7.org md5sum(1)
- GNU Coreutils: https://www.gnu.org/software/coreutils/

コメント