@Nikita1244
Anonymous

Как безопасно генерировать код подтверждения на стороне сервера?

Здравствуйте. Пишу сайт, необходимо сделать при регистрации активацию по коду подтверждения, который должен приходить по почте. Как можно сделать, чтобы код подтверждения безопасно генерировался на сервере и отправлялся по почте?

Реализовать это не проблема, я не могу продумать как сделать, чтобы была безопасность.
  • Вопрос задан
  • 170 просмотров
Пригласить эксперта
Ответы на вопрос 2
@mitya_k
Самое простое это создать таблицу для авторизационных кодов с временем жизни (ttl):
id | auth_code | ttl
1  | 345679    | 2023-01-18 20:03:00

У каждого пользователя должен быть уникальный код и в каждый момент времени должен быть только один код для пользователя (при выдаче нового, старые удаляй).
Когда пришел запрос на авторизацию проверяй, что
body.user_id === user_id && body.auth_code === auth_code && new Date() < new Date(ttl)

Надо не забывать, что использованные коды надо удалять.
Ответ написан
@fire64
Разработчик Unity
А в чем сложность?
Что-нибудь типа:
$code = md5($mail.time().$salt.rand())
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы