[PHP-users 28620] Re: MD5の仕組みについて

Reiji Matsumoto matsumoto @ spline.oc.to
2006年 3月 3日 (金) 15:49:36 JST


松本と申します。質問者の方と同名ですが別人です。

> echo md5('メールアドレス'+'何か');
> であればメールアドレスがユニークである限り
> ユニークの文字列となるのでしょうか?

md5がどのぐらいの確率で重複するかの数学的な検証については
詳しくありません。メールアドレスは一定のフォーマットに従
った文字列ですので、重複の確率はかなり低いようにも思えます
(似通った文字列程、重複する確率が低くなるから)。

しかし、重複の可能性があるとして扱った方が安心だと思います。
ですのでメールアドレスがユニークであるとするなら

echo 'メールアドレス' . md5('何か');

とすれば、重複チェックは必要ないと思います。
メールアドレスを永続的Cookieで保存する事のセキュリティ的な
問題は、別途考えなくてはならないですね。
サイトのログインIDがメールアドレスとは別に用意されているなら、

echo $id . 'IDに利用できない文字' . md5('パスワード');

というのが、よいかも知れません。サイトのログインIDがメール
アドレスの場合で、かつデータベースを使っているなら、

echo '会員マスタのプライマリキー' 
 . 'プライマリキーに絶対含まれない文字' . md5('パスワード')

は、如何でしょうか。



PHP-users メーリングリストの案内