STEP-BY-STEP GUIDE TO PROVING FAIRNESS OF GAMES - Thunderpick example
Since the beginning of gambling there has been the question whether the game you’re playing is fair, random and not designed to rob you of your money.
So regulatory bodies started requiring casinos and game providers to have their software regularly tested for randomness at third party companies.
But that didn’t fill players with much confidence because they still couldn’t see randomness being proven on their own.
Then, about a decade later, blockchain technology, the mother behind Bitcoin and other crypto currencies, provided a solution.
HOW DOES PROVABLY FAIR WORK?
Don’t worry if that sounds confusing, we’re going to do a step by step in a few moments and you’ll see what it all means.
Using the same blockchain principle, provably fair casino games provide you with a so-called ‘hash’ before each game round begins. The hash is an encrypted outcome of the round which is about to be played out. You basically have the result of the game beforehand but it’s encrypted, so you can’t understand it and use it against the casino. At the same time, the casino can’t alter the results because you already have them.
PROVING FAIRNESS OF THUNDERPICK'S GAMES
Thunderpick has 2 in-house games, Spin and Crash, which are both provably fair. Let’s use the Spin as an example.
Before the round begins, the game provides you with the hash, which is found below the wheel (look for the long and weird looking sequence of letters and numbers).
In this case the hash is:
As much as this character sequence looks alien, it holds the result of the next round.
Then the wheel spins and when it stops, you are given a new hash for the next round and an un-hashed result of the game, which is basically a decrypted version of the hash you got before the round.
In the game of Spin, you can find it below the wheel and above the hash of the upcoming round. By hovering your mouse cursor over the last vertical line representing the last result, the hash, salt and result are revealed.
The hash here is the same one as you got before the round and ‘salt’ is just a name for the un-hashed result of the game round.
In this example, the salt is:
and the actual result is 1.
You don’t have to believe the hash written here (in case you’re worried someone changed it to mess with the result) because you copied it down before the round started.
And now, the only thing left to do is see whether the result is the same as the hash you got before the round began.
You can check that by using a ‘hash calculator’ from Xorbin. This calculator uses a mathematical function to encrypt data. Since you have the un-hashed result (salt) and the actual result (1), you can use the calculator to encrypt them and see if they are the same as your hash, which, again, is only an encrypted version of the result.
By entering first the salt and then the actual result after the salt into the ‘Data’ field and then clicking ‘Calculate SHA256 hash’, the calculator will return the encrypted version or the result which should equal your hash.
And now, by comparing the result of the calculator and the hash you got at the beginning of the game round:
IS IT REALLY FAIR?
If at any time during the above process you asked yourself: ‘Can I trust the calculator?’, your question is completely justified!
After all, if you want to be the one proving fairness of a game instead of a third party company, then you must be able to have control of the whole process.
In this case the explanation is much simpler: unlike a casino game, where you need specific software knowledge to develop it and understand it, anyone with basic programming knowledge can write his own SHA-256 calculator and since the calculator uses specific mathematical functions, any such calculator will produce the same result.
If you don’t believe it, here are some other calculators you can try:
Another thing worth noting is that there are lots of different versions of hash which can be used to encrypt data. But in this case SHA-256 must be used because the game uses that kind of hash to encrypt its results.