[ホーム] - [Windows 2008 FAQ 一覧] - [メッセージダイジェストに関して | MD5 と SHA-1 の違]



作成日:2012/08/16
更新日:2022/03/10
対象:Windows 2008

メッセージダイジェストに関して | MD5 と SHA-1 の違





(1)メッセージダイジェスト

メッセージダイジェストとは原文からある計算を実施し固定長の長さの文字列を生成する手法のことを言います。一般的にこの文字列のことを「ハッシュ値」(あるいは「チェックサム」)と呼びます。例えばインターネットからファイルをダウンロードする場合、ダウンロードしたメッセージダイジェストと元ファイルのメッセージダイジェスト(通常はダウンロード元が公開している)を比較してダウンロードしたファイルが破損していないことを確認します。
「ハッシュ値」から原文を復元することはできません。(メッセージダイジェスト関数は一方向関数であり不可逆関数であるため)。また異なる原文から同一の「ハッシュ値」が生成される可能性はほとんどありません。異なる原文から同一の「ハッシュ値」を生成する方法もほぼ不可能です。

(2)MD5, SHA-1, SHA-2 の違い

MD5 ・・・長さは128ビットです。異なるデータから同一の「ハッシュ値」が生成可能であることが判明しておりセキュリティ上問題があります。ただしダウンロードファイルの整合性確認等などでは一般的に良く使われています。

SHA-1 ・・・長さは160ビットです。セキュリティ上の理由より使用は推奨されていません。SHAはSecure Hash Algorithm の略です。

SHA-2 ・・・長さは224〜512ビットです。2012年現在ではセキュリティが突破される脆弱性は見つかっていません。


(3)実行例

(a) Redhat linux 5.0の場合

MD5のハッシュ計算
# md5sum downloaded.lzh
42b9878abdaa6f6ca1b1374423da86ef downloaded.lzh

SHA-1のハッシュ計算
# sha1sum downloaded.lzh
05cca3f99b75e3b056f6467de4b5b056553e90ff downloaded.lzh

SHA-2のハッシュ計算
# gpg --print-md SHA256 downloaded.lzh
downloaded.lzh: C866E927 D1497E5B B2F5407C 010BB89F 3975089C 1E507284 4AE47888
56AEF567


(b)Windows の場合

MD5のハッシュ計算
http://tooljp.com/qa/29DA43AF939BBAF949257606004CD2DF.html


C:\>fciv -md5 ReadMe.txt
//
// File Checksum Integrity Verifier version 2.05.
//
79ac8d043dc8739f661c45cc33fc07ac readme.txt


C:\>fciv -sha1 ReadMe.txt
//
// File Checksum Integrity Verifier version 2.05.
//
2fe398f1ebced166087362626241b95efeaab407 readme.txt







(ご注意) 本サイト内の内容を使用して発生したいかなる時間的損害、金銭的損害あるいはいかなる損害に対して、いかなる人物も一切の責任を負いません。あくまでも個人の判断で使用してください。 本ページは独自に調査をしたアンオフィシャル(非公式)な内容です。内容に誤りがある可能性や仕様変更により内容が不正確になる可能性があります。 本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)


Copyright(c) TOOLJP.COM 1999-2022

[Windows 2008 FAQ 一覧に戻る]