Provably Fair Validation
Upload a whole game file
Spin No.
Lines played
Coins bet
Total win

How validation works

We have made the validation process quite simple, you have two options:

  1. Validate a single spin by manually filling the form on the left.
  2. Validate the entire game by uploading a JSON file with the complete spin history. The file can be downloaded on the main page.

No matter which method you use, they will yield the same result. The only difference is that if you provide a JSON file, you can inspect multiple spins and it will also verify the hash, result and the won amount. If you use the first manual option on the left, you have to do that yourself manually. The best part is that once you loaded the validation page, you can disconnect from internet and do the validation offline. The provably fair algorithm in your browser is the same as the one on the server site, which generates and calculate the result and the associated provably fair parameters. The whole process is done in javascript, so you don't have to download or install anything.

Examples (for validation types)

Here are some examples, for both type of validations, manual or file based:
Hash: 1a5edd801ac28b1d6802020bee4d5bd185c7c5db5813aa6ea1b0f85c0f21acaf3532fb95568a26620bd9884e8ec5cadda227bb748adf6d9b05d97f93074232e8
Secret: 7388b6bed1ca6cd080d8a88892baa210b1ec18f95668b8a6f63f9fa9deb4fecc
Seed: 0eff6058a6ec80b8
Salt: b15012c63eada53dcf5553c3f7ca54c1004ed58bccc083eacbc0d909c3576345
Lines: 20
Coins: 1
Which should yield a total won amount of 35 coins. Try it and see the result yourself
And here is an example game file with spins, just download it and select the upload button on the upper right of the page.Example valid game file And just for fun, the same intentionally invalidated game file

Explanation of the spin process

If the schematic is somewhat unclear the process is as follows:

  1. The server generates a secret * and a salt * .
  2. The salt is appended to the secret and the result is hashed using SHA-512 and shown to the user.
  3. The user can now enter a custom seed as a hexadecimal number (we recommend you do that), otherwise we generate a random seed.
  4. The user chooses the spin parameters such as lines and coins and starts the spin.
  5. The user seed is appended to the server secret and hashed with SHA-512 to deliver the final result.
  6. The result is parsed and revealed to the user along with the server secret and salt.
  7. The result can be validated now with the data provided. For example, if we change even a bit in the secret, then the hash will not validate. Same goes for not using the client's seed - the result will not verify either. Reverse engineering the hash is considered impractical.

Terms used

Hash: SHA-512 hash of the salt and appended secret.
Secret: this is a hexadecimal string used one time (nonce).
Salt: again, a hexadecimal string used one time (nonce).
Seed: a user provided hexadecimal string.

The validation process in few words

Before each spin we are providing you the hex presentation of the secret mixed with the salt and then hashed. That being said, you are free to record this (we do this also) and after that, once the spin is completed, we'll provide the secret, the salt along with the seed you entered (or trusted us generating).