Что такое ГСЧ

Топ-2 честных онлайн казино за 2020 год:

Что такое ГСЧ

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

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

Генератор псевдослучайных чисел включён в состав многих современных процессоров (напр., семейства x86)

Криптографические приложения используют для генерации случайных чисел особенные алгоритмы. Эти алгоритмы заранее определены и, следовательно, генерируют последовательность чисел, которая теоретически не может быть статистически случайной. В то же время, если выбрать хороший алгоритм, полученная численная последовательность будет проходить большинство тестов на случайность. Такие числа называют псевдослучайными числами.

Детерминированные ГПСЧ

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

Любой ГПСЧ с ограниченными ресурсами рано или поздно зацикливается — начинает повторять одну и ту же последовательность чисел. Длина циклов ГПСЧ зависит от самого генератора и составляет около 2 n/2 , где n — размер внутреннего состояния в битах, хотя линейные конгруэнтные и LFSR-генераторы обладают максимальными циклами порядка 2 n . Если порождаемая ГПСЧ последовательность сходится к слишком коротким циклам, то такой ГПСЧ становится предсказуемым и непригодным для практических приложений.

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

  • Слишком короткий период/периоды.
  • Последовательные значения не являются независимыми.
  • Некоторые биты «менее случайны», чем другие.
  • Неравномерное одномерное распределение.
  • Обратимость.

В частности, алгоритм RANDU, десятилетиями использовавшийся на мейнфреймах, оказался очень плохим [1] [2] , что вызвало сомнения в достоверности результатов многих исследований, использовавших этот алгоритм.

Из современных ГПСЧ широкое распространение также получил «вихрь Мерсенна», предложенный в 1997 году Мацумото и Нисимурой. Его достоинствами являются колоссальный период (2 19937 −1), равномерное распределение в 623 измерениях (линейный конгруэнтный метод даёт более или менее равномерное распределение максимум в 5 измерениях), быстрая генерация случайных чисел (в 2-3 раза быстрее, чем стандартные ГПСЧ, использующие линейный конгруэнтный метод). Однако, существуют алгоритмы, распознающие последовательность, порождаемую вихрем Мерсенна, как неслучайную.

Лучшие онлайн казино на русском языке:

ГПСЧ с источником энтропии или ГСЧ

Наравне с существующей необходимостью генерировать легко воспроизводимые последовательности случайных чисел, также существует необходимость генерировать совершенно непредсказуемые или попросту абсолютно случайные числа. Такие генераторы называются генераторами случайных чисел (ГСЧ — англ. random number generator, RNG ). Так как такие генераторы чаще всего применяются для генерации уникальных симметричных и асимметричных ключей для шифрования, они чаще всего строятся из комбинации криптостойкого ГПСЧ и внешнего источника энтропии (и именно такую комбинацию теперь и принято понимать под ГСЧ).

Почти все крупные производители микрочипов поставляют аппаратные ГСЧ с различными источниками энтропии, используя различные методы для их очистки от неизбежной предсказуемости. Однако на данный момент скорость сбора случайных чисел всеми существующими микрочипами (несколько тысяч бит в секунду) не соответствует быстродействию современных процессоров.

В современных исследованиях осуществляются попытки использования измерения физических свойств объектов (например, температуры) или даже квантовых флуктуаций вакуума в качестве источника энтропии для ГСЧ. [3]

В персональных компьютерах авторы программных ГСЧ используют гораздо более быстрые источники энтропии, такие, как шум звуковой карты или счётчик тактов процессора. Сбор энтропии являлся наиболее уязвимым местом ГСЧ. Эта проблема до сих пор полностью не разрешена во многих устройствах (например, смарт-картах), которые таким образом остаются уязвимыми. Многие ГСЧ используют традиционные испытанные, хотя и медленные, методы сбора энтропии вроде измерения реакции пользователя (движение мыши и т. п.), как, например, в PGP и Yarrow [4] , или взаимодействия между потоками, как, например, в Java SecureRandom.

Пример простейшего ГСЧ с источником энтропии

Если в качестве источника энтропии использовать текущее время, то для получения натурального числа от 0 до N достаточно вычислить остаток от деления текущего времени в миллисекундах на число N+1. Недостатком этого ГСЧ является то, что в течение одной миллисекунды он выдает одно и то же число.

Примеры ГСЧ и источников энтропии

