yurial писал(а):
Ваш вариант отличается от моего наличием одноразового идентификатора, и случайных данных при шифровании подтверждения. Впрочем, он мне нравится.
Это не случайные данные - это зашифрованный одноразовый идентификатор пользователя.
yurial писал(а):
Далее id записи - автоинкрементный счетчик.
ps: Зачем одноразовый идентификатор? Почему не отдавать пользователю id его записи в БД.
pps: Для поиска своего варианта можно хранить локально 'data' или отдавать id записи.
Я где-то описывал уязвимость варианта при котором идентификаторо (хоть автоинкрементный, хоть любой другой) формирует сервер. В таком случае относительно легко подделать результаты голосования с сервера при том что пользователи это не заметят. Например, всем пользователям, проголосовавшим "неправильным" образом выдается один и тот-же идентификатор на один голос. Тогда все будут уверены что проголосовали правильно при том что в результатах за "неправильный" вариант будет подан всего один голос.