Provably Fair

You can trust us

Any game from SoftSwiss presented on our website allows to check the fairness of the results. Use of encryption does not allow the Casino or the Gambler to know the result of the game before it starts. In addition, each result can be checked by your own hand. Next, we will take a look at some examples and describe the methods of encryption and how to verify the results in more detail.


Proof of the roulette fair play

Mathematically, the roulette is presented as a one-dimensional matrix array, the outcome (ball position) of which is selected by generating a random number. "Mersenne Twister" algorithm – one of the best algorithms – is used in generation. It provides a solid dispersion and unpredictable results.

For example, let’s consider the real outcome of the roulette spin.
In the example, you see a client SEED (additional offset) and HASH (Result + Secret). HASH is a unique identifier of a gambling event. Secret is an additional number used to encrypt the outcome of the game. It makes it impossible to find out the outcome in advance. HASH ID is created by data hashing using SHA-256 algorithm. You can save this data to check the outcome after it is produced. You can affect the outcome by changing the SEED value (0-37).

Once you have obtained the roulette spin outcome, you can verify that it has been generated on the basis of the previously announced HASH ID. You can see this using the built-in “Provability” panel, which is the second icon in the upper right corner of the game window. You can also use any third-party hash calculator for verification. We can advise you https://quickhash.com, but you can use any other.
You need to perform a number of simple steps for verification:

• Select SHA-256(SHA2) hashing algorithm from the “Algorithm” list
• Copy the “Result + Secret” field value and paste it into the “Input Data” field
• Click the button “Generate (Over Secure Connection)”

The outcome obtained in the “Output Data” field should be identical to the HASH (Result + Secure) field on “Provability” panel.


Proof of the card game fair play

Mathematically, the card deck is represented as a one-dimensional matrix array containing 312 values (6 full card decks), which is "shuffled" using the Fisher-Yates method. The random number of "shuffling" is generated using "Mersenne Twister" algorithm. This ensures a high quality of the deck shuffle. The resultant deck is called “Result”.

For example, let’s consider the real outcome of the deal in Hold'em poker.
In the example, you see a client SEED (cut the deck) and HASH (Result + Secret). HASH is a unique identifier of a gambling event. Secret is an additional number used to encrypt the outcome of the game. It makes it impossible to find out the outcome in advance. HASH ID is created by data hashing using SHA-256 algorithm. You can save this data to check the outcome after it is produced. You can affect the outcome by changing the SEED value (0-311).

Once you have obtained the deal outcome, you can verify that it has been generated on the basis of the previously announced HASH ID. You can see this using the built-in “Provability” panel, which is the second icon in the upper right corner of the game window. You can click the “Verify” button to verify. You can also use any third-party hash calculator for verification. We can advise you https://quickhash.com, but you can use any other.

• Select SHA-256(SHA2) hashing algorithm from the “Algorithm” list
• Copy the “Result + Secret” field value and paste it into the “Input Data” field
• Click the button “Generate (Over Secure Connection)”

The outcome obtained in the “Output Data” field should be identical to the HASH (Result + Secure) field on “Provability” panel.


Proof of slot game fair play

Mathematically, the slot is represented by a set of 5 one-dimensional matrices (for a 5-reel slot). For the resultant state of the slot, random positions in each of the matrices are selected, which are mean observations for each of the resulting reels. "Mersenne Twister" algorithm is used to select the position.

For example, let’s consider the real outcome of Cherry Fiesta game.
In the example, you see a client SEED (additional offset for each reel) and HASH (Result + Secret). HASH is a unique identifier of a gambling event. Secret is an additional number used to encrypt the outcome of the game. It makes it impossible to find out the outcome in advance. HASH ID is created by data hashing using SHA-256 algorithm. You can save this data to check the outcome after it is produced. You can affect the outcome by changing the SEED value (0-9) for each of the slot reels.

Once you have obtained the slot spin outcome, you can verify that it has been generated on the basis of the previously announced HASH ID. You can see this using the built-in “Provability” panel, which is the second icon in the upper right corner of the game window. You can click the “Verify” button to verify. You can also use any third-party hash calculator for verification. We can advise you https://quickhash.com, but you can use any other.
You need to perform a number of simple steps for verification:

• Select SHA-256(SHA2) hashing algorithm from the “Algorithm” list
• Copy the “Result + Secret” field value and paste it into the “Input Data” field
• Click the button “Generate (Over Secure Connection)”

The outcome obtained in the “Output Data” field should be identical to the HASH (Result + Secure) field on “Provability” panel.

Verification of the outcome and impact of “SEED” setting on the outcome.
The resulting reel:
“Final Result” value:
{"symbols":[
["a","t","n","n","basket"],
["raspberries","pear","j","q","j"],
["peach","q","peach","raspberries","t"]
],"card":"JC"}
This is a string-by-string character display of the outcome

“SEED” value:
1 8 3 9 7
This is a designation of an additional offset in the resulting reel

“Result + Secret” value:
{"symbols":[
["n","plum","n","q","k"], - 0 string
["a","n","q","pear","a"], - 1 string
["raspberries","apple","t","n","pear"], - 2 string
["peach","peach","n","j","j"], - 3 string
["a","a","j","pear","a"], - 4 string
["apple","q","peach","n","peach"], - 5 string
["basket","n","n","a","n"], - 6 string
["n","j","k","k","basket"], - 7 string
["k","t","j","t","j"], - 8 string
["q","pear","a","n","t"], - 9 string
["n","q","pear","q","k"], - 10 string
["t","j","girl","raspberries","peach"] - 11 string
],"card":"JD","game":"CherryFiesta","secret":"e8f6ead94e1e6104877f7ff545e2bc23"}
Resulting reel + Game name + Secret

Offset for 1 was applied to reel 1, respectively, we have to choose the first symbols from 1, 2 and 3 strings of the Resulting reel for the first reel.
We get: "a", "raspberries", "peach"

We perform the same check for reel 2:
Offset value is 8.
Result: "t", "pear", "q"

For the rest of the reels, the results will be respectively:
Reel 3 - "n","j","peach"
Reel 4 - "n”,"q","raspberries"
Reel 5 - "basket","j","t"

Let's put the obtained values in order:
a, t, n, n, basket
raspberries, pear, j, q, j
peach, q, peach, raspberries, t

Now compare with the reel value
["a","t","n","n","basket"],
["raspberries","pear","j","q","j"],
["peach","q","peach","raspberries","t"]

We can see they are identical.
Verification is over. Outcome is positive.
This proves that the result of the spin has not been changed and you can actually influence it.