Mi az a provably fair, és hogyan működik?

Használd az alábbi provably fair kalkulátort, hogy minden egyes játékkimenetet ellenőrizz és megértsd, miképp biztosítják az Eredeti Cloudbet játékok a tisztességes oddsokat.
Above are two provably fair tools: a Game Verification Tool — paste your Server Seed, Client Seed, and Nonce from any round to reconstruct and confirm the outcome — and a Server Seed Verification Tool — verify that a revealed server seed matches the hash Cloudbet published before you played.

Amikor Cloudbet Originals játékokra fogadsz, minden eredményt magad is ellenőrizhetsz. Semmi találgatás, semmi trükk — csak tiszta, bizonyíthatóan véletlenszerű eredmények, amiket te magad is leellenőrizhetsz.

Mi az a „provably fair”?

A provably fair egy olyan rendszer, amelyet online kaszinók használnak annak biztosítására, hogy minden játékeredmény tisztességes legyen, és azt a játékos önállóan ellenőrizhesse. Ahelyett, hogy egyszerűen megbíznál a kaszinóban, matematikai bizonyítékot kapsz arra, hogy az eredményeket a játék során senki sem manipulálta.

A Cloudbet Provably Fair rendszerének előnyei:

  1. A Cloudbet Originals játékok a legújabb provably fair protokollokon futnak, így minden eredmény meghamisíthatatlan, függetlenül ellenőrizhető és matematikailag tisztességes.
  2. Miután egy kör véget ért és a seed-ek felfedésre kerülnek, bárki matematikai bizonyossággal ellenőrizheti, hogy az eredmény tisztességesen jött létre.
  3. Olyan, mintha minden körhöz megkapnád a tervrajzot — nincsenek rejtett trükkök, és nincs mentség a pörgetés után.

Hogyan lehet valami provably fair?

A provably fair két dolog bizonyítását jelenti:

  1. Minden játék hozzáfér egy valóban véletlenszerű, meghamisíthatatlan számsorozathoz — ez az oldal ezt a részt mutatja be.
  2. Ez a véletlenszerű sorozat rögzített, átlátható módon határozza meg a játék eredményét — ugyanazokból a számokból mindig ugyanaz az eredmény születik. Ez a rész játékonként eltérő — nézd meg, hogyan működik a Mines és a többi Cloudbet Originals játék esetében.

Az igazi véletlenszerűség biztosításához mind a játékos, mind a Cloudbet hozzájárul a számgeneráláshoz — így egyik fél sem tudja egymaga irányítani az eredményt, és a Cloudbetnek bizonyítania kell, hogy utólag nem változtatta meg a saját bemenetét.

Kulcsfogalmak

  1. Bit: A digitális információ alapegysége — „1” vagy „0”. A bitek sorozata bináris számokat jelöl.
  2. Byte: 8 bit, legfeljebb 256 értéket képvisel. A mi seed-jeink 32 byte-os (256 bites) számokat használnak.
  3. Seed: A véletlenszám-generátor kiinduló bemenete. Ugyanaz a seed mindig ugyanazt az eredményt adja.
  4. Server Seed: A Cloudbet titkos kódja — egy 32 byte-os, kriptográfiailag véletlenszerű karakterlánc, amelyet a játék előtt generálunk, lezárunk, majd utólag felfedünk.
  5. Client Seed: A te kódod — magad is megadhatod, vagy hagyhatod, hogy a böngésződ generáljon egyet (legfeljebb 255 karakter hosszan).
  6. Nonce: Egy körszámláló, amely minden alkalommal növekszik, amikor ugyanazzal a seed-párral játszol, így minden kör egyedi.
  7. Hash / Commitment: A Server Seed biztonságos lenyomata, amelyet még a játék előtt megosztunk veled. Visszafejthetetlen — senki sem tudja belőle visszafejteni a seedet, de miután a seedet felfedtük, ha te magad is hash-eled, ugyanazt a Commitmentet kell kapnod.
  8. Round Signature: A Server Seed, a Client Seed és a Nonce összefésülve és összehash-elve — ez a tényleges bemenet, amely meghatározza a kör kimenetelét.
  9. SHA3-256: A hash-algoritmus, amellyel a Commitmenteket és a Round Signature-öket készítjük. Ugyanaz a bemenet mindig ugyanazt a fix hosszúságú kimenetet adja; a folyamat nem visszafordítható.
  10. SHAKE256: Egy rugalmas SHA-3 algoritmus, amely a Round Signature-t azzá a véletlenszám-folyammá alakítja, amelyből a játékeredményed felépül — ugyanaz a bemenet mindig ugyanazt a kimenetet adja, és épp ez teszi lehetővé az ellenőrzést.
  11. Modulo: Az osztás után megmaradó maradék (pl. 16 % 5 = 1) — ezzel alakítunk egy véletlenszámot a lehetséges kimenetelek egyikévé.
  12. Seed-ek cseréje (Rotate seeds): Mindkét seed frissítése egy új, véletlenszerű párra.

