🎲 Thimbly

A demonstration of Babilonia. Trustless bitcoin betting, where the transactions look like normal payments, and the dealer never holds your coins.

🔑 You'll need a Taproot wallet (Sparrow or Bitcoin Core) to sign. Wallet & signing guide →
Why is this trustless?

The dealer can't change the outcome

dealer commitshis hidden choice → both sides prove it's honestZK proof · before any coin moves → you co-sign the payoutreveals the deciding key on-chain

Both sides prove their choices are honestly formed with a zero-knowledge proof — before any coin moves. Your guess stays hidden, and the dealer can't collect without publishing the secret that decides the outcome. Nothing to change after the fact.

Your coins never leave your control

your wallet → 2-of-2 potneither party alone → paid to you or refundedyou signed it first

Coins move only when you sign — and you hold a pre-signed refund before any coin moves. If the dealer vanishes, broadcast it and your stake returns, enforced by Bitcoin, not the dealer.

No keys in the browser

your walletspending keys this browserthrowaway bet keys → dealerpublic proofs only

Your spending keys stay in your wallet. The browser holds only per-bet keys that never own coins; the dealer only ever sees public messages.

The protocol code is open source — inspect and build it yourself. View source · 📄 Read the paper

How does a bet work?

Every bet is really 5 sub-bets at once. Your stake is split — at random — across five 1-of-N thimble games, each at its own odds, all in one pot. They settle in a single payout.

your stakesplit across 5 sub-bets →
1-of-2pays 2×
1-of-33×
1-of-55×
1-of-22×
1-of-44×
the outcomesmerged into one payout →
✓ 2×
✗
✓ 5×
✗
✓ 4×
↓
one cooperative payouta single ordinary payment

The five don't settle separately on-chain. You and the dealer agree the net and co-sign one payment — it looks like an ordinary transaction. A pre-signed fallback forces the same result if either side balks, so cooperating is the easy path.

Dealer

▾
disconnected
log