スイーツ(笑)と呼ばないで!!
| |||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
11/24/06:03 [PR] |
08/01/15:32 パスワードを一方向暗号化しても簡単なパスワードを使っていたら意味がない皆さんは、DBにパスワードを格納する時、暗号化していますでしょうか?
基本的に特殊な要件が無い限りは、一方向の暗号化をすべきです。 どうしても、要件的に復号できる必要がある場合は、仕方が無いので復号可能な暗号化を用いましょう。 ITリテラシがないユーザーが直接データベースに入ってパスワードを書き換えることがあるケース等本当に稀なシーンにおいては平文で保存するということがあるかもしれません。 セキュリティの強度としては 1 1方向暗号化のパスワード 2 復号可能なパスワード 3 平文 という順になるかと思います。 さて、それでは、1方向の暗号化さえしておけば安心でしょうか? 実はそうではありません。 例えば、次の3つのmd5 hashされたパスワード、なんだか既視感ありませんでしょうか? たまにテスト環境とかで見かけますね。 (a) 21232f297a57a5a743894a0e4a801fc3 (b) 098f6bcd4621d373cade4e832627b4f6 (c) 5f4dcc3b5aa765d61d8327deb882cf99 これらの元となるパスワードは、それぞれ (a) admin (b) test (c) password になります。 一方向なのになぜわかったのか。 【答え】 メジャーなものはググれば出て来ます。 そうで無いものも世の中には暇な人がいるので地道に変換して辞書を作っている人がいます。 簡単なパスワードを使っていると、md5で一方向で暗号化されたところで、これではあまり意味がありませんね。 ん? DBの中身が見れている時点で元のパスワードなんてどうでも良い? そうですね。確かにそのアプリについてはその通りでしょう。 でも、本当に怖いのはそこから先なのです。 皆さん、世の中のいろんなアプリで当然パスワードは毎回違うものを使っていますよね?「いつものやつ」なんて言って使い回していないですよね? もしも使い回していたら、大変です。 その中の一つがハックされれば、その他のアプリについても同じパスワードを用いてアクセスが可能になってしまう可能性があります。 最近はログインIDをemailにしているアプリも多いですね。 そしたらIDを特定する負担も減るのでよりやりやすくなりますね。 もしも、そのemail自体のパスワードが「いつものやつ」を使っていたら最悪です。 たまたま慎重にパスワードを「いつものやつ」とは異なるもので登録していたアプリも、メールを利用したパスワードの再発行機能などでパスワードをリセットされてしまいます。 ということで、パスワードにはいろいろと気を使う必要がありますね、という話。 【追記】 次の記事で「正確には暗号化とメッセージダイジェストは異なる」という話を書いてます。 PR
|
|
|