Felkészülés egy körre

Minden kör kezdete előtt két szám jön létre: a Server Seed és a Client Seed.

A Cloudbet játékszervere a Node.js kriptográfiai randomBytes függvényével generálja a Server Seedet — egy 32 byte-os (256 bites) számot, ami gyakorlatilag egy biztonságos digitális érmefeldobás 256-szori megismétlése. Ez titokban marad, amíg a seed-párt le nem cseréled. Annak bizonyítására, hogy utólag nem fog megváltozni, a szerver azonnal hash-eli is (SHA3-256 használatával) egy Commitmentté, amelyet még a játék előtt megosztunk veled — így miután a seed felfedésre került, magad is le tudod hash-elni, és ellenőrizheted, hogy egyezik-e.

A Client Seedet alapértelmezetten a böngésződ generálja, de te magad is beállíthatod.

Ábra, amely bemutatja a Cloudbet bizonyíthatóan tisztességes rendszerét: a Server Seedet SHA3-256 algoritmussal hash-elik, így jön létre a játék előtt megjelenő Commitment, míg a Client Seedet a játékos böngészője generálja.

A kör során

A Server Seeded, a Client Seeded és a Nonce-od összefésülve és SHA3-256-tal összehash-elve egyetlen Round Signature-t alkotnak — mintha két ember titokban hozzáadná a saját felét egy névhez, így egyikük sem ismeri előre a teljes eredményt.

Ábra, amely bemutatja, hogyan kombinálja a Cloudbet bizonyíthatóan tisztességes rendszere a Server Seedet, a Client Seedet és a Nonce-ot, majd SHA3-256 algoritmussal egyetlen Round Signature-ré hash-eli őket.

Ezt a Round Signature-t ezután a SHAKE256 kapja meg, amely legenerálja azt a véletlenszám-folyamot, amely meghatározza a játék kimenetelét. Mivel a SHAKE256 mindig ugyanazt a kimenetet adja ugyanarra a bemenetre, bárki, aki ismeri a felfedett seedeket és a nonce-ot, reprodukálhatja a pontos eredményedet — épp ez teszi lehetővé az ellenőrzést. Hogy ez a véletlenszám-folyam hogyan alakul át tényleges játékeredménnyé (pl. hova kerülnek az aknák, mit mutat egy dobókocka), az játékonként eltérő — nézd meg, hogyan működik a Mines és a többi Cloudbet Originals játék esetében.

Ábra, amely bemutatja, hogyan kerül a Round Signature a SHAKE256 algoritmusba, létrehozva a véletlenszám-sorozatot, amely minden bizonyíthatóan tisztességes játékeredmény alapja.

A tisztességes játékeredmények az elutasításos mintavételre (rejection sampling) is támaszkodnak — ez egy olyan módszer, amely biztosítja, hogy egy véletlenszerűen generált szám valóban egyenlő eséllyel válasszon a lehetséges kimenetelek közül, ahelyett, hogy az egyenetlen osztás miatt egyeseket előnyben részesítene.

Az elutasításos mintavétel részletes bemutatásához írtunk egy rövid példát egy 10 oldalú dobókockával, ahol — mivel 10 lehetséges kimenetel van — P értéke 10.

Egy 10 oldalú dobókocka dobását általában úgy szimuláljuk, hogy véletlenszerűen generálunk egy „X” számot, majd kiszámítjuk X modulo 10-et, mivel — hasonlóan egy kockadobáshoz — ennek a műveletnek 10 lehetséges kimenetele van. Ha viszont ezt előzetes elutasításos mintavétel nélkül tesszük, igazságtalanul előnyben részesítjük az alacsonyabb kimeneteleket. Tegyük fel, hogy X egy véletlenszerű 4 bites szám, tehát 2⁴=16 lehetséges értéke van: 0-tól 15-ig. Ekkor X modulo 10 (X % 10) minden lehetséges eredménye:

  1. Ha X 0 és 9 között van: 0 … 9
  2. Ha X 10 és 15 között van: 0 … 5

Ezt szemlélteti az alábbi ábra:

Táblázat, amely bemutatja, miért van szükség elutasításos mintavételre (rejection sampling) a bizonyíthatóan tisztességes rendszerekben: enélkül a kockaeredmények egyenetlenül, torzítottan oszlanának el.

