Чуть менее двух месяцев назад мы с Miel Design разрабатывали сайт МК Диетпродукт. В требованиях к сайту был пункт относительно создания конкурсов, добавления материалов на конкурсы (фогографии, видеоролики) и выставления оценок конкурсантам зарегистрированными пользователями. Факт того, что будут накручивать, стал ясен, когда объявили призы за первые места. Что за призы?

Зеркальный фотоаппарат за первое место в конкурсе фотографий и видеокамера за первое место в конкурсе видеороликов.

Скажите, вы бы не отказали себе в удовольствии получить видеокамеру, просто порегистрировав e-mail адресов и поголосовав за самого себя? Никто не отказал себе в этом удовольствии, кто-то больше, кто-то меньше.

В результате опыт, полученный при проведении данного голосования, следующий.

Первое, техническое. Необходимо лимитировать количество голосов с одного ip-адреса и одного почтового домена.

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

Вопрос домена сложный, двояковыпуклый. С одной стороны, ясно, что блокировать mail.ru бессмысленно. С другой стороны, допустим, у меня есть домен и хостинг. Нарегистрировать ящиков (а точнее, редиректов) для регистрации на сайте, а также написать скрипт для вычленения паролей из писем о регистрации мне не составит труда. Соответственно, необходимо либо составить список публичных почтовых сервисов, а для остальных установить лимит, либо действовать более глобально: генерировать уникальные тексты писем, не писать пароль в письме, требовать установить пароль после входа, после чего сбрасывать сессию и прочее.

Короче говоря, первым пунктом мы пытаемся усложнить процесс автоматизации получения учетных данных и их ввод.

Второе, психологическое. Всегда найдутся те, кто будет кричать, что голосование нечестное.

Нельзя запустить голосование и самоустраниться от процесса до подведения результатов. И конкурсанты, и гости, должны постоянно чувствовать: администратор где-то здесь, он бдит. В особо критических ситуациях администратор должен покидать кулисы и раздавать провинившимся пендали, после чего раздавать всем остальным объяснения относительно "что было", "что сделал". Желательно в форме, понятной для простого человека, который, тем не менее, отметит, что за процессом пристально следят.

Третье, кардинальное. Нельзя идентифицировать человека в качестве уникального по паре логин-email.

Человек, кровно заинтересованный в результате, нарегистрирует еще и еще email адресов. Он будет вводить руками все адреса и пароли, лишь бы получить нужный ему голос.

Что делать?

Добавлять, например, номер телефона.

Голосующего в Интернете человека без мобильника представить сложно. Рассылки СМС сейчас не так много стоят. Отсылка одного СМС-сообщения в масштабах затрат на акцию - копейки. Зато это гарантирует ограничение голосования заинтересованным лицом в масштабе 3-10 голосов, по количеству родственников/друзей, на телефоны которых конкурсант имеет возможность выслать СМС.

В заключение.

Контролируйте важное для вашей компании голосование от начала и до конца. Спорные моменты решайте объективно, а не на основании субъективного мнения о конкурсантах, вроде "эта картинка мне по душе, а эту нафиг".

Удачного проведения голосований вам и вашим сайтам.