hereのパスワード・チュートリアルに従おうとしています。私は仕事にユーザーを追加しました(私の塩は今のところハードコードされています - mcrypt_create_iv
がありません)。とにかく、私がパスワードをチェックすることにフォローアップすると、私は偽になり、ハッシュが異なります。ハッシュ・イコールが正しく動作しない
hash_equals($user->hash, crypt($password, $user->hash))
私はcrypt($password, $user->hash)
ため$user->hash
ため*0
と*1
を取得していますか?チュートリアルごとに等しくする必要があります。
値は何を意味していますか? *0
私のパスワード暗号化機能が動作しないようですか?ここで
は、パスワードを暗号化するための私のコードです:
$cost = 10;
// Create a random salt
#$salt = strtr(base64_encode(mcrypt_create_iv(16, MCRYPT_DEV_URANDOM)), '+', '.');
$salt = 'Banana';
$salt = sprintf("$2a$%02d$", $cost) . $salt;
$hash = crypt($password, $salt);
と塩とパスワードの組み合わせを変えることで、私は*0
を得続けるので、何かが間違っている必要があります。ライブラリをロードする必要がありますか?何かが欠けているように見えますが、私は何がわかりません。
正式なパスワードハッシュライブラリhttp://php.net/manual/en/ref.password.php – JimL
おかげさまで、ありがとうございます。それはライブラリを使用するための標準的なアプローチですか? –