MD5ハッシュは復号(元に戻すこと)できるか?

セキュリティ MD5 暗号技術
結論

MD5は「ハッシュ化」であり「暗号化」ではないため、復号(元に戻すこと)はできません。一方向(不可逆)の変換です。

ハッシュ化と暗号化の違い

  • 暗号化:鍵があれば元に戻せる(可逆)
  • ハッシュ化:どうやっても元に戻せない(不可逆)

MD5は入力されたデータがどんなに大きくても、必ず32文字の16進数文字列を出力します。情報が削ぎ落とされているため、逆算は不可能です。

なぜ「復号できた」というツールがあるのか?

「レインボーテーブル」と呼ばれる巨大な辞書データを使った逆引き(総当たり)を行っているからです。 例えば や といったよく使われるパスワードのMD5値は既にデータベース化されているため、ハッシュ値から元の文字列を「検索」できてしまいます。

これを防ぐためには、パスワードのハッシュ化に「ソルト(Salt)」と呼ばれるランダムな文字列を付与したり、より強力なハッシュアルゴリズム(bcrypt, Argon2など)を使用する必要があります。(現在、MD5はパスワード保存などのセキュリティ用途には非推奨です)

実際にハッシュ化を試してみる

任意の文字列を入力して、MD5ハッシュがどのように生成されるか確認してみましょう。少しでも文字列が変わると、出力結果が全く異なるものになることがわかります。

🔐 この場で文字列をMD5ハッシュ化する

※MD5は暗号学的に弱いため、新規のパスワードハッシュにはSHA-256を使用してください。

MD5

関連記事

あわせて読むと理解が深まる関連記事をまとめました。

トピック記事
MD5 ハッシュ生成MD5 ハッシュ生成|md5 hashの使い方の使い方と注意点まとめ実務ガイド実践ガイド
ハッシュ化と暗号化の違いハッシュ化と暗号化の違い|SHA-256が推奨される理由
1フレームは何秒・何ms? 60fpsと120fpsの計算方法1フレームは何秒・何ms? 60fpsと120fpsの計算方法
AIクローラー対応 robots.txt・llms.txt 設定ガイド 2026AIクローラー対応 robots.txt・llms.txt 設定ガイド 2026|GPTBot・ClaudeBot・Google-Extended・GEO戦略
APIキャッシュ設計ガイドAPIキャッシュ設計ガイド|ETag・Cache-Control・304・CDNキャッシュキーの実務
Web APIのエラーハンドリング設計Web APIのエラーハンドリング設計|RFC 9457・error_code・400/422/409の使い分け
Web APIのべき等性(Idempotency)設計Web APIのべき等性(Idempotency)設計|二重決済を防ぐ実装ガイド
API設計におけるページネーションの使い分け:オフセット型とカーソル型の比較API設計におけるページネーションの使い分け:オフセット型とカーソル型の比較
APIのレート制限(Rate Limiting)実装ガイドAPIのレート制限(Rate Limiting)実装ガイド|アルゴリズム選定と429エラーの適切なハンドリング
APIデバッグで使うツールの使い分けAPIデバッグで使うツールの使い分け|JSON整形・JWT・Base64のワークフロー
Aspect Ratio 計算Aspect Ratio 計算|16:9・4:3 解像度一覧
Astro Content Collections でブログを構築するAstro Content Collections でブログを構築する