Лучший способ однозначно идентифицировать пользователя

Я создаю функцию Like / Dislike. Для этого мне нужно идентифицировать конкретного пользователя, которому нравится или не нравится сообщение. У меня есть идея, что без входа в систему это не может быть сделано отлично, но то, что ближе всего к совершенной технике, проблемы, о которых я говорю, приведены ниже:

  • Файлы cookie можно очистить и изменить браузер в браузере
  • У большинства пользователей нет специального публичного IP-адреса, и их IP-адрес продолжает меняться для каждой сессии
  • комбинация файлов cookie и IP может также не служить цели

Итак, какой метод я должен использовать для его реализации?

Язык, который я использую для этого, – PHP

Недавно я прочитал статью об этом вопросе и был удивлен, сколько методов существует для такой задачи. IP и cookies – это всего лишь «верхушка айсберга». Посмотрите на evercookie , js-библиотеку, которая создает «чрезвычайно стойкие файлы cookie».

Я думаю, что лучшим по-прежнему остается куки-файл, но не идеальный, но если вы не хотите использовать механизм входа в систему, то cookie – лучший.

Вход был бы лучшим, но если вы не можете следовать этому маршруту, вы можете использовать комбинацию файлов cookie, IP и других элементов. При наличии достаточно большой комбинации параметров вы могли бы идентифицировать пользователей с довольно хорошей точностью (даже если бы не 100%).

Это очень интересно и может указать вам в правильном направлении.

Учитывая достаточную информацию, вы должны иметь возможность однозначно идентифицировать большинство браузеров. Это не мешает людям менять браузеры. Ссылка ниже объясняет больше.

https://panopticlick.eff.org/

Лучше всего сделать интеграцию с Facebook.

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

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

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

Рассмотрим все варианты идентификации:

Нельзя использовать IP: у вас нет контроля над всеми NAT и динамическими IP-адресами между сервером и браузером.
Можно использовать файлы cookie: у вас есть почти полный контроль над ними. (Лучший вариант здесь)
Можно использовать идентификацию пользователя: но вы не хотите использовать их здесь. Вместо этого вы можете использовать его вариант. Внесите его, введите его идентификатор электронной почты. Я не могу думать ни о какой другой идентификации пользователя без ввода пользователем.

Если вы еще этого не сделали, вы должны увидеть, какие флэш-куки могут предложить – http://en.wikipedia.org/wiki/Local_Shared_Object

На мой взгляд, они ближе всего к тому, что вам нужно.