Сравнивает ли hash_equals строки, хэшированные с `sha512`?

Мне нужно сохранить токен в базе данных и сопоставить токен, предоставленный пользователем, с токеном базы данных, для токена хеширования, который я использую sha512, И я сравниваю оба токена с простым == оператор.

if($usertoken == $dbtoken) {

}

Но кто-то предложил мне использовать hash_equals() вместо этого, поскольку это предотвратит атаки по времени (дополнительная безопасность), с bcrypt хешировать токен. Так что я просто хочу знать, сравнивает ли hash_equals строки, хэшированные с sha512 или я должен использовать bcrypt?

-1

Решение

Несмотря на свое название, эта функция имеет нечего делать с перемешиванием.

Он сравнивает две строки на равенство, ни больше, ни меньше. Вы можете передать ему две строки, содержащие любую произвольную последовательность символов, независимо от того, представляют ли они простой текстовый пароль или пароль, хэшированный с помощью выбранного вами алгоритма, будь то bcrypt или же sha512,

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]