ファイルのハッシュ計算|MD5・SHA-1・SHA-256・SHA-512でダウンロードしたファイルの改ざんを検知

ファイルをドラッグ&ドロップするだけでMD5・SHA-1・SHA-256・SHA-512のハッシュ値を一括計算。配布元の公開ハッシュ値と照合し、ダウンロードしたファイルが破損・改ざんされていないか確認できます。ファイルはサーバーに送信されません。

ハッシュアルゴリズム比較表

アルゴリズム 出力ビット数 16進数の文字数 主な用途
MD5 128bit 32文字 軽量な整合性確認用途のみ。暗号学的な安全性は既に破られており、パスワード保存やデジタル署名には使用不可
SHA1 160bit 40文字 MD5よりは安全だが衝突攻撃が実証済み。Git のコミットハッシュ等、非セキュリティ用途で現役
SHA256 256bit 64文字 現在も安全とされる標準的なハッシュ。ソフトウェア配布時の整合性確認で最も広く使われる
SHA512 512bit 128文字 SHA-256よりさらに長い出力。64bit CPU では SHA-256 より高速に計算できる場合がある

ファイルハッシュ確認のヒント

  • 配布元サイトが「SHA256: xxxxx」のように具体的なアルゴリズム名を明記していない場合は、上部の照合欄にハッシュ値を貼り付けるだけで自動的にどのアルゴリズムか判定します。
  • 大きなファイル(数百MB以上)はブラウザのメモリを消費するため、計算に数秒〜数十秒かかることがあります。タブを閉じずにお待ちください。
  • ISOイメージやインストーラーなど、改ざんされると被害が大きいファイルほどハッシュ照合の習慣化をおすすめします。
  • MD5・SHA-1は衝突攻撃が実証されているため、悪意ある改ざんの検知には不向きです。セキュリティ用途にはSHA-256以上を使ってください。

よくある質問

まず公式サイトのハッシュ値を再確認し、コピーミス(改行や余分な空白の混入等)がないか確認してください。それでも一致しない場合は、ファイルが破損しているか改ざんされている可能性があるため、そのファイルは実行せず削除し、公式サイトから再ダウンロードすることを強く推奨します。

配布元が公開しているアルゴリズムに合わせるのが基本です。複数公開されている場合は、より安全性の高いSHA-256またはSHA-512を優先してください。MD5・SHA-1は既に暗号学的な安全性が破られているため、悪意ある改ざんの検知には不十分です。

計算対象がテキスト文字列かバイナリファイルかの違いだけで、アルゴリズム自体は同じです。文字列のハッシュ値を計算したい場合は、姉妹ツールの文字列ハッシュ一括計算をご利用ください。

ブラウザが利用可能なメモリの範囲内であれば計算できますが、ファイル全体を一度メモリに読み込むため、数GB規模の巨大ファイルではブラウザが重くなったり失敗したりする場合があります。
ツールくん

余談ですが ― なぜ公式サイトはハッシュ値を公開するのか

ソフトウェアの配布において、ダウンロードリンクの隣に「SHA256: a1b2c3...」のようなハッシュ値が併記されているのを見たことがあるかもしれません。これは配布元が「このファイルは間違いなく私たちが作成したオリジナルであり、通信経路上で改ざんされたり、ミラーサーバーで破損したりしていない」ことを利用者自身に検証してもらうための仕組みです。

この仕組みが特に重要になるのが、Linux ディストリビューションのISOイメージ配布です。世界中に散らばるミラーサーバー経由でダウンロードするため、通信エラーによる破損はもちろん、悪意ある第三者がミラーサーバーを乗っ取ってマルウェアを仕込んだ改ざん版を配布するリスクも理論上存在します。公式サイトが署名済みのハッシュ値一覧(多くはGPG署名付き)を公開していれば、利用者はどのミラーからダウンロードしても、手元でハッシュ値を計算して一致を確認するだけで安全性を検証できます。

ハッシュ関数には「入力が1ビットでも変わると出力が全く異なる値になる(雪崩効果)」という性質があるため、意図的な改ざんはもちろん、ダウンロード中のわずかな通信エラーによる破損も確実に検出できます。ファイルサイズが一致していても中身が1バイトでも違えばハッシュ値は全く別の値になるため、目視でのファイルサイズ確認よりもはるかに確実な検証手段です。