Перейти к основному содержанию
Собственный продукт · Веб-сервис · 2026 · В разработке

Честный
рандомайзер

Розыгрыш, в котором организатору не нужно верить на слово. Сервис публикует отпечаток списка участников и случайного зерна до старта, а после розыгрыша раскрывает исходные данные — результат воспроизводится по ним вручную. Шансы у первого и последнего участника одинаковые.

отпечаток списка и зерна до старта
SHA-256
шансы у первого и последнего
равные
розыгрышей и попыток публичны
100%
Контекст

Почему розыгрышам
перестали верить

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

01

Итог виден, а розыгрыш — нет

Участник узнаёт только имя победителя. Как отбирали, в каком составе был список и не добавили ли кого-то после сбора заявок — этого он не видит. Обещание честности приходится принимать на веру, и любой недовольный имеет полное право не поверить.

02

Скриншот генератора ничего не доказывает

Самый частый «пруф» в розыгрышах — запись экрана с колесом или сайтом-генератором. Такую запись можно прокрутить сколько угодно раз и показать удачную попытку. Доказательством может быть только то, что зафиксировано до розыгрыша, а не после.

03

Чужие генераторы дают неравные шансы

Мы разобрали, как устроены популярные рандомайзеры: часть из них опирается на нормальное распределение. На графике это колокол — у участников из середины списка шансов заметно больше, чем у первых и последних. Формально случайно, фактически несправедливо.

04

Один спорный розыгрыш дороже призового фонда

Разбор в комментариях «всё куплено» бьёт по репутации сильнее, чем стоит сам приз. Организатору нужен не красивый интерфейс, а короткий ответ на претензию — ссылка, по которой любой желающий пересчитает результат сам.

05

Недоверие снижает участие

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

06

Проверка должна быть по силам обычному человеку

Криптографическая схема бессмысленна, если её понимают только разработчики. Поэтому кроме технических данных сервис объясняет проверку человеческим языком: что было опубликовано до, что раскрыто после и почему из этого получается именно такой победитель.

Интерфейс

Как это выглядит

Экран розыгрыша: опубликованный отпечаток списка и зерна, число участников, время розыгрыша и победитель
Экран 01

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

До старта на странице виден только хеш: он покрывает список участников и случайное зерно. С этого момента состав зафиксирован. После розыгрыша рядом появляются исходные данные и победитель — страница остаётся по постоянной ссылке и работает как протокол.

Сравнение двух графиков: нормальное распределение в виде колокола и равномерное в виде одинаковых столбиков
Экран 02

Равные шансы вместо колокола

Слева то, что мы нашли в чужих сервисах: шансы участника зависят от того, когда он подал заявку. Справа наш вариант — распределение приводится к равномерному. Проверяли статистическими тестами на миллионах прогонов, отклонение остаётся в пределах погрешности.

Публичная таблица истории розыгрышей: номера, даты, число участников, хеши записей и статус проверки
Экран 03

История, которую видно всем

Сервис хранит не только победителей, но и все попытки. Скрыть неудачный прогон и провести розыгрыш заново незаметно не получится: в истории останется запись. Именно это делает проверяемость привычкой, а не разовой акцией.

Состав

Что внутри
сервиса

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

01Отпечаток до розыгрыша
Список участников и случайное зерно публикуются в виде хеша заранее — подменить их позже нельзя
02Раскрытие после
После розыгрыша сервис показывает исходные данные, из которых получен результат
03Независимая перепроверка
Результат воспроизводится по опубликованным данным без доверия к организатору
04Равномерное распределение
Алгоритм приводит распределение к равномерному: позиция в списке не влияет на шансы
05Протокол розыгрыша
Постоянная ссылка со списком, зерном, временем и итогом — её можно приложить к отчёту
06Публичная история
Все розыгрыши и попытки видны всем: организатора можно оценить не по одному розыгрышу, а по всем
Решения

Что определило продукт

Продуктовое решение

Проверка в один экран, а не инструкция

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

Инженерное решение

Сначала фиксируем, потом раскрываем

Схема commit-reveal: перед сбором заявок сервис фиксирует хеш зерна, после закрытия списка — хеш состава участников, и только затем считает результат. Раскрытие происходит автоматически, у организатора нет технической возможности отложить его до удобного исхода.

Что дальше

Записи в блокчейне

Сейчас гарантией остаётся публичная история на нашей стороне. Мы разрабатываем запись протоколов в блокчейн, чтобы подмену нельзя было выполнить даже с доступом к нашей базе. До готовности этой части сервис честно называет стадию «в разработке».

СтекNext.jsTypeScriptPostgreSQLPython

Роль агентства: Идея, проектирование, алгоритм, дизайн, разработка. Стадия — в разработке: функциональный объём и сроки выхода уточняем по итогам тестирования на пользователях. Python используем для проверки распределения и статистических прогонов алгоритма.

Все работы

Нужен сервис,
которому поверят

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

Обсудить свой проект

Поля со звёздочкой обязательны для заполнения.