@Suntechnic
Есть вопрос именно про такое хранение.
Смысл в следующем — отправляя на телефон пользователя код авторизации, мы одновременно сохраняем ему на устройство хэшированную куку с этим кодом. Хэш от кода, времени и сменяемой соли.
В момент отправки кода, мы получаем так же и эту куку и выполняем проверку.
Какие могут быть подводные камни такой авторизации?
Решения вопроса 0
Ответы на вопрос 1
@pro100chel
Что это за хеш такой от кода, времени и соли?
Что-то по типу sha256("1630540800|salt2281488|99414")
?
А как ты собрался валидировать этот код? Тебе в любом случае надо хранить время и соль на сервере.
А какой тогда смысл использовать эту схему? В любом случае скомпрометированный сервер позволит злоумышленнику украсть код.
Вся схема кода на почту/sms сводится с простой табличке.id|code|token|attemps|expired
Все, больше ничего.
При запросе кода вешаем куки с идентификатором (секретным токеном) кода в базе. При попытке ввода проверяем expired и attemps. По желанию attemps можно вынести в отдельную таблицу для того чтобы чутка решить проблему, когда злоумышленник сможет использовать, допустим, не 3 попытки, а чуть больше.