t_wの輪郭

メールアドレスもハッシュ化salt主キー計算コストうまくいかない

あれ

2022/4/20 15:33:00

 メールアドレスもハッシュ化を試してみたところ、問題が一つ発生した。メールアドレスとパスワードによって認証する時、メールアドレスにSALTを付与したうえでハッシュ化しているために、利用者が入力したメールアドレスをキーとして、DBに格納されているハッシュ化したパスワードを引き出すことができない。
 無理やり突合するならば、すべてのSALTを取り出して、ハッシュ化して突合すれば何とかできるが、計算コストがかかってしまう。
 もしくは、メールアドレス以外に主キーにできる値を持たせられればいいが、それを利用者に覚えてもらうというのも現実的ではない。

 良いアイデアだと思ったが、うまくいかないので棄却するしかない。

メールアドレスのハッシュ化にメールアドレスを用いれば、メールアドレスをキーとして扱えるかもしれないメールアドレスのハッシュ化に乱数のSALTを用いると、メールアドレスをキーとして扱えない

 ソルトにユーザーIDを利用ハッシュ値を作る際にユーザ名を混ぜ込むを読んでいて思ったのだが、メールアドレスをハッシュ化する際のSALTとしてメールアドレス自身を用いれば、メールアドレスをキーとして扱うことができる気がしてきた。
 素人考えなのでセキュリティ的に安全なのかはわからない。レインボーテーブルは作れてしまいそうだ。


 逆の発想で、パスワードをSALTにしてメールアドレスをハッシュ化すればいいかもしれない。パスワード変更時にはメールアドレスも一緒に入力してもらう必要がある。