その他

MD5とは? -脆弱性-

MD5とは。。

現状脆弱性が発見されていることを筆頭に暗号学的ハッシュ関数としての暗号の安全性は担保されておらず、
強度が必要な場合には使ってはいけないとされている。のがシステム界隈での共通認識。

>仕組み

  • インプットに対して必ず128ビット固定長の値を生成する。
  • 同じインプットの場合は何度実行しても必ず同じ結果になる
  • 暗号化というよりかハッシュ関数なので基本的に一方向であり、非可逆

現状はハッシュ関数に関しては安全性を考慮した場合、最低でも256ビットは必要とされています。
md5の特徴としてインプットが同じ場合、必ず同じアウトプットになるという性質上、
一見、管理等で使い勝手が良さそうですが、逆を言えばmd5のインプットとアウトプットを辞書的な形で保存されれば(←実際すでに存在してます。)
アウトプットから簡単にインプットが割り出せてしまうようになります
md5の逆変換ツールもよく見かけます。
上記のことなどから、md5はすでに暗号としての役割を果てせなくなっているのが実情です。