Розыгрыш по номерам участников

Участники пронумерованы — комментарии под постом, заявки, билеты. Страница создаётся заранее, ссылка раздаётся участникам, итоги подводятся один раз и не переигрываются.

Создайте страницу розыгрыша

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

На сервере сохранятся только диапазон, условия и результат. Никаких имён и списков — номера известны заранее, поэтому подменить их невозможно.
Если указать время, итоги подведутся сами при первом открытии страницы после него. Оставьте пустым — подведёте вручную.

Как это работает

Три шага и никаких споров

Шаг 1. Страница создаётся до розыгрыша. Вы указываете диапазон номеров и условия, получаете постоянную ссылку и публикуете её в посте с конкурсом. На этот момент победитель неизвестен никому, включая вас.

Шаг 2. Итоги подводятся один раз. Кнопка доступна только по вашей личной ссылке и срабатывает единожды. Можно назначить время — тогда результат определится сам при первом открытии страницы после него.

Шаг 3. Любой пересчитает. После итогов публикуется случайное зерно и формула. С тем же зерном и тем же диапазоном расчёт повторит кто угодно и получит те же номера.

Почему без списка

Номера вместо имён

Участники конкурса почти всегда уже пронумерованы: комментарии идут по порядку, заявки лежат строками в таблице, у билетов есть номера. Значит списка имён на сервере не нужно вовсе.

Это лучший из возможных вариантов по персональным данным: мы не храним ни имён, ни ссылок на профили, ни контактов. Только диапазон, условия, время и результат. Подменить номера невозможно — они были известны заранее.

Если участники не пронумерованы и у вас есть именно список, воспользуйтесь выбором победителя: там список фиксируется отпечатком, а показывать его на странице необязательно.

Просто получить случайное число без публикации — генератор случайных чисел.

Вопросы

Частые вопросы

Чем это лучше обычного генератора чисел?

Обычный генератор выдаёт число и всё: доказать, что вы не крутили его двадцать раз, невозможно. Здесь страница с диапазоном и условиями создаётся до розыгрыша и получает постоянный адрес, а итоги подводятся ровно один раз. Ссылку публикуют в посте с конкурсом заранее, и участники видят, что результат появился после, а не был выбран задним числом.

Какие данные участников попадают на сервер?

Никакие. Сохраняются только диапазон номеров, условия, время и результат. Списка имён здесь нет вообще: участники и так пронумерованы, а номера подменить невозможно. Это самый чистый по персональным данным способ провести конкурс.

Что значит «отложенное подведение итогов»?

Можно назначить дату и время: результат определится сам при первом открытии страницы после этого момента. Удобно, когда конкурс заканчивается ночью или вы просто не хотите быть у компьютера. Планировщик на хостинге для этого не нужен.

Как участник проверит, что номера выбраны честно?

После итогов публикуется случайное зерно. Для счётчика i считается HMAC-SHA256(i, зерно), первые восемь знаков дают число, значения из неполного хвоста диапазона отбрасываются, а остаток от деления на размер диапазона даёт номер. Повторив расчёт с тем же зерном, любой человек получит те же номера.

Зачем отбрасывать часть значений?

Иначе выпадали бы смещённые результаты. Диапазон почти никогда не делит 2³² нацело, и без отбраковки младшие номера получали бы чуть больше шансов. На конкурсе в полторы тысячи участников это уже заметный перекос, поэтому «хвост» мы отбрасываем и берём следующее значение.

Сколько хранится страница?

Год с момента создания. Диапазон, зерно, время и победители остаются неизменными всё это время — ссылку можно оставить в посте, и она не превратится в битую.

Дальше

Другие инструменты

Скопировано