Лучший способ хэширования маркера cookie "запомнить меня"

Я пытаюсь реализовать функцию "запомнить меня", следуя рекомендациям, приведенным здесь: The definitive guide to form-based website authentication, и здесь: http://fishbowl.pastiche.org/2004/01/19/persistent_login_cookie_best_practice/

Похоже, что "токен куки" должен быть хэширован при хранении в БД (если у злоумышленника есть доступ к БД, нехешированные токены выглядят как обычные логины/пароли, что позволяет войти на сайт).

В поисках хорошего алгоритма хэширования я нашел вот такую рекомендуемую технику с использованием bcrypt: https://stackoverflow.com/a/6337021/488666

Я попробовал и обнаружил, что предложенное количество раундов (15) приводит к очень медленному времени обработки (хэш 2,3с + проверка 2,3с на Intel Core 2 Duo E8500 + 4 GB RAM)

Я знаю, что алгоритмы хэширования должны быть относительно медленными, чтобы помешать злоумышленникам, но на таком уровне это мешает пользователям использовать сайт :)

Как вы думаете, может ли меньшее количество раундов (напр. например, 7, что снижает время обработки до 10 мс + 10 мс) будет достаточно?

6
задан Community 23 May 2017 в 12:23
поделиться