Nonce в системе provably fair — счётчик, показывающий, какая по счёту ставка делается с одними и теми же сидами. Первая ставка обычно использует nonce 0 или 1, следующая — на единицу больше и так далее. При смене пары сидов счётчик начинается заново.
Зачем нужен nonce
Результат provably fair вычисляется из трёх входных данных: серверного сида, клиентского сида и nonce. Сиды в течение одной пары не меняются. Без nonce одни и те же сиды каждый раз давали бы один и тот же результат. Nonce делает вход каждой ставки уникальным, поэтому результаты различаются, но остаются заранее определёнными и проверяемыми впоследствии.
Во многих казино расчёт идёт через HMAC-SHA256: серверный сид — ключ, а сообщение состоит из клиентского сида и nonce. Точная формула различается в зависимости от казино и игры — она должна быть указана на странице честности или проверки казино. Техническая справка: HMAC в Википедии.
Что проверять с помощью nonce
- Последовательность. В истории ставок nonce должен расти на единицу. Пропуск или повтор требует объяснения.
- Проверка. Когда серверный сид раскрыт, введите сиды и nonce в независимый проверочный инструмент и сравните результат с указанным в истории.
- Смена сидов. Проверка возможна только после того, как вы сменили пару сидов и старый серверный сид раскрыт. До этого вы видите лишь его хеш.
Распространённые заблуждения
- «По nonce можно предсказать следующий результат». Нельзя. Без серверного сида результат для вас непредсказуем; именно поэтому сид скрыт до смены.
- «Высокий nonce значит, что выигрыш близко». Не значит. Каждый результат — отдельный расчёт, и предыдущие не влияют на следующий, — смотрите ошибку игрока.
- «Provably fair значит, что казино не выигрывает». Не значит. Проверка доказывает, что результат не меняли. Преимущество казино заложено в самих правилах игры.
Пошаговое руководство по проверке: provably fair: как проверить самому. Математика оригинальных игр: преимущество казино и матожидание в оригинальных играх.