Provably Fair — техническое описание, а не знак доверия. Обычно оно означает, что игра публикует достаточно криптографических данных, чтобы человек мог воспроизвести результат завершённого раунда. Это полезно: утверждение, основанное на входных данных и формуле, сильнее утверждения, основанного на логотипе, сообщении в чате или скриншоте. Но его область узкая. Воспроизведение множителя не доказывает, что у сайта есть лицензия в вашей стране, что вывод будет обработан, что бонус подходит вам или что следующий раунд окажется благоприятным.
Сначала сформулируйте точный вопрос
До открытия верификатора запишите, что именно вы хотите проверить. Хороший вопрос: «Воспроизводят ли раскрытые данные раунда 184 показанную точку crash по опубликованной формуле?» Слишком широкий вопрос вроде «Безопасна ли платформа?» объединяет лицензию, поддержку, платежи, правила аккаунта, защиту потребителя и личный риск. Для каждого из этих пунктов нужны отдельные доказательства от оператора, регулятора, платёжного провайдера или независимого источника.
Ведите отдельную запись для каждого вывода. Помечайте результат как воспроизводимый, только если вы сами повторили расчёт. Помечайте как опубликованный, если информация есть в документации, но вы её не подтвердили. Помечайте как не оценивался, если доступные материалы не дают ответа. Такая формулировка не позволяет технической заметке превратиться в рекламу.
Разберитесь в обычной последовательности коммита
Во многих crash-системах используются серверный seed, один или несколько клиентских seed, nonce или счётчик и хэш-функция, например SHA-256 или HMAC-SHA256. До приёма ставок игра может показать хэш ещё не раскрытого серверного seed. Этот хэш называют коммитом. После раунда система раскрывает серверный seed и остальные входные данные. Вы самостоятельно хэшируете раскрытый seed и сравниваете его с коммитом, который был виден раньше. Если значения совпадают, сервер не мог подменить раскрытый seed после публикации коммита.
Это полезное свойство зависит от фактически опубликованной последовательности. Запишите, когда был виден коммит, был ли он связан с ID раунда и произошло ли раскрытие после результата. Seed, который показывают только после жалобы, слабее как доказательство, чем коммит, сохранённый до игры. Одного изображения недостаточно: сохраните текстовые значения, URL, дату, время и, если возможно, исходный ответ, видимый в браузере. Не изменяйте собранные файлы.
Соберите все входные данные до расчёта
Воспроизводимая запись обычно включает коммит серверного seed, раскрытый серверный seed, клиентский seed или seed, nonce, идентификатор раунда, версию игры, показанный множитель и полное описание алгоритма. Не угадывайте отсутствующие значения. Разные провайдеры меняют местами стороны HMAC, объединяют поля в ином порядке, используют другую кодировку или добавляют отдельное правило для мгновенного crash. Внешне похожие формулы способны давать разные результаты.
Копируйте значения как простой текст и сохраняйте регистр, если его требует документация. Отметьте, является ли каждое поле шестнадцатеричным числом, base64, десятичным числом или текстом UTF-8. Если интерфейс скрывает значение за кнопкой, сохраните и видимое состояние, и раскрытое значение. Если пользователь может менять клиентский seed, запишите время изменения и подтверждение до нужного раунда. Нельзя оценить протокол по памяти или по неполной строке истории.
Сначала воспроизведите коммит
Начните с независимого расчёта коммита. Если в документации сказано, что показанное значение равно SHA256(serverSeed), посчитайте хэш раскрытого серверного seed локальным прозрачным инструментом. Сравнивайте все символы. При расхождении остановите расчёт и зафиксируйте его. Причиной может быть неописанная кодировка, значение из другого раунда, устаревший интерфейс или дефект. Не подгоняйте входные данные до совпадения.
Затем воспроизведите результат ровно так, как он описан. Фразы «мы используем SHA-256» недостаточно. Метод должен задавать порядок ключа и сообщения в HMAC, разделители, формат nonce, число извлекаемых битов, правила округления и особые случаи. Если инструкций не хватает, корректный вывод: результат нельзя независимо воспроизвести по опубликованному методу. Это полноценный результат аудита; придуманная «стандартная» формула не является проверкой.
Проверьте преобразование хэша в множитель
Хэш — только промежуточное значение. Игра переводит его в множитель математическим правилом. Одни реализации берут фиксированное число битов, превращают их в дробь от нуля до единицы и применяют обратную формулу. Другие используют тест делимости или верхний предел. Один и тот же хэш может дать разные показанные результаты при разных опубликованных правилах.
Запишите формулу рядом с результатом. Укажите точный момент округления: округление до проверки порога способно изменить исход. Используйте достаточную десятичную точность, а затем применяйте заявленное правило отображения. Верификатор, который показывает только зелёную галочку без входных и промежуточных значений, удобен, но не является независимым доказательством. Локальный расчёт, простой проверяемый скрипт или таблица с видимыми формулами легче перепроверить позднее.
Правильно используйте RTP
RTP, возврат игроку, описывает долгосрочную модель при заданных условиях. Это не процент, который должен получить конкретный человек за вечер. Распределение crash имеет длинный хвост: редкие высокие множители сильно влияют на среднее, тогда как небольшие выборки остаются шумными. Поэтому выборка может отличаться от опубликованного RTP без доказательства манипуляции и может оказаться близкой к модели, ничего не сказав о скрытой детали реализации.
Если вы анализируете выборку, опубликуйте правило сбора до просмотра результата. Укажите источник, время начала и конца, число последовательных раундов, пропуски, обработку дублей, правило преобразования и ручной либо автоматический отбор. Представляйте наблюдаемое среднее как описание этой выборки и объясняйте неопределённость. Не называйте наблюдаемый процент «сертифицированным RTP» и не превращайте приблизительное совпадение в обещание будущего результата.
Отделяйте сетевые наблюдения
Сетевой захват отвечает на ограниченные вопросы о доставке: он может показать порядок, в котором браузер получил коммит, событие раунда и результат, а также видимый идентификатор или документированный ответ. Сам по себе он не доказывает, что команда cash-out обработана справедливо, или что часы сервера были точны. На наблюдение влияют время устройства, перегрузка сети, отрисовка страницы и локальные расширения.
При сохранении сетевых данных укажите устройство, версию браузера, примерное местоположение, тип соединения, часовой пояс и наличие прокси или расширений. Удалите ID аккаунта, токены сессии, адреса кошельков и персональные данные перед передачей трассировки. Если важна задержка, приведите диапазон повторных измерений и точку измерения. Одиночный быстрый ответ не является гарантией инфраструктуры.
Соберите журнал, который сможет повторить другой человек
- Область проверки: конкретное техническое утверждение.
- Доказательства: коммит, раскрытые данные, ID, версия формулы и время.
- Метод: инструмент, кодировка, шаги расчёта и правило округления.
- Результат: совпадение, расхождение или недостаточная документация.
- Ограничения: вопросы, на которые тест не отвечает, включая лицензию, платежи, аккаунт и будущие результаты.
Проверьте и сам инструмент расчёта
Не доверяйте верификатору только потому, что он находится на знакомом сайте. Сверьте его результат как минимум с одним независимым способом: командой стандартной криптографической библиотеки, коротким локальным скриптом или таблицей с открытыми формулами. Используйте один и тот же сохранённый набор данных. Если результаты различаются, сравнивайте не итоговую цифру, а каждый этап: исходные строки, кодировку, порядок полей, хэш, извлечённое число и округление. Такой журнал помогает отличить ошибку интерфейса от ошибки в копировании или интерпретации документации.
Избегайте сервисов, которые просят войти в игровой аккаунт, подключить кошелёк, передать код двухфакторной аутентификации или загрузить историю ставок для проверки одного раунда. Для воспроизведения формулы достаточно опубликованных входных данных. Независимый расчёт должен уменьшать объём передаваемых данных, а не создавать новый риск для аккаунта.
Успешное воспроизведение говорит только о том, что один раскрытый раунд следует одному раскрытому методу. Оно не отменяет математическое преимущество, волатильность и финансовый риск. Если метод невозможно воспроизвести, данных не хватает или коммит не совпадает, сохраните доказательства и запросите письменное объяснение. По вопросам лицензии, платежей и защиты потребителя обращайтесь к компетентному регулятору и правилам вашей страны.
Инструменты CrashMath независимо проверены CrashMath только для заявленной цели расчёта. Это не официальные инструменты операторов; они не одобряют, не сертифицируют и не представляют игровые сервисы. Делайте вывод ровно настолько узким, насколько позволяют доказательства.