Источник энтропии ГПСЧ Достоинства Недостатки
/dev/random в UNIX/Linux Счётчик тактов процессора, однако собирается только во время аппаратных прерываний LFSR, с хешированием выхода через SHA-1 Есть во всех Unix, надёжный источник энтропии Очень долго «нагревается», может надолго «застревать», либо работает как ГПСЧ (/dev/urandom)
Yarrow от Брюса Шнайера [4] Традиционные методы AES-256 и SHA-1 маленького внутреннего состояния Гибкий криптостойкий дизайн Медленный
Microsoft CryptoAPI Текущее время, размер жёсткого диска, размер свободной памяти, номер процесса и NETBIOS-имя компьютера MD5-хеш внутреннего состояния размером в 128 бит Встроен в Windows, не «застревает» Сильно зависит от используемого криптопровайдера (CSP).
Java SecureRandom Взаимодействие между потоками SHA-1-хеш внутреннего состояния (1024 бит) Большое внутреннее состояние Медленный сбор энтропии
Chaos от Ruptor [5] Счётчик тактов процессора, собирается непрерывно Хеширование 4096-битового внутреннего состояния на основе нелинейного варианта Marsaglia-генератора Пока самый быстрый из всех, большое внутреннее состояние, не «застревает» Оригинальная разработка, свойства приведены только по утверждению автора
RRAND от Ruptor [6] Счётчик тактов процессора Зашифровывание внутреннего состояния поточным шифром EnRUPT в authenticated encryption режиме (aeRUPT) Очень быстр, внутреннее состояние произвольного размера по выбору, не «застревает» Оригинальная разработка, свойства приведены только по утверждению автора. Шифр EnRUPT не является криптостойким.

ГПСЧ в криптографии

Разновидностью ГПСЧ являются ГПСБ (PRBG) — генераторы псевдо-случайных бит, а также различных поточных шифров. ГПСЧ, как и поточные шифры, состоят из внутреннего состояния (обычно размером от 16 бит до нескольких мегабайт), функции инициализации внутреннего состояния ключом или зерном (англ. seed ), функции обновления внутреннего состояния и функции вывода. ГПСЧ подразделяются на простые арифметические, сломанные криптографические и криптостойкие. Их общее предназначение — генерация последовательностей чисел, которые невозможно отличить от случайных вычислительными методами.

Хотя многие криптостойкие ГПСЧ или поточные шифры предлагают гораздо более «случайные» числа, такие генераторы гораздо медленнее обычных арифметических и могут быть непригодны во всякого рода исследованиях, требующих, чтобы процессор был свободен для более полезных вычислений.

В военных целях и в полевых условиях применяются только засекреченные синхронные криптостойкие ГПСЧ (поточные шифры), блочные шифры не используются. Примерами известных криптостойких ГПСЧ являются RC4, ISAAC, SEAL, Snow, совсем медленный теоретический алгоритм Блюма, Блюма и Шуба, а также счётчики с криптографическими хеш-функциями или криптостойкими блочными шифрами вместо функции вывода.

Примеры криптостойких ГПСЧ

Циклическое шифрование

В данном случае используется способ генерации ключа сессии из мастер-ключа. Счетчик с периодом N используется в качестве входа в шифрующее устройство. Например, в случае использования 56-битного ключа DES может использоваться счетчик с периодом 256. После каждого созданного ключа значение счетчика повышается на 1. Таким образом, псевдослучайная последовательность, полученная по данной схеме, имеет полный период: каждое выходное значение Х0, Х1,…XN-1 основано на разных значениях счетчика, поэтому Х0 ≠ X1 ≠ XN-1. Так как мастер-ключ является секретным, легко показать, что любой секретный ключ не зависит от знания одного или более предыдущих секретных ключей.

ANSI X9.17

