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

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

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

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

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

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

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

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

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

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

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

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

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

MD5