Русские документы
Ежедневные компьютерные новости RSS rusdoc.ru  Найти :
http://www.rusdoc.ru. Версия для печати.

Каптча: спрайты, минные поля и лицензирование

Раздел: Programming / Технологии разработки @ 23.06.2008 | Ключевые слова: спам анти-спам капча captcha

Источник: habrahabr

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

CSS sprites1

CSS sprites каптча

Суть проста изображение с каптчей содержит 20–30 символов, только 4–5 из них идущие подряд являются кодом, начинаются они то с 1го символа то с 20го в общем с произвольного, остальное — мусор, с помощью позиционирования бекграунда в слое видны только нужные символы. Человек введёт их, бот распознает и введёт все 30. Вуаля! ;)

Минные поля

Хорошо известно, что все боты используют имена полей такие как name, email, message и т.п. вариантом может стать создание полей со случайным именем, например «AjHA8». Для каждой сессии генерируются случайные имена. У этого способа есть два минуса:

  1. Не работает автозаполнение.
  2. Боты-плагины смогут вычислить поля через яваскрипт.

Чтобы не было проблем с автозаполнением имена стандартных полей name и email не меняются, а меняются у чекбоксов, радио-кнопок, списков, текстареалов или кнопок (например кнопки отправки сообщения).

Лицензирование

Опять же идея проста: пользователь вводит электронную почту в форму отправки, ему на почту приходит ссылка для подтверждения отправки сообщения, после подтверждения, пользователь получает лицензию на 5 сообщений с этим емейлом, если в этих пяти сообщениях небыло спама, он получает лицензию на 10 сообщений, затем на 50, 100, 1000, хотя, думаю, после первой сотни можно и дать ему анлим ;) Таким образом пользователь не устанет вводить каптчу, не уйдёт с вашего сайта из-за нежелания регистрироваться и не заспамит его.,3

Примечание

1 — после написания статьи, подумал, что этот способ кому-то уже приходил в голову.2

2 — после написания сноски, подумал, что и остальные способы, наверное, тоже кому-то уже приходили ;)

3 — эта схема работает и для зарегистрированных пользователей, если нужно.



Вернуться в раздел: Programming / Технологии разработки
© Copyright 1998-2012 Александр Томов. All rights reserved.