Мне дали домашнее задание, в котором мне нужно создать капчу для входа в раздел «Комментарии».
У меня капча работает нормально, нет проблем. Нам также поручено вести учет неудачных попыток ввода капчи. Нет проблем.
Вот моя проблема. Нам говорят, что пользователю разрешено пробовать столько раз, сколько он пожелает, однако, если они терпят неудачу 5 раз в течение тридцати секунд, они блокируются на три минуты.
Я понимаю, как отследить 5 пропущенных попыток, но как бы вы отследили время на этой? Если пользователь попробовал 4 раза за 15 секунд, а затем подождал минуту (или меньше, очевидно), часы сбрасываются, и у них есть еще 5 попыток. Кроме того, если они попробуют дважды и подождут 30 секунд, попытки будут повторяться.
Нужно ли мне устанавливать временный куки-файл, вторичный куки-счетчик (для соответствия оригинальному куки-счетчику) и отслеживать запуск вторичного счетчика и просто посмотреть, увеличивается ли этот счетчик до 5? Как бы вы это сделали?
EDIT:
Должен извиниться, видимо, я не совсем понял свою ситуацию. В этом домашнем задании строго оговаривается, что мы должны использовать куки для выполнения этой задачи. На данный момент мы не рассматриваем лучшие практики или меры безопасности, инструктор просто хочет, чтобы нам было удобно с файлами cookie. К сожалению, сеанс не подходит для меня, я должен использовать куки.