Skip to content

Provably Fair – verify results yourself

Updated: 07/10/2026

Every game on Driplay uses Provably Fair: the result is decided before you bet and you can verify it yourself afterwards.

How it works

  1. The system creates server seed secret and shows you in advance SHA-256 hash of it.
  2. You have one client seed (you can set it yourself when changing seeds).
  3. Every bet uses a number nonce grows.
  4. Result = HMAC-SHA256(server seed, "client seed:nonce:0"); every 4 bytes make a float between 0 and 1.
  5. When you change seeds, the old server seed is revealed so you can compare it with the hash you saw.

Formula of each game

  • Dice: result = floor(float × 10001) / 100, from 0.00 to 100.00.
  • Limbo: multiplier = floor(95 / (1 − float)) / 100, minimum 1.00×.

Verify it yourself with JavaScript

const key = await crypto.subtle.importKey('raw', new TextEncoder().encode(serverSeed), {name:'HMAC', hash:'SHA-256'}, false, ['sign']);
const b = new Uint8Array(await crypto.subtle.sign('HMAC', key, new TextEncoder().encode(clientSeed + ':' + nonce + ':0')));
const f = b[0]/256 + b[1]/256**2 + b[2]/256**3 + b[3]/256**4;
console.log('Dice:', Math.floor(f * 10001) / 100);