\n
в следващия ред се вгражда прекъсване на ред, (Редактиране:такова, което не може да бъде включено в въведената от потребителя парола) .
$password = password_hash($pass, PASSWORD_BCRYPT, $options)."\n";
и трябва да го изтриете и да започнете отначало с нов хеш.
Джей Бланчард
, член тук в Stack изпрати бележка
за това не твърде дълго също в password_hash()
ръководство, което е нещо, за което той и аз всъщност говорихме.
Друг вариант би бил да използвате trim()
; това също работи (в момента на хеширане).
$password = password_hash($pass, PASSWORD_BCRYPT, $options)."\n";
$password = trim($password);
// Store in db after
Все пак трябва да започнете отначало, като изчистите старите хешове и създадете нови.
Имайте предвид обаче, че не трябва да избягвате пароли.
Един като 123'\abc
(като е напълно валиден) ще бъде променен на 123\'\abc
от real_escape_string()
; не е необходимо. password_verify()
се грижи за това от гледна точка на сигурността.