Game Fairness

VEGAS uses a hybrid cryptographic architecture to guarantee provably fair gameplay with zero trust in the server. Here’s how we ensure the integrity of every deck dealt, without interrupting your poker flow.


🔐 1. Key Generation & Persistence

Every player contributes to randomness via a secure, persistent Ed25519 keypair tied to their account.

How it works:

  1. Key Derivation On signup, we combine your password and Ethereum public key, then run them through a key derivative function (KDF) (e.g. scrypt or HKDF) to generate an Ed25519 keypair.

  2. Local Storage Your private key is encrypted (using the password-derived key) and stored safely in your browser’s local storage (e.g., IndexedDB). You never need to re-enter it manually.

  3. Public Key Registration The public key is registered once with our backend, allowing us to verify your future signatures.

  4. Seamless Signing When gameplay requires RNG input, the app:

    • Decrypts your private key locally,

    • Signs the RNG contribution,

    • Sends the (value, signature) - all in the background, without triggering MetaMask or wallet prompts.

No friction, no leaks: your key never leaves your device.

When the term “private key” is mentioned throughout this page, please note: This does not refer to your Ethereum wallet’s private key.

VEGAS generates a separate Ed25519 keypair, used exclusively for RNG signing. The private part of this RNG key is encrypted and stored locally: your wallet keys are never exposed or accessed.


🎲 2. Fair Randomness Collection

Each time a game starts, the protocol ensures multi-party randomness:

  • The server asks: “Submit a random 256-bit value”

  • Your app signs the value and submits it, proving it's from you


🧪 3. Seed Generation & Deck Shuffle

We use a collaborative, verifiable process to determine the shuffle:

  1. Aggregate inputs Combine RNG values from all players + the server.

  2. Compute seed seed = hash(concat(player1 || player2 || ... || server))

  3. Shuffle deck Run a Fisher–Yates shuffle using that seed.


🧾 4. SNARK Proof & On-Chain Publishing

We don’t just shuffle fairly: we prove it.

  1. Generate SNARK proof A Noir-based zero-knowledge proof attests that the deck was fairly derived from the seed.

  2. Emit proof on-chain The proof is pushed as an event to Ethereum, public and immutable.

  3. Verify transparently Anyone can fetch the proof and verify it independently. No secret values, no backdoors.


Explanatory diagram

✅ Guarantees You Get

  • Zero-friction experience: play instantly after unlocking

  • Cryptographic integrity: your randomness is verifiably real

  • Tamper-proof shuffle: no one can manipulate card order

  • On-chain transparency: backed by SNARK, visible to all


🔍 What Makes VEGAS Different?

  • Most platforms control the RNG fully: you just trust them.

  • On VEGAS, every player signs their randomness, and we prove the deck is fair with SNARKs.

  • You can inspect and verify the shuffle on-chain, anytime.

Last updated