О пресловутом ГСЧ и честности покеррумов.

0
О пресловутом ГСЧ и честности покеррумов.
21 января, 2009 19:44
29
0
21 января, 2009 19:44
29

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

Но и этого всего перестало хватать. И тогда человек создал Сеть. И назвал её «Интернет».

И решил человек: «А если всё, что я придумал и изобрёл, «запихнуть» в Интернет?!»
И запихнул! Только с велосипедом не вышло…

Шло время. Но пытливый ум и желание перевернуть всё с ног на голову не давали покоя. И решил человек: «Компьютер знает только «0» и «1» и не может ошибаться. Я его этому научу!» Взял, да и создал ГСЧ. И понеслось…

Казалось бы, бредовая идея. Зачем устройство, созданное для того, чтобы избавить нас от ошибок, учить ошибаться?! Вспомните загадки: мы загадываем, кто-то отгадывает. Хорошо. А, если загадать число от 1 до 10. А от 1 до 100? Дальше – больше. Так вот, для чего нужно уметь ошибаться! Если мы ошибаемся, то становимся непредсказуемыми. Значит, другим тяжелее будет нас разгадать. А зачем? Чтобы сохранить наши тайны. Как ни крути, а тут без ГСЧ не обойтись.

Как же научить «этот железный ящик» генерировать случайное число, если всё в нём неслучайно? Сплошные нули, да единицы и ничего не меняется во времени. О, время! Вот, что постоянно меняется. Так человек создал генератор псевдослучайных чисел и положил в его основу показания внутренних часов компьютера. А, чтобы «псевдо» стало близко к действительно случайному, стали использовать часы с точностью до миллисекунд.

Расцвет ГСЧ начался. Теперь он везде вокруг нас. В авто-сигнализациях, в скретч-картах для оплаты телефонов, в банкоматах, в номерах лотерейных билетов… Всюду, где нужно что-то зашифровать или придумать какое-нибудь кодовое слово, пароль. Воистину, ГСЧ стал вездесущ. И это уже не тот ГСЧ, что «возникает» у нас в голове, стоя перед автоматической камерой хранения, или при придумывании пароля к своему почтовому ящику, когда ничего не приходит на ум, кроме дня рождения любимой бабушки (чтоб никто не догадался). Это совсем другой ГСЧ — сложный, выдающий последовательности из десятков и сотен цифр. Такой, чтобы «не разгадали», даже с помощью самых быстродействующих компьютеров.

Какое отношение это имеет к покеру? Самое, что ни на есть, прямое.

Кажется, что может быть проще: возьмём ГСЧ, с его помощью раздадим игрокам случайные карты, затем из оставшихся карт выберем ещё одну случайную и т.д. Игра пошла. Но не всё так гладко. У такого способа раздачи карт есть один существенный недостаток, сводящий на нет, все достоинства. А именно: если выбор очередной карты происходит во время игры, нет никакой гарантии от жульничества. Покеррум может посадить «бота» и сдавать карты «под него», просто «высасывая» из игроков деньги. Если бы покерный сайт был один, так бы оно и было, но в жёсткой конкурентной борьбе такие «фишки» не проходят. Поэтому, было выработано основное правило, общее для всех: все сдаваемые карты должны быть известны до розыгрыша руки. Как этого добиться? Ответ прост: не сдавать карты случайным образом, а случайным образом перетасовать колоду. И всё! Как в реальной жизни. Колода перетасована, порядок карт зафиксирован, дальше пошла игра. Тут уж ни о каком шулерстве речь идти не может.

Всё шло замечательно до 1999 года, когда одной из компаний, специализирующейся на тестировании программного обеспечения, на суд зрителей не был выставлен «эксплойт», позволяющий смоделировать ГСЧ одного из казино. Тем самым, после нескольких раздач карт, обладатель этой программы становился «провидцем». Конечно, такое было возможно только при синхронизации системных часов компьютера с часами сервера, сдающего карты, что само по себе не так-то просто. Однако. Разразился скандал, судебные разбирательства, репутация была безвозвратно утрачена.

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

Элементарный подсчёт показывает, что в сутках 24*60*60*1000=86400000 миллисекунд. Кажется, много. А из курса комбинаторики любому известно, что количество перестановок n предметов равно n!. То есть, для колоды из 52 карт получаем:
52! = 806581751709439000000000000000000000000000000000000000000000 00000000
(это в несколько раз больше количества атомов, из которых состоит наша Галактика)
Побольше…

