MD5 ファイルチェックサム計算ツール

任意のファイル(大きなファイルも可)の MD5 チェックサムをローカルで計算し、公開されているハッシュと照合してダウンロードを検証します。無料でプライベートです。

MD5 は暗号学的に破られています(衝突を作成できます)。チェックサムや旧システムとの互換性のためだけに使い、セキュリティ目的には使わないでください。

ファイルがまだ選択されていません。ファイルを選ぶとすぐにチェックサムが表示されます。

ファイルはブラウザー内で分割して読み込まれ、アップロードされることはありません。

MD5 ファイルチェックサムとは?

このツールは、選んだファイルの MD5 チェックサム(128ビットのダイジェスト)を計算し、期待値と照合します。ファイルはブラウザー内で4 MB ずつ読み込まれるため、大きなファイルも扱え、アップロードは一切行われません。

MD5 ファイルチェックサムの使い方

  1. ドロップゾーンをクリックするか、ファイルをドラッグ&ドロップします。ファイルは分割して読み込まれ、進捗バーが表示されます。
  2. 下に表示される ファイル名 と ファイルサイズ を見て、正しいファイルを選んだか確認します。
  3. 配布元が公開しているチェックサムを 期待されるチェックサム(任意) に貼り付けると、一致 または 不一致 が表示されます(大文字・小文字、0x、末尾のファイル名は無視されます)。
  4. 大文字の16進や Base64 が必要な場合は 出力形式 を選び、コピー をクリックします。

例

入力
A file named hash-abc.txt containing the 3 bytes "abc" (no newline)
出力
900150983cd24fb0d6963f7d28e17f72

この値(大文字・小文字は問いません)を期待されるチェックサムに貼り付けると、一致と表示されます。

MD5 ファイルチェックサムを使うべき場面

配布元が MD5 チェックサムを掲載しているときに、ダウンロード、バックアップ、コピーしたファイルが無事かを確認したり、ファイルを転送する前にチェックサムを記録したりするのに使います。MD5 が一致すれば、ファイルが偶然壊れていないことは分かりますが、MD5 は破られているため、誰かが改ざんしていないことの証明にはなりません。SHA-256 のチェックサムや署名が提供されている場合は、そちらを優先してください。ファイルではなく短い文字列をハッシュ化するには、MD5 テキストハッシュ生成ツールを使います。

MD5 ファイルチェックサムの仕組み

ファイルは File API で4 MB ごとに分割され、各部分が逐次型の MD5 ハッシャーに渡されます。そのためメモリ使用量は小さく、進捗バーも表示できます。MD5 は、メッセージを512ビットの倍数にパディングし(1ビットの 1、0、64ビットのリトルエンディアンの長さ)、各ブロックを、4つの32ビットワードに対する16ステップ×4ラウンドで処理します。各ステップでは、メッセージのワード、正弦関数から導出した定数、ローテーションが混ぜ込まれます。最終的な状態をリトルエンディアンで並べたものが、128ビット(16進32文字)のダイジェストです。期待されるチェックサムとの比較はダイジェストのバイト列で行うため、16進の大文字・小文字と Base64 のどちらも使えます。

一般的な使用例

  • ダウンロードページのチェックサムと照合して、ISO、インストーラー、ファームウェアイメージを検証する
  • USB ドライブ、NAS、クラウドストレージにコピーしたファイルが、ビット単位で同一であることを確認する
  • リリース成果物を公開する前に、MD5 チェックサムを記録する
  • 名前の異なる2つのファイルの内容が同一かどうかを調べる
  • 古いアーカイブにある MD5 リストとファイルを照合する

セキュリティ注意事項

MD5 はセキュリティ面では破られています。 実用的な衝突攻撃が存在し(2008年の偽造 CA 証明書や Flame マルウェアなど)、異なる2つのファイルが同じ MD5 を持つことがありえます。偶発的な破損の検出にはまだ十分ですが、署名、証明書、パスワードには使わず、SHA-256 や SHA-3 を使ってください。チェックサムが整合性を証明できるのは、期待値が信頼できる経路から得られたものである場合だけです。ファイルを差し替えられる攻撃者は、通常その横に表示されたチェックサムも差し替えられます。ファイルがブラウザーの外に出ることはありません。

よくある質問

ファイルはサーバーにアップロードされますか?

いいえ。ファイルはブラウザーの File API で読み込まれ、お使いの端末上で JavaScript/WebAssembly によってハッシュ化されます。ページの読み込み後はインターネットを切断しても動作します。

ファイルの大きさに上限はありますか?

ファイルは4 MB ずつ処理されるため、制限になるのはメモリではなく主に時間です。数 GB のファイルも処理でき、速度は端末の性能によります。

MD5 が公開されている値と一致しません。どうすればよいですか?

まず、同じアルゴリズムと同じファイル(途中までしかダウンロードされていないものではなく)を比べているか確認してください。それでも値が異なる場合は、公式の配布元からファイルをダウンロードし直してください。不一致が続く場合は、ファイルが壊れているか、配布元が公開したものとは別のファイルです。

期待されるチェックサムには何を貼り付けられますか?

大文字または小文字の16進値(0x の有無は問いません)、Base64 形式、または <hash> filename のようなチェックサムファイルの1行をそのまま貼り付けられます。比較されるのは最初の単語だけです。

他のカテゴリを見る