A 0-tól 5-ig terjedő kockadobás-eredmények mindegyike kétféle X-ből is előállhat, míg a 6-9 közötti eredmények csak egyből. Ez azt jelenti, hogy a 0-5 közötti dobások kétszer olyan valószínűek, mint a 6-9 közöttiek, ami nem tisztességes:

Táblázat, amely kiemeli azokat a konkrét kockaeredményeket, amelyek túlreprezentálttá válnak, ha egy bizonyíthatóan tisztességes véletlenszám-generátor kihagyja az elutasításos mintavételt.

Ez azért történik, mert a 16 nem osztható egyenletesen 10-zel. Éppen ezért az elutasításos mintavétellel megkeressük a legnagyobb olyan számot, amely EGYENLETESEN osztható 10-zel. 4 biten X legnagyobb értéke 15 lehet, és a legnagyobb, ebbe az értéktartományba eső 10-es többszörös a 10, ezért minden 10-nél nagyobb vagy azzal egyenlő véletlenszámot elutasítunk. Így X-nek csak a 0 … 9 értékek lehetnek. Megjegyzés: ha egy számot elutasítunk, egy újat mintavételezünk.

Táblázat, amely bemutatja, hogyan teszi az elutasításos mintavétel torzítatlanná a Cloudbet bizonyíthatóan tisztességes rendszerét, minden kockaeredménynek egyenlő valószínűséget biztosítva.

Az elutasítási lépés után kiszámítjuk X modulo P értékét, hogy 0 és P közötti számot kapjunk. Ez határozza meg, hogy az 1/P eséllyel bekövetkező kimenetelek közül melyiket választjuk.

Hogyan ellenőrizd a játékeredményeidet

  1. Játék előtt jegyezd fel a Commitmentet és a Client Seededet.
  2. A kör után cseréld le a seedjeidet, hogy a felhasznált Server Seed felfedésre kerüljön.
  3. Hash-eld a felfedett Server Seedet SHA3-256-tal — ennek egyeznie kell az elmentett Commitmenttel. Ez megerősíti, hogy a seed nem változott meg a játék közben.
  4. Illeszd be a Server Seededet, a Client Seededet és a Nonce-odat az alábbi ellenőrző kalkulátorba — ez nulláról felépíti az eredményt.
  5. Hasonlítsd össze azzal, amit a játékban láttál. Egyezés esetén a kör tisztességes volt; eltérés esetén ez manipulációra utalna (ami a Cloudbetnél nem fordulhat elő).

GYIK: válaszok a provably fair kérdéseidre

1. Miért ilyen hosszúak és véletlenszerűek a seedek?

Mert a véletlenszerűség a tisztességesség alapja. A hosszú karakterláncok megakadályozzák, hogy akár a Cloudbet, akár a játékosok előre jelezzék vagy manipulálják az eredményeket. Több entrópia = több bizalom.

2. Megváltoztathatom a Client Seedemet?

Igen. Menj a játék tisztességességi beállításaihoz, és bármikor megadhatod a saját Client Seededet. Olyan gyakran cserélheted, ahogy csak szeretnéd.

3. Mi történik, ha a Server Seed nem egyezik az eredeti hash-sel?

Akkor valami nem stimmel. A hash-elés lényege éppen az, hogy bizonyítsa: a seed már a játék kezdete előtt rögzítve volt. Egy eltérés manipulációra utalna — de a Cloudbetnél ez nem fordulhat elő.

4. Kriptográfiai ismeretekre van szükségem ehhez?

Nincs. Az eszköz elvégzi helyetted a nehezét. Neked csak másolnod, beillesztened és ellenőrizned kell.

5. Mi is pontosan a hash?

Képzeld el úgy, mint egy digitális aláírást. A Server Seed egy kriptográfiai algoritmussal történő összekeverésével jön létre. Ha valaki később megpróbálja megváltoztatni a seedet, a hash is más lesz — így lelepleződik a csalás.

6. Használhatok külső eszközöket az eredmények ellenőrzésére?

Igen. A Cloudbet rendszere kompatibilis független ellenőrző eszközökkel is, így a platformunkon kívül is duplán ellenőrizheted az eredményeket.

7. Miért számít ez, ha a játékok amúgy is szórakoztatóak?

Mert a tisztességesség nem egy extra funkció — hanem alapkövetelmény. Amikor kriptóval fogadsz, teljes kontrollt és nulla találgatást érdemelsz. A provably fair ezt teszi alapértelmezetté.

Provably fair játékmagyarázatok:

  1. Provably fair Mines
  2. Provably fair Pump
  3. Provably fair Plinko
  4. Provably fair Dice
  5. Provably fair Dice: Golden Ticket
  6. Provably fair Limbo
  7. Provably fair Roulette