2009-12-13 4 views
6

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

Я хотел бы создать общедоступную систему голосования, которая по-прежнему надежна. Возможно ли это сейчас?

РЕДАКТИРОВАТЬ Доли умеренно высокая правильность, то есть человек-проверка, и один голос за пользователь. Полноценный логин попросит слишком много о пользователе, учитывая его роль (избиратель)

Кроме того, если это невозможно, как вы можете выявить мошенничество с голосованием после факта? Могла ли работать модель википедии?

Спасибо, Matt Mueller

+2

Все зависит от мотивации для того, чтобы кто-то смог подстроить вашу систему. Его можно легко сделать «надежным», если интерес противников к его разлому составляет 100 долларов, менее легко, если интерес оппонентов к его взлому составляет 100 тысяч долларов. Даже системы CAPCHA были разбиты определенными группами (которые не имели ничего лучшего с их временем): http://musicmachinery.com/2009/04/27/moot-wins-time-inc-loses/ –

+0

хорошая ссылка, Паскаль ! –

+0

Ничего себе .. ха-ха. Плохое время ..Я редактирую свой пост, чтобы добавить дополнительную информацию. – Matt

ответ

8

Как вы сказали, вам нужно обрабатывать поведение робота.

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

Возможно, вам нужно отобразить некоторое изображение CAPTCHA для проверки голосов людей. Не может быть так сложно для пользователей, поскольку он должен голосовать только один раз.

EDIT: Как обеспечить соблюдение одного голоса на пользователя?

Вы можете:

  • Спросите действительный адрес электронной почты и отправить ссылку на голосование
  • Чтобы войти вашего пользователя в систему и пусть голосовать
  • Пусть пользователя голос и сохранить куки
  • Пусть пользователь голосует и запрещает пользователя IP

Все эти варианты имеют слабость, поэтому вы никогда не будете уверены.

Чтобы справиться с этой проблемой «определенно», вам, вероятно, потребуется связать свою виртуальную идентификационную информацию с ее точной идентификацией подлинной. Это можно сделать, попросив личную информацию и сохранив ее. Но это создает совершенно новую проблему.

+0

Хорошая идея на CAPTCHA! Итак, теперь вы знаете, что это не бот. Как вы мешаете тому же пользователю голосовать несколько раз? – Matt

+0

Cookies! ... Я имею в виду куки. Очистить его достаточно, чтобы избежать большинства повторных голосований. – Tordek

+0

Спасибо за ваши мысли. Одна вещь ... привязка звучит как логин. Это одна вещь, которую я пытаюсь избежать. Цель состоит в том, чтобы сделать ее максимально простой для голосования - я просто хочу сохранить ее законной системой. – Matt

2

Прежде всего, убедитесь, что голосование использует POST, чтобы предотвратить использование роботов и клиентов, кэширующих кеширование.

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

+0

Хороший звонок. Как насчет сеансов? – Matt

+0

Сессии требуют уникального значения для отправки обратно на сервер либо в файл cookie, либо в URL-адрес. В любом случае его можно удалить. –

+0

Ах да. Хороший звонок Ричарда. – Matt