Генератор истинно случайных чисел — атмосферный шум

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

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

Генератор истинно случайных чисел — атмосферный шум
Получайте случайные целые числа из атмосферного шума RANDOM.ORG или мгновенно создавайте их криптографически защищённым генератором браузера — с настройкой диапазона, количества и уникальности.

Получается напрямую от RANDOM.ORG, который извлекает случайность из атмосферного радиошума. Браузер обращается к random.org сам — без промежуточного сервера.

О генераторе истинно случайных чисел

Компьютеры — детерминированные машины, поэтому «случайные» числа обычно создаются алгоритмом: генератор псевдослучайных чисел расширяет начальное зерно в длинную последовательность, статистически похожую на случайную. Этот инструмент предлагает два действительно разных источника и честно объясняет различие между ними. Режим истинной случайности получает числа от RANDOM.ORG — сервиса, работающего в Дублине с 1998 года. Он измеряет атмосферный радиошум с помощью группы приёмников и преобразует его в случайные биты. Атмосферный шум — физический хаотический процесс: числа не вычисляются из какого-либо зерна, не воспроизводятся повторным запуском программы и непредсказуемы даже при полном знании оборудования. Именно это называют истинной случайностью. Классический HTTP-интерфейс RANDOM.ORG разрешает кросс-доменные запросы, поэтому браузер получает числа прямо с random.org — без аккаунта, ключа и промежуточного сервера. Бесплатная квота предоставляется для каждого IP-адреса посетителя (примерно миллион случайных битов в день), что намного больше потребностей обычного использования. Если сервис недоступен или дневная квота исчерпана, инструмент сообщает об этом и переключается на локальный источник, а не завершается с ошибкой. Мгновенный режим использует crypto.getRandomValues() — криптографически защищённый генератор псевдослучайных чисел (CSPRNG), встроенный во все современные браузеры. Операционная система постоянно инициализирует его на основе аппаратных событий; он спроектирован так, чтобы никакие практически осуществимые вычисления не могли предсказать его вывод или отличить его от истинной случайности. Он работает офлайн, бесплатен и сразу возвращает результат. Для почти любых практических целей — игр, розыгрышей, выборок, тестирования и выбора лотерейных чисел ради развлечения — CSPRNG ничем не хуже атмосферного шума. Честное различие имеет философский и эксплуатационный, а не статистический характер: истинную случайность невозможно воспроизвести даже в принципе, что важно для некоторых научных протоколов и доказуемой честности публичных розыгрышей; качество CSPRNG зависит от предположения, что лежащий в его основе шифр не взломан. Оба режима одинаково заботятся о справедливости. Локальная генерация использует выборку с отклонением, поэтому каждое целое в диапазоне имеет ровно одинаковую вероятность — смещения по модулю нет. Уникальный режим выбирает без возвращения, как шары с номерами из барабана; проверка гарантирует корректность запроса: минимум должен быть меньше максимума, а уникальная выборка не может запрашивать больше значений, чем содержит диапазон. Для обоих источников есть ограничение: числа поступают в браузер как обычные данные. Секреты вроде паролей и ключей создавайте локально и никогда не получайте через сетевой сервис.

Примеры случайных чисел

Типичные розыгрыши и настройки, которые их создают.

НастройкиРезультатПримечания
Мин. 1, макс. 6, количество 2Два броска кубика, например 3 и 5Повторы разрешены по умолчанию — два одинаковых броска являются допустимым результатом.
Мин. 1, макс. 49, количество 6, уникальныеШесть разных чисел в стиле лотереиВыборка без возвращения повторяет принцип работы физических лотерейных машин.
Мин. 0, макс. 255, количество 16Шестнадцать случайных значений байтовУдобно для тестовых данных. Для настоящих криптографических ключей используйте локальный офлайн-генератор.
Мин. 1, макс. 30, количество 30, уникальныеВсе тридцать значений в перемешанном порядкеЕсли количество равно размеру диапазона, выборка превращается в честное перемешивание — удобно для определения порядка участников.

Как генерировать случайные числа

  1. Выберите источник: мгновенный локальный CSPRNG или атмосферный шум RANDOM.ORG, который браузер получает напрямую.
  2. Введите минимум и максимум диапазона — обе границы включаются в выборку.
  3. Задайте количество значений (до 100) и включите параметр уникальности, если значения не должны повторяться.
  4. Нажмите кнопку генерации и изучите результат; расположенный ниже значок подтверждает фактически использованный источник.

Частые вопросы о генераторе истинно случайных чисел

Что делает число действительно случайным?
Истинная случайность возникает при измерении непредсказуемого физического процесса — здесь это атмосферный радиошум, который измеряет RANDOM.ORG, — а не при работе алгоритма. Зерна нет, поэтому последовательность невозможно пересчитать или предсказать даже в принципе.
Достаточно ли CSPRNG браузера для повседневного использования?
Да. crypto.getRandomValues() инициализируется операционной системой на основе аппаратной энтропии и спроектирован так, чтобы быть вычислительно неотличимым от истинной случайности. Для игр, розыгрышей, выборок и симуляций практическая разница с атмосферным шумом отсутствует — мгновенный режим является разумным вариантом по умолчанию.
Обращается ли мой браузер к RANDOM.ORG напрямую?
Да. Классический HTTP-интерфейс RANDOM.ORG разрешает кросс-доменные запросы, поэтому параметры — диапазон, количество и настройка уникальности — идут из браузера прямо на random.org, а числа в обычном тексте возвращаются напрямую. Через наши серверы ничего не проходит. Сервис выделяет каждому IP дневную квоту бесплатных случайных битов; если она исчерпана или сервис не работает, инструмент сообщает об этом и переключается на локальный CSPRNG.
Есть ли у этих случайных чисел какой-либо перекос?
Нет. Локальный генератор использует выборку с отклонением и отбрасывает исходные значения, которые исказили бы распределение, поэтому каждое целое в диапазоне имеет одинаковую вероятность. RANDOM.ORG применяет собственое устранение смещения к атмосферным измерениям и публикует постоянные статистические аудиты.
Что делает параметр уникальности?
Он выбирает без возвращения, поэтому ни одно значение не появляется дважды — как номерные билеты, которые достают из шляпы. Поэтому количество не может быть больше числа целых в диапазоне; инструмент проверяет это до выборки.
Можно ли использовать эти числа для паролей или криптографических ключей?
Для любых секретов используйте мгновенный режим: эти значения не покидают ваше устройство, хотя специализированный генератор паролей подходит лучше. Никогда не получайте секреты через сетевой сервис, включая RANDOM.ORG: значения, переданные по сети, непригодны для ключей, какими бы случайными они ни были.