ГПСЧ из стандарта ANSI X9.17 используется во многих приложениях финансовой безопасности и PGP. В основе этого ГПСЧ лежит тройной DES. Генератор ANSI X9.17 состоит из следующих частей:

  1. Вход: генератором управляют два псевдослучайных входа. Один является 64-битным представлением текущих даты и времени, которые меняются каждый раз при создании числа. Другой является 64-битным исходным значением. Оно инициализируется некоторым произвольным значением и изменяется в ходе генерации последовательности псевдослучайных чисел.
  2. Ключи: генератор использует три модуля тройного DES. Все три используют одну и ту же пару 56-битных ключей, которая держится в секрете и применяется только при генерации псевдослучайного числа.
  3. Выход: выход состоит из 64-битного псевдослучайного числа и 64-битного значения, которое будет использоваться в качестве начального значения при создании следующего числа.
  • DTi — значение даты и времени на начало i-ой стадии генерации.
  • Vi — начальное значение для i-ой стадии генерации.
  • Ri — псевдослучайное число, созданное на i-ой стадии генерации.
  • K1, K2 — ключи, используемые на каждой стадии.

Схема включает использование 112-битного ключа и трех EDE-шифрований. На вход даются два псевдослучайных значения: значение даты и времени и начальное значение текущей итерации, на выходе получаются начальное значение для следующей итерации и очередное псевдослучайное значение. Даже если псевдослучайное число Ri будет скомпрометировано, вычислить Vi+1 из Ri не является возможным за разумное время, и, следовательно, следующее псевдослучайное значение Ri+1, так как для получения Vi+1 дополнительно выполняются три операции EDE.

Аппаратные ГПСЧ

Кроме устаревших, хорошо известных LFSR-генераторов, широко применявшихся в качестве аппаратных ГПСЧ в XX веке, к сожалению, очень мало известно о современных аппаратных ГПСЧ (поточных шифрах), так как большинство из них разработано для военных целей и держатся в секрете. Почти все существующие коммерческие аппаратные ГПСЧ запатентованы и также держатся в секрете. Аппаратные ГПСЧ ограничены строгими требованиями к расходуемой памяти (чаще всего использование памяти запрещено), быстродействию (1-2 такта) и площади (несколько сотен FPGA- или ASIC-ячеек). Из-за таких строгих требований к аппаратным ГПСЧ очень трудно создать криптостойкий генератор, поэтому до сих пор все известные аппаратные ГПСЧ были взломаны. Примерами таких генераторов являются Toyocrypt и LILI-128, которые оба являются LFSR-генераторами, и оба были взломаны с помощью алгебраических атак.

Из-за недостатка хороших аппаратных ГПСЧ производители вынуждены применять имеющиеся под рукой гораздо более медленные, но широко известные блочные шифры (DES, AES) и хеш-функции (SHA-1) в поточных режимах.

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

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

Генератор случайных чисел (ГСЧ) – это алгоритм, который генерирует практически независимые друг от друга числа в последовательность. Объединяет их разве что заданное распределение.

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

Согласно всем научным статьям, генератор случайных чисел имеет более правильное название – генератор псевдослучайных чисел. Просто для удобства использование слова «псевдо» опускается.

Фактически все алгоритмы ГСЧ сильно зависят от языка программирования и вычислительной платформы.

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

Очень часто сейчас генераторы случайных чисел используются в онлайн-покеррумах. При этом большинство владельцев таких сайтов стараются предоставить алгоритм и сертификат ГСЧ (дабы удостоверить участников, что подставы нет).

Но есть ещё одна сфера деятельности, где используются такие алгоритмы – криптография. Для создания абсолютно новых и недоступных паролей и ещё целого множества функций генераторы случайных чисел предназначены как нельзя кстати. Конечно, существуют риски понять алгоритм и вычислить комбинацию, но это практически невозможно даже для самого опытного хакера.

Но это ни к чему простому, среднестатистическому жителю нашей планеты. Чаще генератором пользуются для ставок в лотереях, вдруг там такой же алгоритм, вдруг совпадёт. Вероятность очень мала, но надежда как говорится, умирает последней.

Что такое ГСЧ в покере

Что такое ГСЧ в покере? Это довольно значимая составляющая онлайнового покера. «Порядочность» ГСЧ разнообразных покерных комнат, как правило, частенько может подвергаться сомнению геймеров, поэтому о работе заведений они говорят на форумах и на других игорных ресурсах.

Разговоры геймеров о генераторе

Иногда покеристы обсуждают наличие «подкрученного» генератора, дающего возможность руму сдерживать опытных игроков с той целью, чтобы «слабые геймеры» остались лояльными. Итак, попробуем понять, на самом ли деле все так и происходит со случайностью в онлайн-комнатах.

