Популярное объяснение случайности и сертификации.
Популярное объяснение случайности и сертификации.
Генератор случайных чисел, или RNG, кажется чем-то почти магическим. Нажали кнопку в игре — выпал редкий предмет. Запустили онлайн-слот — барабаны остановились на определенной комбинации. Система выбрала победителя розыгрыша. Криптографический сервис создал ключ, который почти невозможно угадать.
Во всех этих случаях где-то внутри работает механизм случайности. Но настоящая случайность в цифровом мире устроена не так просто, как кажется. Компьютер сам по себе очень любит порядок. Он выполняет инструкции, повторяет операции, хранит данные и выдает результат по заданным правилам. А случайность — это, наоборот, непредсказуемость.

Именно поэтому RNG стал отдельной важной областью, где пересекаются математика, физика, программирование, безопасность, статистика и сертификация.
Ниже разберем простыми словами, как работает генератор случайных чисел, чем настоящая случайность отличается от псевдослучайности, почему честный RNG нельзя просто «проверить на глаз» и как независимые лаборатории подтверждают, что генератор работает корректно.
RNG расшифровывается как Random Number Generator. На русском это генератор случайных чисел.
Его задача — выдавать числа, которые выглядят случайными и не позволяют заранее надежно предсказать следующий результат.
Важно понимать: RNG не обязательно выдает только числа в привычном смысле. Число может быть основой для любого события.
Например:
| Ситуация | Что делает RNG |
|---|---|
| Бросок виртуального кубика | Выбирает число от 1 до 6 |
| Карточная игра | Определяет порядок карт в колоде |
| Онлайн слот | Выбирает остановку барабанов или результат спина |
| Лотерея | Определяет выигрышную комбинацию |
| Видеоигра | Рассчитывает шанс выпадения предмета |
| Криптография | Создает ключи, соли, токены, одноразовые коды |
| Симуляции | Моделирует случайные события в сложных системах |
Если говорить совсем просто, RNG — это механизм выбора из набора возможных вариантов без заранее очевидной закономерности.
Компьютер — машина детерминированная. Это означает, что при одинаковых исходных данных и одинаковой программе он должен каждый раз выдавать одинаковый результат.
Например, если программа выполняет команду:
2 + 2
она не может сегодня получить 4, завтра 5, а послезавтра «почти 4». Она обязана выдать 4.
Такой подход хорош для расчетов, банковских операций, хранения данных, управления техникой. Но для случайности это проблема.
Чтобы получить непредсказуемость, компьютеру нужен источник, который не сводится к простому повторяемому алгоритму. Или хотя бы алгоритм, который настолько хорошо имитирует случайность, что для практического использования его результат невозможно предсказать.
Отсюда появляется два главных вида RNG:
| Вид генератора | Как работает | Где используется |
|---|---|---|
| Истинный генератор случайных чисел | Берет случайность из физического процесса | Криптография, безопасность, сертифицированные системы |
| Псевдослучайный генератор | Использует математический алгоритм и начальное значение | Игры, симуляции, приложения, многие цифровые системы |
Эти два типа часто работают вместе. Физический источник дает начальную энтропию, а математический генератор быстро производит большой поток случайных значений.
На бытовом уровне разница кажется небольшой. Если число невозможно угадать, значит оно случайное. Но технически разница огромная.
Настоящая случайность берется из физических явлений, которые невозможно точно предсказать заранее.
Источниками могут быть:
Такие источники не создаются математической формулой. Они измеряются, очищаются от искажений и преобразуются в биты.
Например, устройство может считывать шум в электронной цепи. Если сигнал выше определенного уровня, записывается 1. Если ниже — 0. Затем эти биты дополнительно обрабатываются, чтобы убрать перекосы.
Псевдослучайный генератор работает иначе. Он берет начальное значение, которое называют seed, и по формуле строит длинную последовательность чисел.
Если seed известен, последовательность можно повторить. Это одновременно и плюс, и минус.
Плюс в том, что повторяемость полезна для тестирования, симуляций и игр. Разработчик может воспроизвести тот же сценарий.
Минус в том, что для безопасности предсказуемость опасна. Если злоумышленник узнает seed или состояние генератора, он может предсказать будущие числа.
Простая аналогия:
| Сравнение | Настоящий RNG | Псевдослучайный RNG |
|---|---|---|
| Источник | Физический мир | Математический алгоритм |
| Повторяемость | Практически отсутствует | Возможна при том же seed |
| Скорость | Часто ниже | Обычно высокая |
| Проверяемость | Требует контроля источника энтропии | Требует анализа алгоритма |
| Основной риск | Плохой физический источник или неверная обработка | Предсказуемый seed или слабый алгоритм |
Seed — это стартовое значение, с которого псевдослучайный генератор начинает работу.
Можно представить PRNG как огромную книгу чисел. Seed говорит, с какой страницы начать читать. Если два человека откроют эту книгу на одной и той же странице, они получат одинаковую последовательность.
Например:
| Seed | Первые результаты генератора |
|---|---|
| 125 | 48, 91, 12, 77, 6 |
| 126 | 83, 4, 59, 21, 90 |
| 125 | 48, 91, 12, 77, 6 |
Это не реальные значения конкретного алгоритма, а упрощенная иллюстрация. Смысл в том, что одинаковый seed дает одинаковый путь.
В игровых движках это часто используют специально. Например, мир в игре может генерироваться по seed. Игрок вводит одно и то же значение и получает тот же ландшафт, те же пещеры, те же ресурсы.
Но в азартных играх, криптографии и финансовых сервисах seed должен быть скрытым, качественным и непредсказуемым.
Энтропия в контексте RNG — это мера неопределенности. Чем больше энтропии, тем труднее предсказать результат.
Если система выбирает между двумя вариантами, например орел или решка, энтропия небольшая. Если она выбирает одно значение из огромного количества вариантов, энтропия выше.
Простой пример:
| Событие | Возможные варианты | Уровень неопределенности |
|---|---|---|
| Монета | 2 | Низкий |
| Кубик | 6 | Выше |
| Карта из колоды | 52 | Еще выше |
| 128 бит случайных данных | 2 в степени 128 | Астрономически высокий |
Для криптографии важна именно большая энтропия. Если ключ создан из слабого случайного источника, его можно подобрать намного быстрее, чем предполагается.
Например, пароль «123456» почти не имеет полезной энтропии, даже если формально состоит из шести символов. А длинная случайная строка из разных символов имеет значительно большую неопределенность.
Сам генератор редко выдает готовый результат вроде «выпала семерка» или «игрок выиграл». Обычно он создает поток чисел или битов. Затем программа преобразует эти значения в нужный формат.
Допустим, нужно смоделировать бросок кубика. RNG может сгенерировать число от 0 до 1, например 0,734. Дальше программа делит интервал на шесть частей.
| Диапазон | Результат кубика |
|---|---|
| От 0 до 0,1666 | 1 |
| От 0,1666 до 0,3333 | 2 |
| От 0,3333 до 0,5 | 3 |
| От 0,5 до 0,6666 | 4 |
| От 0,6666 до 0,8333 | 5 |
| От 0,8333 до 1 | 6 |
Число 0,734 попадает в пятый диапазон, значит результат — 5.
В слотах, карточных играх и лотереях логика похожая, но таблицы соответствий сложнее. Например, разные символы могут иметь разные веса. Редкий символ выпадает реже не потому, что RNG «не любит игрока», а потому что ему соответствует меньшая часть вероятностного пространства.
Для многих задач важно, чтобы все варианты выпадали с равной вероятностью.
Если бросается честная монета, вероятность орла должна быть около 50 процентов, а решки — около 50 процентов. Если виртуальный кубик честный, каждая грань должна выпадать примерно в одном случае из шести.
Но слово «примерно» здесь очень важно.
Если бросить монету 10 раз, можно получить 7 орлов и 3 решки. Это не доказывает, что монета нечестная. Если бросить ее 10 миллионов раз и получить 7 миллионов орлов, это уже серьезный сигнал.
Случайность не обязана выглядеть ровной на маленьких отрезках. Она может давать серии, повторы и неожиданные совпадения.
Например, последовательность:
1, 1, 1, 1, 1
может выпасть при пяти бросках кубика. Вероятность низкая, но она не равна нулю.
Ошибка многих игроков и пользователей в том, что они путают случайность с чередованием. Им кажется, что после пяти проигрышей обязательно должен быть выигрыш. Но честный RNG не «помнит» эмоции человека. Если каждое событие независимо, прошлый результат не заставляет будущий результат измениться.
Независимость означает, что один результат не влияет на следующий.
Если монета честная, после десяти орлов подряд шанс решки на следующем броске все равно остается 50 процентов. Монета не обязана «восстанавливать баланс».
В игровых системах это особенно важно. Игрок может думать:
В классической независимой модели это не так. Если вероятность события равна 1 проценту, то она остается 1 процентом на каждом новом запуске, если правила игры не предусматривают иной механики.
Но существуют системы, где вероятность действительно меняется. Например:
| Механика | Как работает |
|---|---|
| Накопительная гарантия | После определенного числа попыток награда выдается обязательно |
| Pity system | Шанс редкого предмета растет после неудачных попыток |
| Прогрессивный джекпот | Сумма выигрыша увеличивается, но шанс может оставаться фиксированным |
| Турнирный розыгрыш | Вероятности зависят от количества участников и правил |
Поэтому важно читать правила конкретной системы, а не полагаться на ощущение «должно уже повезти».
Настоящая случайность часто кажется человеку неправильной. Наш мозг любит искать закономерности. Он замечает повторы, серии, «знаки» и совпадения даже там, где их нет.
Если человек вручную напишет «случайную» последовательность орлов и решек, он, скорее всего, будет слишком часто чередовать результаты:
О Р О Р Р О Р О О Р
А реальная случайность легко даст что-то вроде:
О О О Р Р Р Р О О Р
Вторая последовательность выглядит менее «случайной», хотя она вполне нормальна.
Это называется психологическим восприятием случайности. Человеку кажется, что случайное должно быть равномерно перемешанным. Но случайность допускает кластеры, длинные серии и странные совпадения.
Именно поэтому честность RNG нельзя оценивать по нескольким личным наблюдениям. Нужны большие выборки и статистические тесты.
Статистические тесты проверяют, похожа ли последовательность чисел на случайную. Они не доказывают абсолютную случайность, но помогают обнаружить перекосы, повторяющиеся шаблоны и слабые места.
Популярные виды проверок:
| Тест | Что проверяет |
|---|---|
| Частотный тест | Равномерность количества нулей и единиц |
| Тест серий | Длину повторяющихся фрагментов |
| Автокорреляция | Связь между значениями на разных позициях |
| Хи квадрат | Соответствие ожидаемому распределению |
| Тест покера | Частоту комбинаций в группах значений |
| Спектральный тест | Скрытые структуры в многомерном пространстве |
| Тесты на сжатие | Насколько легко последовательность сжимается |
| Тесты на период | Через сколько значений последовательность повторяется |
Существуют известные наборы тестов, например Diehard, Dieharder, TestU01, NIST Statistical Test Suite. Они применяются для оценки качества генераторов.
Но важно помнить: прохождение статистических тестов еще не означает, что генератор безопасен для любых задач. Слабый PRNG может выглядеть случайным на тестах, но быть предсказуемым для специалиста, если известен алгоритм или часть внутреннего состояния.
У псевдослучайного генератора есть период. Это длина последовательности до повторения.
Если период маленький, генератор быстро начнет повторяться. Для простых задач это может быть заметно. Для серьезных систем это недопустимо.
Представим генератор, который выдает:
4, 9, 2, 7, 4, 9, 2, 7
Период равен 4. Такой генератор бесполезен, потому что закономерность очевидна.
Современные хорошие PRNG имеют огромные периоды. Например, некоторые алгоритмы способны выдавать последовательности такой длины, что повторение практически недостижимо в реальном времени.
Но большой период сам по себе не гарантирует безопасность. Важны также:
Одна из частых ошибок при работе с RNG — неправильное преобразование диапазона.
Допустим, генератор выдает числа от 0 до 9, а нам нужно получить число от 1 до 6. Новичок может взять остаток от деления на 6.
| Исходное число | Остаток от деления на 6 |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 4 | 4 |
| 5 | 5 |
| 6 | 0 |
| 7 | 1 |
| 8 | 2 |
| 9 | 3 |
Остатки 0, 1, 2, 3 встречаются по два раза, а 4 и 5 только по одному. Получается перекос.
В результате одни исходы становятся вероятнее других. В играх, розыгрышах и криптографии такая ошибка может привести к нечестности или уязвимости.
Правильные методы используют отбрасывание лишних значений, масштабирование без смещения или специальные функции криптографических библиотек.
В азартных играх RNG — сердце системы. Он определяет исходы, но делает это в рамках математической модели игры.
Например, у слота есть RTP, волатильность, таблица выплат, вес символов и правила бонусов. RNG не «решает», сколько отдать конкретному игроку. Он выбирает результат из заранее заданного пространства вероятностей.
RTP означает Return to Player, то есть теоретический возврат игроку.
Если у игры RTP 96 процентов, это не значит, что каждый игрок получит обратно 96 рублей из 100. Это означает, что на очень большой дистанции математическая модель рассчитана на возврат около 96 процентов всех ставок.
На короткой дистанции результат может сильно отличаться.
| Игрок | Ставка | Итог за короткую сессию |
|---|---|---|
| Игрок А | 1000 | Выиграл 5000 |
| Игрок Б | 1000 | Проиграл 1000 |
| Игрок В | 1000 | Вернул 940 |
| Игрок Г | 1000 | Выиграл 150 |
| Игрок Д | 1000 | Проиграл 700 |
Краткосрочные результаты хаотичны. Теоретические проценты проявляются только на огромном количестве ставок.
Честный сертифицированный RNG не должен:
Если система сертифицирована и корректно контролируется, результат должен формироваться по утвержденным правилам и проверенной математике.
В обычных видеоиграх RNG используется не только для выпадения предметов. Он делает игровой мир живым.
Примеры:
Здесь случайность часто балансируют. Полностью независимый RNG может раздражать игрока. Например, если редкий предмет имеет шанс 1 процент, теоретически он может не выпасть и за 1000 попыток. Это честно математически, но неприятно для пользователя.
Поэтому разработчики иногда используют управляемую случайность:
| Метод | Зачем нужен |
|---|---|
| Гарантированная награда после серии неудач | Снижает разочарование |
| Взвешенный выбор | Позволяет управлять редкостью |
| Перемешанный мешок | Убирает слишком длинные серии |
| Динамическая вероятность | Подстраивает темп игры |
| Seed генерация | Позволяет повторять мир или уровень |
Такая случайность не всегда «чистая», но она помогает сделать игру интересной и справедливой с точки зрения опыта.
В криптографии случайные числа особенно важны. Там плохой RNG может разрушить всю безопасность.
Случайность нужна для:
Если случайность слаба, злоумышленник может предсказать ключ или повторить значение, которое должно быть уникальным.
История знает случаи, когда ошибки RNG приводили к серьезным уязвимостям. Иногда проблема была не в алгоритме шифрования, а именно в плохом источнике случайности. Сильная криптография со слабым RNG похожа на сейф с великолепной дверью, но с ключом, который лежит под ковриком.
Для криптографических задач используют CSPRNG — криптографически стойкие псевдослучайные генераторы. Они устроены так, чтобы по части выходных данных было практически невозможно восстановить внутреннее состояние и предсказать будущие значения.
Аппаратный генератор использует физический процесс. Его часто называют TRNG.
Схема работы обычно выглядит так:
Примерный путь данных:
| Этап | Что происходит |
|---|---|
| Источник шума | Возникает физическая неопределенность |
| Оцифровка | Сигнал превращается в поток значений |
| Очистка | Удаляются смещения и повторяющиеся дефекты |
| Тесты здоровья | Проверяется, не сломался ли источник |
| Выдача результата | Система получает случайные данные |
Главная опасность аппаратных генераторов — деградация или внешнее влияние. Если источник шума сломался, стал предсказуемым или подвергся атаке, качество случайности падает.
Поэтому серьезные TRNG оснащают непрерывными проверками. Они должны обнаруживать, что поток стал слишком ровным, слишком повторяющимся или явно ненормальным.
Программные PRNG быстрее и удобнее. Они не требуют отдельного физического устройства для каждого числа. Но им нужен хороший seed.
Обычно операционная система собирает энтропию из разных источников:
Затем эта энтропия попадает в системный пул. Из него приложения получают случайные данные через специальные функции.
Для безопасности важно пользоваться надежными системными источниками, а не самодельными формулами. Простая функция random() из старой библиотеки может быть нормальной для игры в угадай число, но не для создания ключа шифрования.
Сертификация нужна, чтобы не верить разработчику на слово. Независимая лаборатория проверяет, что RNG и связанная с ним игровая или криптографическая система работают по заявленным правилам.
Особенно важна сертификация в сферах, где результат имеет финансовое значение:
Сертификация отвечает на несколько вопросов:
Проверками занимаются независимые лаборатории и сертификационные организации. В игровой индустрии известны такие направления и компании, как GLI, BMM Testlabs, iTech Labs, eCOGRA, Gaming Associates и другие.
Также существуют стандарты и рекомендации, связанные с криптографией и случайностью, например документы NIST, ISO и национальные требования регуляторов.
В зависимости от юрисдикции требования могут отличаться. Одни регуляторы требуют полный аудит исходного кода, другие делают упор на статистические тесты, третьи оценивают всю игровую платформу целиком.
Обычно проверяется не только сам генератор. Проверяется вся цепочка:
| Объект проверки | Почему это важно |
|---|---|
| Исходный код | Можно найти ошибки и скрытые условия |
| Алгоритм RNG | Оценивается качество генерации |
| Seed и энтропия | Проверяется непредсказуемость старта |
| Математическая модель | Сравнивается заявленная вероятность и реальная логика |
| Таблицы выплат | Проверяется RTP и правила выигрышей |
| Защита сервера | Исключается вмешательство |
| Логи | Позволяют расследовать спорные случаи |
| Процесс обновлений | Защищает от подмены после проверки |
Процесс может отличаться, но обычно он включает несколько этапов.
Разработчик передает лаборатории документацию:
Лаборатория должна понимать, что именно проверяется и как результат генератора влияет на итог.
Специалисты изучают, какой генератор используется, как он инициализируется, откуда берется энтропия, можно ли предсказать состояние, есть ли защита от повторов и ошибок.
Если используется слабый алгоритм или предсказуемый seed, система может не пройти проверку даже при красивых статистических результатах.
Генератор запускают на больших объемах данных. Проверяются распределение, серии, корреляции, повторяемость, равномерность и другие параметры.
Количество сгенерированных значений может быть огромным. Это нужно, чтобы увидеть проблемы, которые не заметны на коротком отрезке.
Даже хороший RNG можно испортить неправильным использованием. Поэтому проверяется, как случайное число превращается в итог игры.
Например, если генератор выдает число, а программа выбирает символы барабанов, нужно убедиться, что соответствие честное и не содержит смещения.
Лаборатория оценивает, кто имеет доступ к системе, можно ли изменить параметры, как защищены конфигурации, есть ли контроль версий, подписываются ли файлы, ведутся ли журналы событий.
Для онлайн платформ важно, чтобы оператор не мог незаметно изменить вероятность выигрыша или подменить результат.
Если система проходит проверку, лаборатория выдает сертификат или отчет. В нем указывается, что именно проверено, по каким стандартам, для какой версии продукта и при каких условиях.
Сертификат не означает, что система «навсегда честная». Он относится к конкретной версии и конкретной реализации. Если код меняется, может потребоваться повторная проверка.
Сертификат повышает доверие, но не делает систему магически безопасной навсегда.
Есть несколько важных ограничений:
| Ограничение | Что оно означает |
|---|---|
| Сертификат привязан к версии | После обновления нужна новая проверка или контроль изменений |
| Лаборатория проверяет заявленный объект | Все окружение должно оставаться защищенным |
| Статистика не доказывает абсолютную случайность | Она выявляет известные типы проблем |
| Человеческий фактор остается | Ошибки администрирования возможны |
| Регуляторные требования различаются | Сертификат одной страны не всегда признается другой |
Хорошая сертификация — это не разовая печать на сайте, а часть постоянного контроля.
В некоторых цифровых системах используется подход, который часто называют проверяемой честностью. Идея в том, что пользователь может убедиться, что результат не был изменен после ставки или действия.
Один из распространенных принципов выглядит так:
Смысл в том, что сервер не может изменить секрет после того, как показал его хеш. А пользовательское значение не дает серверу полностью контролировать исход заранее.
Такой подход не заменяет полноценную сертификацию, но добавляет прозрачность. Особенно он популярен в некоторых онлайн играх и криптосервисах.
Нет. Случайность может давать длинные серии. Пять проигрышей подряд или три редких события подряд не являются доказательством обмана.
Не всегда. Если события независимы, вероятность не меняется. Она растет только в системах, где это прямо заложено правилами.
В старых или плохо сделанных системах время могло влиять на seed. В современных защищенных системах простое нажатие в «правильный момент» не дает контроля над результатом.
Сертификат подтверждает корректность работы системы, а не обещает прибыль игроку. Честная игра с математическим преимуществом оператора все равно остается игрой с риском.
Повторы сами по себе нормальны. Нужно смотреть статистику на большой выборке и проверять реализацию.
Обычному пользователю трудно проверить RNG напрямую, но есть косвенные признаки надежности.
Стоит обращать внимание на:
Тревожные признаки:
Чтобы лучше понять RNG, представим мешок с шарами.
В мешке 100 шаров:
| Цвет шара | Количество | Вероятность |
|---|---|---|
| Белый | 60 | 60 процентов |
| Синий | 25 | 25 процентов |
| Красный | 10 | 10 процентов |
| Золотой | 5 | 5 процентов |
Если вытянуть один шар наугад, шанс золотого равен 5 процентов.
RNG в цифровой системе делает похожее. Только вместо физического мешка у него есть диапазон чисел. Например:
Если генератор честно выбирает число от 1 до 100, вероятность каждого цвета будет соответствовать таблице.
Но если генератор чаще выбирает числа от 1 до 60, или если диапазоны заданы неправильно, результат будет искажен. Поэтому проверяют не только генератор, но и правила сопоставления.
Представим, что игрок сделал 20 попыток и ни разу не получил награду с шансом 10 процентов. Это неприятно, но возможно.
Вероятность не получить событие с шансом 10 процентов за 20 независимых попыток равна:
0,9 в степени 20
Это около 12 процентов. То есть примерно каждый восьмой человек может столкнуться с такой серией.
Если попыток 1000, а событие с шансом 10 процентов ни разу не выпало, ситуация уже почти невозможна при честной модели. Тогда стоит проверять данные.
Вот почему лаборатории используют огромные выборки. Личный опыт слишком мал и эмоционален. Статистика требует масштаба.
Сбой RNG может быть разным.
| Тип сбоя | Последствие |
|---|---|
| Генератор повторяет значения | Результаты становятся предсказуемыми |
| Слабый seed | Последовательность можно воспроизвести |
| Смещение распределения | Одни исходы выпадают чаще других |
| Ошибка диапазона | Вероятности искажаются при преобразовании |
| Утечка состояния | Атакующий может предсказывать результаты |
| Поломка источника энтропии | Случайность становится фиктивной |
| Ошибка обновления | Сертифицированная логика заменяется другой |
В серьезных системах должны быть механизмы обнаружения таких проблем. Например, аппаратный генератор может остановить выдачу данных, если поток стал подозрительным. Игровая платформа может блокировать модуль, если контрольная сумма не совпадает с сертифицированной версией.
Случайность сама по себе невидима. Пользователь не может заглянуть внутрь сервера и увидеть, как родилось число. Поэтому доверие строится на трех опорах:
| Опора | Что дает |
|---|---|
| Математика | Понятные вероятности и корректная модель |
| Техника | Защищенная реализация и качественный генератор |
| Контроль | Сертификация, аудит, логи, регуляторный надзор |
Если убрать одну из опор, доверие ослабевает. Хороший алгоритм бесполезен без защиты. Сертификат мало значит, если после проверки код тайно меняют. Прозрачные правила не помогут, если seed предсказуем.
Тема случайности развивается вместе с технологиями.
Можно ожидать роста интереса к следующим направлениям:
Особенно важным становится сочетание прозрачности и защиты. Пользователи хотят понимать, почему результат можно считать честным, а платформы должны доказывать это не словами, а проверяемыми механизмами.
RNG — это не просто кнопка, которая «выбирает что-нибудь». Это сложная система, где важны источник случайности, алгоритм, seed, энтропия, распределение, защита и независимая проверка.
Главные мысли:
Хороший RNG — это не магия и не обещание выигрыша. Это технология, которая делает цифровую случайность честной, непредсказуемой и проверяемой. Именно поэтому вокруг генераторов случайных чисел столько внимания: от качества RNG зависит доверие к играм, лотереям, шифрованию, розыгрышам и множеству сервисов, где одно случайное число может решить очень многое.