No one can alter the result. Not even us.
Every game runs on a smart contract on Arbitrum — the outcome is determined on-chain, verified on Arbitrum. The site has no access to the result.
How it works
Commit
Both players seal their choice in a locked box (hash on the contract). No one can see it.
Reveal
When both boxes are in place, they are opened simultaneously.
Payout
The contract compares the contents and pays the winner. The sealed choice cannot be changed — the hash won't match.
Both stakes are committed on-chain. The outcome source — the validator's RANDAO — does not exist yet.
A secret seed is hashed and the hash is committed on-chain before play — locking the outcome without revealing it.
Security
We never see your keys
You sign in to Flippo through your own wallet — MetaMask, Coinbase Wallet, WalletConnect, Rainbow, Trust and others. The site does not control your wallet and cannot act on its behalf.
- We never ask for your private key or seed phrase — there is simply no field for it on the site.
- Signing in is a free signature of the message "Sign in to Flippo", not a transaction: it cannot move funds or grant token approvals.
- The only wallet data we store is your public address — it powers your profile, stats, leaderboard and referrals.
- Funds live in the GameBank smart contract. Only you initiate a withdrawal — the backend has no way to move your balance.
24-hour safeguard
No game can hold funds indefinitely. The contracts have a built-in timeout: if a game has not finished within 24 hours, it is force-closed under the contract's rules, and the locked funds are released and credited to game balances. You can withdraw your available balance at any time — that function keeps working even if the contract is paused.
Every game — provably fair
CoinFlip
Two players bet on opposite sides of a coin — the result resolves instantly when both are locked in.
The outcome is set by block.prevrandao provided by the Ethereum validator network for that block — unknown to anyone before both bets are placed.
Lottery
Players enter ETH into a shared pool — larger stakes mean a proportionally higher chance to win.
The winning point is drawn from block.prevrandao set by the Ethereum network at round close — not by the server, and nobody can predict it in advance.
Rock-Paper-Scissors
Classic rock-paper-scissors between two players.
Your move is sealed as a cryptographic hash before your opponent commits theirs — seeing or changing it is impossible.
Russian Roulette
2-6 players each lock a secret before joining — turn order is randomized from all secrets combined.
Player order and elimination are computed from all players' combined secrets hashed together — no one can predict the sequence before all secrets are revealed.
Minesweeper
Two players each secretly lay mines and plan their opening route on a 3x3 grid.
Both players commit their mine layout and opening sequence as a cryptographic hash before joining — changing either after the game starts is impossible.
Don't take our word for it.
The contract source code is open and immutable on Arbitrum. Verify it yourself.
- CoinFlip0x7288…9924
- Lottery0x6e7a…6e1c
- Rock-Paper-Scissors0x791e…7fdf
- Russian Roulette0x3798…8892
- Minesweeper0x8862…0558