Выходит, что ГСЧ, основанный на времени в миллисекундах, не охватывает и одной миллионно-миллиардной процента от всевозможных комбинаций карт в колоде!
Можно прибегнуть к различным ухищрениям и значительно расширить диапазон нашего ГСЧ, но тут нас поджидает ещё одна проблема: длина ключа. В большинстве современных приложений используются ключи длиной 32, 64 или 128 бит. Но, даже 128-битный ключ даст нам, примерно, в 2370330000000000000000000000000 раз меньше комбинаций, чем необходимо. Такой вот покер!

Какой же выход?

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

Кому интересно: эффект Зенера – разновидность лавинного пробоя, при котором диод становится проводящим при смещении p-n-перехода в обратном направлении. При этом напряжение смещения очень существенно зависит от температуры и имеет заметную шумовую составляющую. Таким образом, стабилитрон идеально подходит для построения аппаратного ГСЧ.

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

«Принцип честности» от ГСЧ.

ГСЧ — это отдельный «чёрный ящик», который только и умеет, что тасовать колоду карт. Ему совершенно безразлично, что с ними будет потом, какая на улице погода и, что соседская кошка вчера принесла котят. Он ничего не слышал про Hold’em и Омаху, про чек и рейз, про Бэд-Биты и олыны. Ему всё равно. Жизнь его скучна и однообразна. Изо дня в день, из года в год он тасует карты. Больше он ничего не умеет.

Следует помнить и ещё об одной немаловажной вещи: ГСЧ никогда не останавливается. Будучи один раз запущенным, он никогда не начнёт расклад с колоды «AAAAKKKKQQQQ…2222» заново, и так до самой «смерти». Турнирные серверы и серверы ринговых игр отсылают ГСЧ запросы: «Перетасуй мне колоду». ГСЧ покорно тасует и отдаёт им: «Нате! Кушайте, не обляпайтесь». Всё.

Возникает вопрос: «А не «мухлюют» ли тогда эти самые серверы?» Ответ прост. Каждый из нас видит в покерном клиенте строчку с номером текущей руки. Точнее говоря, это не номер руки, а номер перетасовки колоды карт. Этот номер «прописывается» везде. Его генерирует ГСЧ и записывает в свой журнал, дальше этот номер сервер записывает в свой. Потом он передаётся клиенту, где тоже записывается. Таким образом, вся цепочка «завязана» на одном номере. По этому номеру в любой момент можно узнать весь порядок расположения карт в сданной колоде – подтасовки исключены.

Во время проверки деятельности покеррума, уполномоченная комиссия сверяет таблицы ГСЧ и серверов. Если будет найдено хоть одно отличие, для покеррума наступит то, что есть у каждого на букву «ж», но не принято произносить в слух. Причём, не «ж», а «Ж».

А кто такие эти «уполномоченные комиссии» и можно ли им доверять?

Для «оптимизации налогообложения» большинство Интернет казино и покерных сайтов зарегистрировано в оффшорных зонах или «зонах благоприятного налогообложения». По условиям международного права, такие зоны обязаны содержать комиссии по контролю азартных игр, осуществлять надзор и лицензирование. Наиболее известны: LGA (Мальта), FRSC (Антигуа и Барбуда), Kahnawake Gaming Commission (Канаваке, Канада), Gambling Ordinance 2005 (Гибралтар). Существует такое и в нашей стране – на территории Калмыкии. Правда, международного признания ещё нет, но с принятием закона об «игорных резервациях», можно надеяться на лучшее. Чтобы получить сертификат любой из комиссий, покеррум обязан предоставить программное обеспечение для тестирования. В первую очередь тестируют ГСЧ. Стоит такой тест не менее 15000 долларов и проводится одним из институтов по выбору комиссии. При этом выявляются не только закономерности ГСЧ, но и закономерности закономерностей. Результаты официально публикуются и не являются ничьей собственностью. После, комиссией принимается решение: выдавать или нет двухгодичную лицензию на деятельность покеррума. Более того, комиссии обязаны публиковать отчёт обо всех проверках поднадзорных им заведений. Существует также ряд международных норм, регулирующих деятельность уже этих комиссий… Короче говоря, когда все друг за другом следят, поневоле приходится быть честным.

Вот, пожалуй, и всё, что хотелось поведать о «деятельности» ГСЧ в рамках покеррумов. Невольно вспоминаются слова из одной известной программы на НТВ: «…выводы делать только вам».

Добавить комментарий