| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Методы борьбы со спамом > Мой вариант CAPTCHA или теста Тьюринга |
| Автор: merge 2.3.2008, 16:22 |
| В данный момент пишу свой движок для галереи обоев. Принялся к странице регистрации пользователей. Думал по поводу - использовать тест тьюринга или нет. и тут мне пришла в голову мысля. Мы имеем: Отсортированую галерею по группам с картинками. Идея: Создать таблицу соотношений категорий и то, чего на них изображено. Давать пользователю опознать на изображении не текст, а картинку. т.е. при регистрации выбираем случайным образом картинку, отображаем. Выбираем несколько случайных лишних вариантов ответа. т.е. пользователю необходимо не сидеть и распозновать картинку, а тыкнуть на правильный вариант ответа. При этом картинку можно поворачивать, накладывать шум, искажать. Пройти человеку такой тест будет гораздо легче, чем разгадывать текст. А машине гоораздо сложнее узнать ответ. Если минусы будут исключены, тогда я думаю, можно создать сервис, который? Пока-что накидал болванку, как это примерно будет выглядеть у меня. http://ipicture.ru/Gallery/Viewfull/752884.html Минусы, которые вижу
|
| Автор: merge 2.3.2008, 17:44 |
| Я немного подумал насчет реализации данной штуки. У меня на сайте довольно легко установить соотношение миниатюры с индексом картинки. А т.к. раньше я хотел вызывать миниатюру в виде get_image.php?pid=23, то мне этот вариант не шел. Сейчас-же можно сделать такую штуку. Вызывать скрипт без параметров, который генерирует не только миниатюру, прошедшую через фильтры, но и варианты ответов! Прямо на изображении. при этом записывает уникальный идентификатор сессии и правильный ответ в бд. При посылании POST запроса на проверку выбор пользователя просто будет сравниваться с бд. При невозможности распознать картинку, можно будет запросить увеличенную версию. Примерное видение реализации я накидал в фотошопе ) http://ipicture.ru/Gallery/Viewfull/754315.html PS после всего подумал, что нафиг увеличеную версию. лучше линк заменить на "показать другое изображение", которое перегружало-бы просто картинку-тест с другим изображением. |
| Автор: sergejzr 3.3.2008, 17:20 |
| Такое уже предлагалось. проблема в расширяемости. Человек может "обучить" картинкам бота и продётся их часто менять. На мой взгляд самая прикольная капча реализована тут: http://www.download-zone.org/33968 (взял первый попавшийся линьк) Надо сказать, сколько предметов отображено. Причём порядок и позиция ("нахлёст") генерируются как попало. |
| Автор: merge 3.3.2008, 19:29 |
| изображенная тмам каптча довольно хилая. даже проще, чем текстовые. а вы попробуйте имея базу картинок в 10к элементов определить программно правильный ответ. Берется только две картинки. одна из них верная. обрезаются, размываются края. изменяется размер, наклон. накладываем одно на другое http://ipicture.ru/Gallery/Viewfull/767469.html |
| Автор: sergejzr 3.3.2008, 19:41 |
| С наклоном - возможно. А размер и края - не проблема для алгоритмов сравнения. (В принципе и наклон тоже, если картинки сильно по цветовой гамме отличаются). И 10к обучить можно тупо на автомате сколько получится, остальное ручками. Методы решения капчи (в том числе за мани) есть http://forum.vingrad.ru/news/topic-196807/hl/captcha/index.html Кстати сравнения делаются по частотам, а им и угол и края и размер по барабану. Насколько я знаю, алгоритмов определять изображения "внахлёст" пока нет. Она не слишком сложная, не спорю, но тут уже надо немного фантазии, тот же угол наклона, разные цвета. Добавлено через 46 секунд Но твоя капча безусловно удобнее текстовой. Я бы выбрал именно её. |
| Автор: merge 3.3.2008, 19:54 |
| я поэксперементировал с распознованием, погоняя через прожку профильтрованые изображения. Наибольший эффект "нераспознования" дает потеря информации. А еще с этим если загнать на обрезаный кусок левую информацию. Ну если теоретически поразмыслить, что нужно сделать для того, чтобы получить исходное изрбражение, которое пихнуть в функцию снятия маски для последующего сравнения с базой? выделить прямоугольник изображения на верхнем слое. Алгоритм для определения краев двух изображений, которые явно не видны мне представляется очень и очень сложным. PS может можно это все в обход пройти? =) ЗЗЫ я просто хочу как можно более лучше проработать наиболее значимые аспекты и потом приняться за разработку |
| Автор: maxim1000 3.3.2008, 21:41 |
| ИМХО, стоит рассмотреть ещё вопрос количества вариантов ответа: в случае текстового подхода вариантов масса в случае "картиночного" - меньше, и, насколько я понимаю, это критично с точки зрения удобства я в таких делах не специалист, но мне кажется, появляется возможность "взять количеством", просто отвечая случайным образом... |
| Автор: merge 4.3.2008, 07:32 |
| ну количество вариантов я думаю увеличить до 5-6. в капче не это важное. эти мелочи можно продумать попозже. главное как стоек алгоритм преобразования картинки. именно с этой точки зрения я прошу оценить тип фильтра http://forum.vingrad.ru/index.php?showtopic=198836&view=findpost&p=1431864 |
| Автор: Mayk 4.3.2008, 09:16 | ||
Да. Где гарантия что случайные сгенерированные ответы не будут правильными? А то выведутся варианты "животное", "тигр","млекопитающее","рысь","пантера", а в фауне юзер не бум бум. вот и сиди, гадай. Добавлено @ 09:19
Ну и чо это? Выпрыгнувшая рыба? Летящая птица? Куча валунов? Дыра во льду? Такая капча меня точно за робота воспримет |
| Автор: merge 4.3.2008, 14:18 | ||||
Это не критично. для решения такого вопроса нужно ответы делать более общными. примеры я привел в скрине. животных можно разделить на кошек, собак, птиц. если ты не гуманоид, таких животных различишь.
методом исключения =) есть картинки, которые не сильно хорошо подходят. да, не спорю, нужно отбирать хорошие. это не критично. Но и в текстовой капче есть варианты, которые человек не может воспринять. жмешь на линк - "показать другую". Не это главное. я вопрос задал в посте http://forum.vingrad.ru/index.php?showtopic=198836&view=findpost&p=1432169 |
| Автор: Artemon 10.5.2009, 21:15 |
| [УДАЛЕНО] |
| Автор: vovatrix 14.5.2009, 22:49 |
| Как вам вариант предоставить пользователю следующую задачку: 1) Дано, справо 4 картинки, слева 4 картинки. Нужно выбрать две, на которых изображено одно и тоже животное. 2) Дано, слева слово, например "Кот", с права множество картинок на одной из которых должен быть изображон кот. Нужно выбрать соответсвующую картинку. |
| Автор: LSD 19.5.2009, 14:05 |
| Нужен большой, постоянно обновляемый банк картинок. |
| Автор: Dims 27.7.2009, 19:50 | ||
Работы будет не больше, чем для создателя защиты -- ведь он должен будет все эти 10к картинок как-то классифицировать |