Verify RNG
Verify the randomness generation for GODL rounds
Lite Mode Verification
Quick verification with minimal inputs. Paste round commit or enter manually, then click Verify
Optional: If provided, will calculate top miner sample for non-split rounds
How It Works
- Wait for end slot if it's in the future (~400ms per slot)
- Fetch slot hash from Solana's SlotHashes sysvar
- Retrieve seed from entropy provider (retry with 1s delay if 404)
- Compute entropy value: keccak(slot_hash || seed || samples)
- Derive round RNG and compute all game outcomes
How RNG Works in GODL
1. Entropy Generation (Commit-Reveal)
The entropy provider pre-commits to a secret seed by publishing keccak(seed). After a specified slot, the slot hash is sampled from Solana's slot history. The final entropy value is computed as:
value = keccak(slot_hash || seed || samples)2. Round RNG Derivation
The round RNG (r) is derived from the entropy value by splitting it into 4×u64 values and XORing them:
r = u64[0] ^ u64[1] ^ u64[2] ^ u64[3]3. Winning Square Selection
Simple modulo operation to select one of 25 squares:
winning_square = r % 254. Split vs Top-Miner Mode
Determines whether rewards are split among all miners on the winning square or given to a single top miner:
is_split = (reverse_bits(r) split into 4×u16, XOR them) % 2 == 05. Motherlode Hit
1 in 625 chance to trigger the motherlode payout:
motherlode_hit = reverse_bits(r) % 625 == 06. Top-Miner Selection (Non-Split Rounds)
When not in split mode, a weighted random sample selects the top miner proportional to their deployment:
sample = reverse_bits(r) % total_deployed_at_winning_squareThe miner whose cumulative deployment interval contains this sample wins.