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

На примере статьи «Как работает ГСЧ на PokerStars?» можно получить представление о том, как работает ГСЧ и как проверяется справедливость ГСЧ на конкретном руме. 

Если в двух словах, то в детали игрока никто не посвящает и игрок просто должен доверять репутации рума, репутации фирмы-производителя ГСЧ и репутации контролирующего органа. Вроде бы и руму нет смысла обманывать игроков, так как игроки играют друг с другом, и рейк при любом раскладе достанется руму. Но всё-равно постоянно на покерных форумах появляются параноидальные посты о том, что покер-румы специально сталкивают обладателей больших стеков в кулерах, помогают переездами фишам и целенаправленно “убивают” бэд-битами после большого вывода дeнeг (так называемое «проклятие кeшaута»).

Главные проблемы современного ГСЧ:

  • Невозможно проследить как генерировалась раздача
  • Приходится верить репутации рума и лицензии
  • Невозможно заказать аудит, который докажет случайность исхода раздачи

Интересное решение, которое возможно вскоре поможет перевести генератор случайных чисел (ГСЧ) в покере на блокчейн предложили создатели платформы DICEGAME на примере игры в кости.

Принцип работы альтернативного ГСЧ на блокчейне

Для работы ГСЧ требуются два параметра, на который не может повлиять рум и который зависит только от игроков, например:

  • Т — максимально точное время совершения броска в миллисекундах (обращение к смарт-контракту)
  • P — значение акселерометра вашего гаджета, который игрок будет трясти при броске

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

Комбинация двух параметров дает четыре возможных варианта значений кубиков:

  1. Первый кубик: Т1 Р1 Т2
  2. Второй кубик: Т1 Р1 Р2
  3. Третий кубик: Т1 Т2 Р2
  4. Четвертый кубик: Р1 Т2 Р2

Алгоритм очень прост для проверки: берем сумму трех параметров, делим на 6 и к неделимому остатку прибавляем 1 (чтобы значения попали в диапазон от 1 до 6).

Допустим для наглядности, что четыре значения получились такими: 

  1. Т1=101
  2. Т2=303
  3. Р1=202  
  4. Р2=404

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

  1. Т1=1.789.943
  2. Т2=546.913
  3. Р1=3.120 
  4. Р2=545

Первый кубик:

  1. сумма параметров: 101+202+303=606
  2. сумму делим на 6: 606:6=101
  3. неделимого остатка нет, другими словами он равняется 0
  4. к неделимому остатку прибавляем 1: 0+1=1. Это и есть значение первого кубика

 

Второй кубик: 

  1. сумма трех параметров:101+202+404=707
  2. сумму делим на 6, так как 707 не делится ровно на 6,то представляем данное значение в виде суммы:(702+5):6=702:6+5:6. 702 делится ровно на 6,а 5 — нет
  3. неделимый остаток — 5
  4. к неделимому остатку прибавляем 1: 5+1=6. Это значение второго кубика

 

Третий кубик:

  1. сумма трех параметров:101+303+404=808
  2. сумму делим на 6, так как 808 не делится ровно на 6,то представляем данное значение в виде суммы: (804+4):6=804:6+4:6. 804 делится ровно на 6,а 4 — нет
  3. неделимый остаток — 4
  4. к неделимому остатку прибавляем 1: 4+1=5. Это значение третьего кубика

 

Четвертый кубик:

  1. сумма трех параметров: 202+303+404=909
  2. сумму делим на 6, так как 909 не делится ровно на 6,то представляем данное значение в виде суммы: (906+3):6=906:6+3:6. 906 делится ровно на 6, а 3 — нет
  3. неделимый остаток — 3
  4. к неделимому остатку прибавляем 1: 3+1=4. Это значение четвертого кубика.

Итак, победу в нашем воображаемом поединке одержал игрок №2, он набрал 9 очков против 7.

Кубики №3 и №4 принадлежали второму игроку, так как для получения выпадающего на кубике числа использовались два параметра от его гаджета и только один от гаджета его соперника

Абсолютно все значения любого поединка навечно останутся в блокчейне. Переписать, удалить, каким-то образом схитрить не получится ни организаторам, ни игрокам. 

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

Если предыдущие абзацы были слишком сложны для понимания, переведу их в ещё более простой вид:

Теперь никаких фотонов на острове Мэн, никаких нулей и единичек, которые непонятным образом контактируют друг с другом, а в результате рекреационному игроку из Бразилии закрывается гатшот. Теперь любой исход раздачи зависит от вас и вашего соперника (соперников). Чуть сильнее потряс телефон или зарегистрировался в турнире чуть раньше или чуть позже — выиграл или проиграл, причём сильнее нужно трясти гаджет или слабее неизвестно. 

В любой момент времени вы, ваш соперник или совершенно случайный любопытный человек может убедится в справедливости и абсолютной случайности исхода любого поединка 

В планах проекта DICEGAME внедрить 5 игр на криптовалюту в своём приложении:

  • FM DICE. Обычная игра в кости. Играть можно как Heads Up, так и в турнирах c олимпийской системой на выбывание. Локальная цель DICEGAME — проведение турнира на 1 048 576 человек с бай-ином $1 с призом $150к за первое место.
  • FM 1000. В игре используется 5 игральных костей. До 5 игроков.
  • FM Monopoly. Известная игра, главная цель которой обанкротить соперников. 
  • FM RSP. Вариация игры камень-ножницы-бумага.
  • FM Poker in DICE. В игре используется 5 игральных костей. До 4 игроков. Цель — набрать наибольшую сумму очков. 

Узнать больше об этих продуктах и их преимуществах вы можете на сайте Dicegame. Их проект сейчас на стадии ICO. 

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

Конечно же до воплощения идеи в онлайн-покере ещё далеко, так как задачи перед разработчиками будут на порядок сложнее, количество переменных вырастает на порядок уже при игре в Холдем (масти карт, номинал карт, четыре улицы торгов и так далее), не говоря уже про Омаху или Split Holdem. Но будем держать руку на пульсе, и если проект выстрелит, то вполне возможно, что спустя пару лет покерный ГСЧ на блокчейне будет абсолютно рядовым явлением.