パスワードをプレーンテキストでデータベースに保存するのは良くないと聞いたので、パスワークを安全に保存する方法を探しています。私はいくつかの調査を行い、実用的な例を持っています。
$cost =10;
$salt =strtr(base64_encode(mcrypt_create_iv(16, MCRYPT_DEV_URANDOM)), '+', '.');
$salt = sprintf("$2a$%02d$",$cost).$salt;
$hash = crypt($password,$salt);
$hash は、データベースに保存される最終的な文字列です。ハッシュ化されたパスワードを取得するには、 //$password = DB からのパス $enteredpass = ログインからのパス $hash = crypt($password,$enterdPass ); を使用します。if($enterdPass == $hash) // 入力されたパスは正しい
私は、これまでで最高のハッシュ化を探しているわけではありません