Итак, что такое ГСЧ в покере? При помощи подобного генератора чисел генерируется вполне случайная очередность чисел. Обычно ее игрок получает при использовании каких-либо процессов, допустим: шум, излучение и прочее. В компьютерной сфере существуют аппаратные и программные ГСЧ. Благодаря программным генерируются псевдослучайные числа (ГПСЧ), элементы такой последовательности не зависят друг от друга, они подчиняются определенному распределению. Если покерист будет знать, что такое ГСЧ в покере, ознакомится с его алгоритмом, то он получит связность, которая будет случайной.

Что касается аппаратного ГСЧ, то это так называемое устройство, пользующееся каким-то внешним источником, чтобы получить очередность.

ГЧС, как свидетельство о честности рума

Надежность и безопасность онлайн-комнаты заключаются в генерации случайной последовательности карт, а также в их передаче пользователю непосредственно от сервера. Вот поэтому геймеры, в первую очередь, стараются обращать внимание на ГЧС в покере.

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

Особенности сертификации

Как правило, при помощи сертификатов покерные комнаты доказывают состоятельность программ, а также ГСЧ. Сертификацию софта по покеру производит компания Cigital. Сертификатами данной компании могут похвастаться крупнейшие покер-комнаты Full Tilt Poker и ПокерСтарс.

Стоит заметить, что случайные очередности генерируются с помощью системы, которая состоит из одного либо из двух-трех источников энтропии и алгоритма ГПСЧ. Допустим, популярная комната ПокерСтарс пользуется информацией от игроков (в виде передвижения мышкой, определенных действий) в качестве фактора случайности ГСЧ Quantis. Quantis пользуется физическими процессами с той целью, чтобы можно было генерировать числовые очередности (производится установка фотонов, которые пропускаются сквозь специальное зеркало).

Определение случайности в ПокерСтарс

Кроме того, рум PokerStars обладает критериями, с помощью которых определяется нужная степень случайности. К примеру, если от геймеров слишком мало информации, то раздачу не начинают до тех пор, пока не обеспечат генерацию бит ГСЧ. Сама процедура преобразования всех бит в числа осуществляется таким методом: если требуется число, допустим от 0 до 25, то подбирается 5 бит и в итоге выходит число от 0 до 31; а вот если число больше 25, то процедура опять повторяется.

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

Таким образом, покерные комнаты пользуются двумя типами тасования колоды: одиночным и постоянным. В первом варианте тасовка колоды осуществляется единожды перед раздачей, а в постоянном – колода тасуется на протяжении всей раздачи. Благодаря постоянному имеется неплохая защита от взлома, так как последующие карты стола неизвестны до самого окончания раздачи. Постоянный тип тасовки, как правило, используют во второй по величине онлайн-комнате— FullTilt. Что касается ГСЧ этого покер-рума, то его построили по методу, схожему с ПокерСтарс. Для этого воспользовались тремя независимыми генераторами: аппаратным ГСЧ с физическим источником энтропии и двумя независимыми (ISAAC и OpenSSL).

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

В любом случае, если генератор отличается высочайшим качеством, то это свидетельствует о добросовестности, прозрачности и честности рума. Это значит, что комната уважительно относится к своим постояльцам. Это и является настоящим залогом успеха для румов, не подкручивающих ГСЧ.

Возможен ли обман со стороны рума

На сегодняшний день большинство как начинающих покеристов, так и игроков с опытом, с огромным желанием хотят узнать о том, что такое ГСЧ в покере, возможен ли обман генератора случайных чисел?

В первую очередь, стоит изучить такие позиции: формирование дохода онлайн-рума происходит на основании рейка, подразумевающего долю банка, которую взимает заведение. Таким образом, становится понятно, что онлайновому руму вовсе неважно, кто именно станет победителем и получит оставшуюся, главную часть денег.

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

Последствия подобных действий могут стать на самом деле плачевными для онлайн-комнаты. Поэтому и возникает вопрос: нужно ли идти на риски или лучше этого не делать? Ведь любая информация распространяется слишком быстро, и подобный рейтинг не пойдет пользу и зметно подпортит репутацию.

Как видите, разобраться в том, что такое ГСЧ в покере и как обмануть ГСЧ, вовсе несложно, а вот с восстановление доброго имени, возникнут трудности. Вот поэтому самые популярные покерные комнаты стараются не проводить такие махинации.

Рейтинг казино по бонусам и размеру Джекпотов:
Добавить комментарий