![Гарантии честности, MD5 и др.](images/guarantees.jpg)
В рунете все больше появляется казино, предлагающих так называемые «гарантии честности» или «контроль честности» («так называемые» и кавычки совсем не означают, что я не верю в эти гарантии, просто хочу определить термин, моё мнение читайте далее). В настоящее время в том или ином виде гарантии честности есть в нескольких казино, например, Grand Casino, Profit Casino, зарубежном BetVoyagerе, в нескольких играх также у HiWager (бывшее Лото). Что же представляют собой гарантии честности? Действительно ли они что-то гарантируют, а если гарантируют, то что? Могут ли казино обойти механизм гарантии и обмануть игрока? Попробуем разобраться.
Можно сказать, что в настоящее время система гарантий честности в большинстве случаев состоит из двух частей. Первая часть - гарантии неизменности. Казино ещё до начала игры создает последовательность чисел/карт/символов, которые будут выпадать у игрока в дальнейшем. Игроку передаётся защифрованая информация о этой последовательности, он играет на ней, а по окончании игры получает возможность проверить, что действительно выпадало именно то, что было запланировано. То есть игроку гарантируется, что если он поставил на красное, то казино не подсунет ему чёрное. Число, которое должно выпасть, «загадано» заранее и ставка игрока на него никак повлиять не может! Казино не может играть против ставок игрока. Правда, некоторые игроки говорят, что казино, например, может играть против стратегии игрока, заранее создавая «хитрые» последовательности. Например, если казино видит, что игрок «мартингейлит», то оно якобы может специально генерировать длинные цветные последовательности. На самом деле, неслучайная генерация для казино - дополнительный риск, ведь если игрок поймёт, что ему дают «специальные» последовательности, он может играть против них и неплохо подняться. Но чтобы окончательно развеять любые подозрения, казино предлагают вторую часть системы контроля честности - гарантии случайности. Игрок может в каждой игре сам вводить любые смещения результатов. Например, в карточных играх игрок может сдвинуть колоду или изменить последовательность сдачи карт. В рулетке или слотах установить смещение. Если у казино предусмотрено выпадение числа 10, а игрок установил смещение 3, то выпадет 13. Таким образом, задавая смещения, игрок гарантирует случайные результаты игры независимо от того, что там может сотворить казино! В итоге контроль честности действительно обеспечивают игроку на 100% честные и случайные результаты!
В настоящий момент на практике есть два механизма технической реализации схемы гарантии. Первый и основной подразумевает использование ключевой последовательности по алгоритму MD5 (реже - SHA-256), второй - пересылку запароленных архивов. Рассмотрим эти методы подробнее.
Если говорить об алгоритме MD5, то он призван служить уникальной подписью, а также средством хранения паролей. На основе исходной информации любой длины генерируется 128-битная последовательность (подпись), обычно записываемая при помощи 32-х шестнадцатеричных символов. Причем алгоритм построен таким образом, что изменение лишь одного бита в исходном сообщении приведет к очень значительному отличию MD5-подписей. Кроме того, MD5-подпись является хэш-функцией, то есть, зная подпись, невозможно расшифровать исходное сообщение. Все эти свойства обуславливают широкое применение MD5 и аналогичных алгоритмов в различных системах безопасности: для хранения паролей (от интернета до банковских систем), использование в качестве подписи (например, PGP), для подтверждения неизменности содержимого (в Unix-системах или онлайн казино).
В настоящее время не приходится сомневаться в применимости алгоритмов MD5 для обеспечения гарантии честности в онлайн казино, причем использование подобного метода выгодно и удобно как казино, так и пользователю. В данном случае пользователю не нужно скачивать реальные файлы, что защищает казино от теоретической возможности взлома и экономит трафик. Тем не менее, контрольная сумма по алгоритму MD5 гарантирует неизменность исходного файла, что каждый пользователь может легко проверить, воспользовавшись многочисленными программами генерации MD5 подписей. Правда, есть небольшая ложка дегтя в бочке меда. Попытка прямого подбора сообщения с идентичной MD5-подписью на современном компьютере займет около тысячи лет, однако с конца 2004 года появляются сообщения об обнаружении алгоритма, позволяющие быстрее искать коллизии. То есть, зная исходную информацию, можно создать измененное сообщение с такой же MD5-подписью. На многих форумах заговорили о конце MD5, однако это далеко не так. До сих пор нет возможности находить подходящую исходную последовательность, зная только подпись. Что касается создания нескольких видоизмененных сообщений с одинаковой подписью, то здесь несколько причин не опасаться: во-первых, подбор занимает 1 час на суперкомпьютере и около 4 часов на персоналке (данные двух различных алгоритмов), во-вторых, исходное сообщение будет при этом изменено случайным образом, будет добавлено несколько десятков случайных символов, что сложно не заметить, в-третьих, ни один алгоритм создания коллизий до сих пор не раскрыт и реальных программ, использующих его, нет. В общем, если наша последовательность строго структурирована, то создать альтернативную последовательность, не нарушив структуру, просто невозможно. Так что, несмотря на ажиотаж вокруг коллизий, реальной возможности обойти MD5-подпись и подсунуть измененный файл нет!
Пересылка запароленных архивов избавляет от сомнений в том, что казино что-то сможет изменить, ведь архив уже у вас в компьютере, а о возможности изменения содержимого архива, использованием альтернативного пароля (о чем высказывалась версия) говорить просто смешно. Используемые в настоящее время алгоритмы шифрования подобных возможностей не предусматривают. То есть, если используется стандартные архиватор и программа паролирования, это гарантирует неизменность информации. Однако, у такого способа есть недостаток с точки зрения казино и игрока, во-первых, это лишний трафик (по крайней мере при текущем варианте реализации в Grand Casino это может быть значительный объем файлов), во-вторых, мизерная, но опасность для казино, что игрок сможет вскрыть архив.
В общем, оба метода реализации «гарантии честности» имеют право на жизнь, использование MD5 больше защищает казино, пароли к файлам - игрока. Оба эти метода абсолютно надёжно позволяют подтвердить неизменность созданной последовательности. Теперь казино могут сосредоточится на доказательстве того, что последовательности случайны. На мой взгляд, одним из простых способов может стать открытая публикация всех сыгранных последовательностей, чтобы игроки при желании могли провести статистические исследования на большом объеме данных. Хотя, повторюсь, казино во многих играх просто нет смысла создавать неслучайные последовательности, так что потребность в подобных доказательствах не слишком велика.
Автор: Шероков Юрий. Ваш покорный слуга, также автор большей части сайта «Казино Онлайн» ;).