0

ログイン スクリプトを作成していて、ユーザーが「記憶する」ボタンをオンにできるようにしたいと考えています。私はこの問題についてこのページを読みました: http://blog.themeforest.net/tutorials/working-with-sessions-and-cookies-in-php-and-mysql/

彼らは、ランダムな文字列をユーザー名と連結し、ソルトでハッシュして auth_key を作成することを推奨しています。

$cookie_auth= rand_string(10) . $username;
$auth_key = md5($salt . $cookie_auth);
$auth_query = mysql_query("UPDATE users SET auth_key = '" . $auth_key . "' WHERE username = '" . $username . "'");

1行目と2行目を実際に実行するポイントは何ですか?ソルトとハッシュをスキップして、$auth_key を長い疑似ランダム文字列として作成することはできませんか?

4

1 に答える 1

0

最初は明らかではありませんが、それが純粋にある種のランダム化された文字列であり、MD5ハッシュの前にそれに関連付けられたIDがなかった場合、2人のユーザーが同じ認証キーで終わるという問題が発生する可能性があります。そうは言っても、MD5はおそらく機能しますが、技術的には段階的に廃止する必要があります(MD5との衝突が多数見つかったため、MD5は実行できなくなりました)-SHA-2などの新しい一方向ハッシュを調べてみてください

于 2013-03-20T01:19:31.957 に答える