Генераторы · случайностьГенератор случайных чисел и жребий

Случайное число, жребий из списка, деление на команды, случайный порядок, кубики и монетка. Криптостойкая случайность, результат можно проверить — и всё в браузере.

Список участников, seed и результаты не уходят на сервер
01Розыгрыш02Честность03О случайности04Вопросы05Похожие
01

Розыгрыш

пять режимов, один результат
диапазон, N штук, без повторов

при одном числе повторяться и сортировать нечего — обе настройки включатся, когда чисел станет больше

Быстрый диапазон
Результат
Нажмите «Разыграть» — результат появится здесь
Оговорка

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

История сессии

Пока пусто — нажмите «Разыграть». История живёт только в этой вкладке.

02

Честный розыгрыш

обещание → розыгрыш → проверка
Seed розыгрыша

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

Отпечаток SHA-256 · seed + ввод
Розыгрыша ещё не было — отпечаток можно объявить прямо сейчас.
Как проверить
01До розыгрыша

Объявите отпечаток: скиньте эту строку в чат или под пост. Она зависит от seed и от списка участников — подменить их после этого незаметно уже нельзя.

02Розыгрыш

Нажмите «Разыграть». Номер розыгрыша прибавляется к seed, поэтому каждое нажатие даёт новый результат — и каждый из них воспроизводим.

03После

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

04Проверка

Любой открывает эту страницу, вводит тот же seed, тот же список и тот же номер — и получает тот же результат. Совпало — розыгрыш не переигрывали.

03

О случайности

Криптостойкая случайность

Основа
crypto.getRandomValues
Числа берутся из криптографического источника браузера, а не из Math.random(), последовательность которого предсказуема при известном состоянии генератора.

Без перекоса

Честность
rejection sampling
Наивный остаток от деления слегка чаще выбирает начало диапазона — на жребии это значит, что первые в списке выигрывают чаще. Неподходящие значения отбрасываются, и шансы строго равны.

Seed и повторяемость

Проверка
seed#3 = тот же результат
Розыгрыш идёт от seed и номера попытки. Зная их и список, любой повторит розыгрыш и получит тот же итог — результат проверяется без доверия к нам.

Обещание до розыгрыша

Протокол
SHA-256 отпечаток
Объявите отпечаток заранее, а seed — после. Так видно, что ни список, ни seed не подменили задним числом; у конкурентов это делает сервер, здесь — браузер.

Без повторов

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

Приватность

Локально
без сервера
Участники, seed и результаты остаются во вкладке. Ничего не отправляется и не сохраняется — история розыгрышей исчезает при обновлении страницы.
04

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

Укажите «от» и «до», сколько чисел нужно, и при необходимости включите «без повторов» — тогда одно и то же число не выпадет дважды. Границы можно задавать отрицательные, а стрелками рядом с полем значение меняется на единицу, с зажатым Shift — на десять. Числа берутся из криптографического источника браузера, а не из `Math.random()`.

Обновлено

«» добавлен в избранное