CodeKitHub
ジェネレーターツール

MD5 暗号化・復号 オンラインツール

最終更新:

「MD5 復号」を検索する人は多いですが、厳密にはMD5は暗号ではなく一方向ハッシュ関数なので、そもそも「復号」という概念が存在しません。このツールは実際に可能な部分——任意のテキストを32文字のMD5ハッシュ値に瞬時に変換する処理——をブラウザ内で完結させ、データの検証や既知のハッシュとの比較に使えるようにします。

MD5ハッシュ

MD5は一方向ハッシュのため、元のテキストに戻すことはできません。

このツールとは?

MD5(Message Digest 5)は、単語、パスワード、ファイル全体など任意の入力から、固定長128ビット(16進数32文字)の指紋を生成します。同じ入力は常に同じハッシュ値になり、1文字変えるだけで結果はまったく異なるものになります。

MD5には「暗号化」という言葉がよく使われますが、厳密には誤りです。暗号化は正しい鍵があれば元に戻せますが、ハッシュ化はそもそも元に戻せません。ネット上の「MD5復号」サービスは実際に数学的な逆算をしているわけではなく、あなたのハッシュ値を、よくあるパスワードや単語をあらかじめ計算しておいた巨大な対応表と照合しているだけです。元のテキストがその表にたまたま含まれている場合のみ「復号」に成功します。

MD5は1992年にRon Rivestによって発表され、RFC 1321として標準化されました。セキュリティ用途では暗号学的に破られています(衝突を意図的に作成可能)が、セキュリティが関係しないチェックサム、キャッシュキー、重複排除などでは今も広く使われています。

なぜこれを使うのか?

  • MD5ハッシュ値を生成し、ファイルや文字列が誤って変更されていないか検証する。
  • 既知・公開されているMD5値と比較し、データの整合性を確認する。
  • 決定的なキャッシュキーや重複排除IDを作成する。
  • MD5ハッシュ値が実際には「復号」できない理由を正しく理解する。
  • 完全ローカル処理:入力はブラウザ内でハッシュ化され、アップロードされません。

使い方

  1. 入力欄にテキストを入力または貼り付けます。
  2. 「MD5を生成」をクリックします。
  3. 生成された32文字のハッシュ値を確認します(大文字が必要な場合は「大文字での出力」にチェック)。
  4. 「コピー」をクリックしてハッシュ値をコピーするか、既に持っているハッシュ値と比較します。

入力

hello

出力

5d41402abc4b2a76b9719d911017c592

MD5は決定的です:「hello」というテキストは、どのツールでも、いつでも必ずこのハッシュ値になります。

「暗号化」と「ハッシュ化」——用語が重要な理由

暗号化とハッシュ化は異なる問題を解決するものであり、両者を混同すると実際のセキュリティ上のミスにつながります。暗号化は鍵を使ってデータを可逆的に変換します——鍵で暗号化し、対応する鍵で復号すれば元に戻ります。ハッシュ化は鍵をまったく使わず、データを一方向に変換するものです——設計上、ハッシュ値を入力に戻す操作は存在しません。

MD5は暗号ではなくハッシュ関数です。「MD5暗号化」という表現は口語的によく使われますが、誤った期待を生みます。正当な「MD5復号」操作は存在しません。そのように謳うものは、対応表による検索(既知のよくある入力にしか効かない)か、単に機能していないかのどちらかです。

MD5を使ってよい場面

  • 実行前に、ダウンロードしたファイルが配布元の提供するチェックサムと一致するか検証する。
  • URLやクエリ文字列から決定的なキャッシュキーを生成する。
  • 各レコードをハッシュ化し、全文比較ではなくハッシュ値同士を比較して重複を排除する。
  • 2つのファイルが直接比較せずともバイト単位で同一かを素早く確認する。

MD5を完全に避けるべき場面

パスワード、デジタル署名、攻撃者が偽の一致から利益を得られる用途には、MD5を絶対に使用しないでください。衝突を意図的に作成できること、また短い・よくある入力のソルトなしMD5ハッシュ値が対応表で復元できることから、これらの用途ではMD5は実質的なセキュリティを提供しません。パスワードにはbcrypt、scrypt、Argon2を使用してください。改ざん耐性が必要な署名や整合性検証にはSHA-256以上を使用してください。

よくある質問

MD5ハッシュ値を復号して元のテキストに戻せますか?

いいえ——ハッシュ化は設計上一方向であり、ハッシュ値から元の値を計算することはできません。「MD5復号」サイトは、よくある入力をあらかじめ計算した巨大な対応表を検索しているだけなので、ユニークな入力や長い入力は復元できません。

では「MD5復号」サイトは実際何をしているのですか?

よくある単語、名前、漏洩したパスワードとそのMD5ハッシュ値を対応させた巨大なデータベースを保持し、検索を行っています。元のテキストがそのデータベースになければ(単純でない内容であれば十分ありえます)、結果は返ってきません。

MD5はパスワード保存に安全ですか?

いいえ、絶対に安全ではありません。MD5はブルートフォースが高速で、既知の衝突攻撃もあり、対応表による「復号」はまさにソルトなしMD5パスワード保存を破る攻撃そのものです。パスワードにはbcrypt、scrypt、Argon2を使用してください。

同じテキストなのに別のツールでハッシュ値が異なるのはなぜですか?

多くの場合、目に見えない違いが原因です:末尾の改行やスペース、改行コードの違い(\r\n と \n)、文字エンコーディングの違いなど。バイト単位で完全に一致する入力であれば、MD5ハッシュ値も必ず一致します。

入力したテキストはハッシュ化のためサーバーに送信されますか?

いいえ。MD5ハッシュ値はJavaScriptによりブラウザ内で直接計算されるため、入力内容がどこかに送信されることはありません。

関連ツール