Защита от роботов с помощью картинки

  • Автор темы Jason Bourne
  • Дата начала
Статус
В этой теме нельзя размещать новые ответы.
Интересным решением я думаю будет объеденить сказаное выше:

Создать какую-то простую математическую операцию в зависимости от какого-то момента времени (скажем раз в 5-10 минут) и вывести её случайным образом искаженную.

Затем при проверке результата использовать тот-же алгоритм генерации мат. операции и выполнить её, результаты сверить )

В качестве разбавления значений использовать какое-то определенное значение, устанавлимое в скрипте, дабы генерация самой мат. операции не смогла быть повторена извне.

Что скажете? Я разработаю скриптик.

В качестве дополнения:
- операция со скрытым дивом была уже где-то обсждена (простите не могу дать ссылку) и результат был таков что это вообще не мера защиты.
- варианты задания вопроса с элементами радио-кнопок я считаю черезчур громоздкими.
 
Как реализовать механизм защиты от автоматической отправки формы (регистрации или спама) с помощью проверки текста, введенного с картинки?
Можно ли посмотреть где-нибудь реальный пример скрипта?
Засмотри это: Для просмотра ссылки Войди или Зарегистрируйся

Там и сэмпл и много полезной инфы в свое время нашел.
 
Как вариант можно попросить человека ввести только зеленые цифры с картинки, либо 1, 4, 8, или только те которые делятся на 3 без остатка.
 
я дальтоник! обрати внимание )))
 
Так ведь в есть же куча модов именно для этих целей, самый простой из них задает вопрос "Вы БОТ ?"...:)
 
На searchengines была ссылка на этот скрипт:Это бесплатный комплект скриптов на PHP, который позволяет на любую форму установить проверку юзера на человечность. Особенность конфирмера: НЕ НУЖНО использовать сессии при работе! Картинки не генерятся индивидуально для пользователей, но защита вполне достаточная.Описание задесь: Для просмотра ссылки Войди или Зарегистрируйся Пример работы: Для просмотра ссылки Войди или Зарегистрируйся Скачать: Для просмотра ссылки Войди или Зарегистрируйся Это бесплатный комплект скриптов на PHP, который позволяет на любую форму установить проверку юзера на человечность. Особенность конфирмера: НЕ НУЖНО использовать сессии при работе! Картинки не генерятся индивидуально для пользователей, но защита вполне достаточная.
Комплект состоит из: 1. файл confirmer_pic.php, который генерит картинку с нужным числом псевдослучайных символов, меняющихся раз в минуту 2. файл confirmer_include.php, который знает алгоритм генерации картинки и проверяет введенную строчку на правильность. Должен находиться в той же директории, что и (1). 3. файл form.php, пример использования кода. Он инклюдит confirmer_include.php и получает результат проверки в виде переменной $confirmer_result (=0,1) и показывает картинку счетчика $confirmer_pic. Должен находиться в той же директории, что и (1,2), т.к. вызов картинки идет из той же директории. Вы можете это исправить сами. 4. директории с графической подложкой и GIF-картинками буковок. Эта директория прописана в файле confirmer_pic.php, вообще ее желательно прятать от чужих глаз. Все картинки можно менять на свои! Вы можете создать свой конфирмер, использовать свои картинки. Картинка генерится на основе номера минуты, зашифрованного функцией crypt() с параметром $confirmer_salt. Эта строка (фактически: пароль) должна быть одинаковой в скриптах confirmer_pic.php и confirmer_include.php - иначе ничего не получится. Пароль $confirmer_salt снаружи можно подобрать... :) но это очень-очень долго :). В параметре $confirmer_num файла confirmer_include.php задается число буковок, которые надо вводить юзеру в поле. Картинка валидна в течение $confirmer_min минут после ее создания. Просто скрипт confirmer_include.php проверяет все значения, соотвествующие прошедшим минутам. Работает конфирмер просто: 1. В начале скрипта form.php вы инклюдите confirmer_include.php. 2. Если запрос пришел методом GET, он выставляет переменную $confirmer_pic, которая содержит html-код: картинку с пояснением. 3. Если запрос пришел методом POST, он выставляет переменную $confirmer_result, которая равна 1, если юзер ввел правильный код, или 0, если неправильный (в этом случае он устанавливает $confirmer_pic и просит повторить ввод). Анализируете эти данные и делаете свои дела.


Это все хорошо. программа написана грамотно, легко встроить в свою форму или сделать форму из прилагаемого примера, только вот когда я в form action ставлю formmail.php, перестает работать проверка кода. Когда оставляю action пустым, проверка работает. В чем дело понять не могу. Может я что неправильно делаю? Я не спец, но без action в форме не отправить ничего никуда :)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху