> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hoodshot.games/llms.txt
> Use this file to discover all available pages before exploring further.

# How HoodShot Is Provably Fair

> One digest, one signature, one possible outcome. HoodShot outcomes are forced by deterministic RSA over your bet terms, not by seeds or oracles.

HoodShot does not use server seeds, block-hash randomness, or an oracle. The outcome of every bet is forced by a cryptographic chain with no branch point where anyone can choose anything.

```
your bet terms --sha256--> digest --house RSA key--> signature --keccak256--> H --public rule--> outcome
```

<Steps>
  <Step title="The digest is fixed before anything is decided">
    The moment your bet lands, the contract computes a SHA-256 digest over the full bet: your address, your own bet counter, the game, your pick, the token, the stake, the chain and contract, and the placement block's parent hash. Change any term and it is a different digest.
  </Step>

  <Step title="Exactly one signature exists">
    The house signs the digest with a 2048-bit RSA key (deterministic PKCS#1 v1.5). The public half is stored in the contract, and the contract rejects anything that does not verify. RSA has one valid signature per digest under a given key, so there is no second outcome the house could pick after seeing your bet. Signing is the house's only move, and it is forced.
  </Step>

  <Step title="The outcome is arithmetic">
    `H = keccak256(signature)`. Coin Flip reads the low bit of H. Dice rolls `(H mod 6) + 1`. Plinko reads one bit of H per row. The contract pays exactly what the rule says.
  </Step>
</Steps>

## What this rules out

* **Outcome shopping.** One digest, one signature, one result, signed before anyone knows who won.
* **Replays.** The digest binds your address, your bet counter, and the placement branch. A signature for one bet verifies for no other bet, chain, or reorged history.
* **Rigged animations.** The animation replays the signed result. The money follows the contract's arithmetic, not the pixels.

The house keeps only the published 5% edge, applied to payouts. Your odds are exactly fair. And you never have to take any of this on faith: [verify any bet yourself](/concepts/verify-a-bet).
