Что такое provably fair в крипто-казино?
Provably fair использует HMAC-SHA256 со схемой commit-reveal: каждый бросок, карту и спин можно проверить криптографически. Как это работает — и как провести аудит самому.
Традиционные онлайн-казино просят доверять заведению. Казино «provably fair» переворачивает это: каждый раунд создаётся криптографической функцией, которую ты можешь пересчитать дома и убедиться, что результат не подменили. Математика не экзотическая — та же HMAC-SHA256, что защищает каждый HTTPS-запрос.
Схема commit-reveal
- Commit: сервер генерирует случайный сид (
serverSeed) и публикуетSHA256(serverSeed)до любого раунда. - Play: каждый раунд использует
HMAC_SHA256(serverSeed, clientSeed:nonce). Клиентский сид — твой; nonce растёт по раундам. - Reveal: при ротации сессии сервер публикует
serverSeed. Любой может пересчитать каждый раунд.
От 64 hex к результату игры
- Crash: 8 hex → равномерное float →
crashPoint = (1 - houseEdge) / (1 - r). - Dice: 8 hex → × 10 000 → ÷ 100. Результат 0,00–99,99.
- Mines: перестановка Fisher-Yates на 25 позициях; первые N — мины.
- Plinko: один бит на строку (
0= влево,1= вправо).
Как проверить раунд самому
- Скопируй раскрытый
serverSeed, свойclientSeedиnonce. - Выполни
echo -n "clientSeed:nonce" | openssl dgst -sha256 -hmac "serverSeed". - Применяй формулу игры к этим 64 hex — результат должен совпасть с UI.
Что provably fair не гарантирует
Гарантируется целостность генератора случайности. House edge, RTP и дисперсия не меняются. Dice с RTP 99% остаётся Dice с RTP 99%. Новое только то, что каждый игрок теперь аудитор.
Provably fair — это open source?▾
Нет. Open source показывает код; provably fair — математику каждого раунда. Казино может быть provably fair без раскрытия бэкенда.
Могут ли подкрутить RTP?▾
Нет — множитель выводится детерминированно из хэша. Единственный честный проигрыш — это house edge, который публичен.
Зачем ротация server seed?▾
После раскрытия сид нельзя использовать для новых раундов (иначе оператор мог бы предвычислить результаты). Ротация аннулирует старый и коммитит новый.