PROOFOFFIST
#17 Sign in Download app
Provably fair

Don't trust us. Check.

Before every throw, the house commits to its move by publishing sha256(server_seed:round:nonce) in a FistChain transaction. After you choose, it reveals server_seed. The house move is the first byte b < 255 of HMAC-SHA256(server_seed, "client_seed:round:nonce:i"), as b mod 3 → rock / paper / scissors. Everything below runs in your browser.

⬇ verify_fist.py (stdlib only)python verify_fist.py --url https://www.playfist.app/api/runs/<run_id>/proof

Verify a whole run

Verify a single throw