MD5 ハッシュ生成ツール

ハッシュ化するテキストを入力してください。

テキストを入力し、MD5 を選んで実行すると、128 ビットのダイジェストが 32 桁の16進数で返されます。同じ実行で SHA-1、SHA-256、SHA-384、SHA-512、CRC32 のダイジェストも表示されるので、必要なものをコピーできます。

MD5 ハッシュを作成する方法

  1. 1

    テキストを入力

    ハッシュ化したい文字列を貼り付けるか入力します。空白や改行も含め、すべての文字が計算対象になります。

  2. 2

    MD5 を選択

    アルゴリズム一覧で MD5 を選びます。初期状態では SHA-256 が選ばれているので、続ける前に変更してください。

  3. 3

    ハッシュを生成

    生成ボタンをクリックします。MD5 のダイジェストが 32 桁の小文字の16進数で表示されます。

  4. 4

    ダイジェストをコピー

    MD5 の結果の横にあるコピーボタンを使い、必要な場所に貼り付けます。

MD5 ハッシュの形式

MD5 は入力が 1 文字でも書籍 1 冊分でも、常に 128 ビット、つまり 32 桁の16進数を出力します。同じ入力からは必ず同じ結果が得られ、1 文字変えるだけでダイジェストは完全に別の値になります。

入力 MD5 ダイジェスト
hello 5d41402abc4b2a76b9719d911017c592
Hello 8b1a9953c4611296a827abf8c47804d7
hello world 5eb63bbbe01eeed093cb22bb8f5acdc3

最初の 2 行は先頭の 1 文字しか違いませんが、ダイジェストには共通する部分がありません。これはどのハッシュ関数にも期待される雪崩効果(アバランシェ効果)です。

MD5 が今も使われている場面

  • キャッシュキーや ETag: 文字列やレスポンス本文の短く安定した指紋として使われます。
  • 重複の検出: 同一のテキストは同一のダイジェストになるため、長い内容を比べるより 32 文字を比べる方が軽くて済みます。
  • レガシーシステム: 古いデータベース、API、フィードの中には今も MD5 の値を保存していたり、要求したりするものがあり、その値を正確に再現する必要があります。
  • 偶発的な破損の確認: ダイジェストが一致すれば、伝送エラーが起きた可能性はごくわずかです。

MD5 を使うべきでない場面

MD5 には 2004 年以降、実用的な衝突攻撃が知られています。つまり攻撃者は同じダイジェストを持つ異なる入力を作れます。署名、証明書、あるいは改ざんされる恐れのあるものには使わないでください。パスワードには、単純な MD5 ではなく、bcrypt や Argon2id のような低速でソルトを使う関数を使ってください。新しく選べる場合は SHA-256 を選ぶのが適切です。

意図したバイト列をそのままハッシュする

ダイジェストはテキストの UTF-8 バイト列から計算されます。末尾のスペースや改行があるだけで結果は変わります。たとえば hello の末尾に改行を付けた文字列の MD5 は b1946ac92492d2347c6235b4d2611184 となり、上の表の値とは一致しません。他のシステムの結果と一致しない場合は、まず目に見えない空白がないか確認してください。

他のダイジェストとの比較

アルゴリズム ビット数 16進数の桁数
CRC32 32 8
MD5 128 32
SHA-1 160 40
SHA-256 256 64
SHA-512 512 128

メイン結果の下にある一覧には、入力したテキストについてこれらすべてが表示されます。桁数の違いを確認でき、受け取り側のシステムが許すなら、より強力なダイジェストをコピーできます。受け取った MD5 値と照合する場合だけは他の値では代用できず、このツールはその値を正確に再現します。

よくある質問

常に 32 桁の16進数、つまり 128 ビットです。入力の長さに関係なく変わりません。

計算によって復元することはできません。MD5 は一方向の関数です。短い文字列や一般的な文字列は、候補をハッシュして比較することで推測できるため、ソルトなしの MD5 はパスワードの保存には不向きです。

多くの場合、末尾の改行、余分なスペース、文字コードの違いが原因です。このツールは、入力した内容の UTF-8 バイト列をそのままハッシュします。

いいえ。入力されたテキストのみをハッシュします。ファイルの場合は、お使いの OS のチェックサムコマンドを利用してください。

関連ツール

このツールは他の言語でも利用できます

使い方ガイドと活用例