🎲 Cups

trustless Bitcoin betting — the house never holds your coins and can't change the outcome

Why is this trustless?

The house 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.

The house never holds your coins

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.

No keys in the browser

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

Dealer

disconnected
log