« Ethnaのセッション | メイン | MD5値をキーとして利用する »

php

パスワードのハッシュ値 照合

パスワードなどはMD5で保存し、ログイン時は入力値のMD5と保存値を照合して認証。
MD5値は128ビット(16進表記で32文字)の有限長の為、異なる入力値で同じMD5値の可能性があるはず。
数学的な値は検証していないが、次のような工夫を施す。

入力値を x とすると、md5(x) と md5(x') を保存する。
x' は、事前に決めておいたフレーズ文字列と連結した x 。

衝突する可能性が減っただけで、衝突しなくなったわけではない。

●ハッシュ値の衝突確率は意外に高い
MD5だと280回程度の試行で,目的のハッシュ値を出力できる入力値を見つけ出すことができます。
http://itpro.nikkeibp.co.jp/article/COLUMN/20071031/286012/?P=5&ST=lin-os
●ハッシュの値が重複しているものをリストアップする(perl)
http://www.jp-z.jp/perlmemo/list_duplicate_count_hash.html

トラックバック

このエントリーのトラックバックURL:
http://www.remix.asia/cgi/mt/mt-tb.cgi/6602

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)