trustless Bitcoin betting — the house never holds your coins and can't change the outcome
The dealer secretly chooses which cup hides the ball, and locks in that choice before you pick. Your browser checks that the dealer really did this by verifying a zero-knowledge proof — a cryptographic guarantee that the choice can't be changed. By the time the dealer sees your guess, it's too late to switch. No trust in the dealer required.
Your coins stay in your own wallet until you personally sign the bet transaction there. Each bet is funded directly into a 2-of-2 pot that neither party can spend alone — and before you're asked to sign anything, this page hands you a pre-signed refund transaction. If the dealer vanishes or stalls, broadcasting that refund (enforced by Bitcoin consensus, not by the dealer's cooperation) returns your coins after a short timelock.
The browser holds only per-bet protocol keys (the pot key and the claim key), which never own your coins. Your spending keys stay in your wallet; the dealer only ever sees protocol messages — public keys, proofs, signatures.
The protocol code is open source — inspect and build it yourself. View source · 📄 Read the paper