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 設定ガイド 2026 | AIクローラー対応 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 でブログを構築する |