ホーム > カテゴリ > PHP・Laravel・CakePHP >

MD5の安全性を少しだけ高めるソルト(SALT)

データベースにパスワードなどをプレーンテキストで保存すると漏洩した時などに危険です。そのような時にはMD5などのパスワードハッシュを使用します。ですが、そのまま使用すると現在のPCでは10分もあれば解析されてしまいます。そこでソルトの出番です。

ソルト(Salt)とは?

ソルトとは「塩」の事です。料理をする時に塩を使用する光景を浮かべてみて下さい。食材の上に塩を振り掛けていますね

ハッシュ関数のソルトも同様でプレーンテキストにソルト(ランダムな文字)を追加する仕組みです。

サンプル

MD5_SALTにはランダムな長い文字を入れます。

define("MD5_SALT" , "1234567890abcdefghij");     
$hash = md5($password . MD5_SALT);

上記で多少の安全性はあがりましたが、更に下記のようにすると良いかもしれません。もちろん、あれこれと追加すると安全性はどんどん高まると思います。

define("MD5_SALT" , "1234567890abcdefghij");     
$hash = md5(md5($password) . md5(MD5_SALT));

まとめ

MD5に限らず、ハッシュ関数にはソルトを追加すると安全性が高まる。

もっと安全な情報が欲しい

という方にはPHPの公式サイトをご覧下さい。

ソルトに関しては

ソルトとはちょっとした追加データです。 これをつけるだけで、ハッシュをクラックするのが劇的に難しくなります。

と書かれています。もちろん、md5()よりpassword_hash()の方がいいと思います :-)





関連記事



公開日:2015年01月21日
記事NO:00143


この記事を書いた人

💻 ITスキル・経験
サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。

画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ
プチモンテ代表、アーティスト名:プチモンテ
🎵 音楽制作
BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は叙情詩、叙情的な楽曲が多い。楽曲制作は2023年12月中旬 ~

オリジナル曲を始めました✨

YouTubeで各楽曲を公開しています🌈
https://www.youtube.com/@petitmonte

【男性ボーカル】DA・KA・RA | 新たな明日が風と共に訪れる

【男性、女性ボーカル】時空を超越する先に | 時空と風の交響曲

【女性、男性ボーカル】絆 | 穏やかな心に奏でる旋律