Provably Fair types
Different games has different requirements to be fair. We are providing 3 types of algorithms which differ in how seeds pairs are handled.
For singleplayer games such as Dice, Slots ect game events are calculated with seeds pairs that are user-specific
For multiplayer games such as CoinFlip, where users are playing versus each other, we use day-defined seeds. Each day we generate a pair of server & client seeds. To calculate game event we user generateFloats function with game id as nonce.
For multiplayer games such as Crash, where users are playing together, we use predefined seeds. To ensure that we haven't faked game results, we have generated large number of server seeds (next server seed is SHA256 hash of last server seed) and announced which bitcoin block hash we will use as client seed BEFORE this block is mined. Each server hash represents 1 Crash game, we are playing from the last hash to the first. To validate current crash game you should wait until the game end (until the server hash is revealed), pick its server seed and hash it. The result will equal to server seed for game played before. You can continue this validation up to the first game played, its server seed is also announced