Creating a Fully Transparent Casino
Reality check folks — right now, in 2017 THERE IS NO WORKING full transparency mechanism (besides our etherslots.win and couple of some other new ETH casinos, one of them is Vdice) for online casinos. And they have full power to cheat against own players.
$46 Billion industry have full power to cheat against own players. That means even slight change of the house edge, or slight tweak in randomness generator can make a huge difference for most online casinos. It must be really hard for casino owners not to lose against this temptation.
Usually casinos provide fairness checks, but it doesn’t mean it actually works. Now let’s dive deeper into a mechanism of fairness check. The main idea of this is to generate random number (randomness) and make sure that both parties: player and casino is not cheating in the process.
In order to generate randomness we need:
- Math formula for randomness generator
- Formula is usually created by the casino and in some occasions published online.
- Input number to the formula
- Input number is a mixture of PLAYER’S and CASINOS offered numbers/ seeds.
So let’s imagine a hypothetical randomness generator:
Formula — √input seed x 10
Let’s say casino’s offered number/seed is 3. Player’s seed is 9. We blend both seeds to get an input number: 3 + 9 = 12 (it’s oversimplified formula. Usually casinos have more complex formulas to blend seeds from both sides).
Now let’s put input number to the formula to get a random number: √12 x 10 = 34.64 and that’s our random number! (it’s oversimplified formula. Usually casinos have more complex formulas to generate randomness).
So where is the transparency factor in this mechanism? Transparency factor is that player can submit (it can also be assigned by the casino) his or her own seed to the formula and influence outcome of randomness generator. Casino will not know what value player will submit, so even if casino changes formula or their own seed — final outcome is still unpredicted. After the game players can check seed and how random outcome was generated.
This is a mechanism of transparency which is currently working in most of online casinos.
HOWEVER CASINOS CAN RIGG IT! Because mechanism is inside the server of a casino and they can easily influence every variable, without being noticed. One of common ways: changing order which party submits own seed first.
Just coming back to our formula:
Imagine a player submit his seed which is a number 3. Now it’s casino’s turn to submit their seed. Because Casino can submit their seed 2nd they can easily generate 1000 seeds on their server and chose one which fits best to their desired outcome.
Or if player doesn’t assign seed manually — casino can assign seed for him on his own. They can also stop payments if players won a huge sums of money. Technically casinos have full power to manipulate fairness check or randomness generator to get an advantage.
More advanced ways of cheating: play fair on low limits and play unfair on high bets. In this scenario it would be even hard to spot that casino is cheating. Here you can read more about this case: https://bitcointalk.org/index.php?topic=948965
Bottom line: randomness generator and fairness check mechanism is in place but it does not work. Good news — thanks to smart contracts, we can finally fix this issue. We can program a smart contract which is unbreakable and and connect casino’s server to the blockchain. So even if casino owners wants to cheat — everyone would find it out immediately.
Public smart contract will:
- Mark player’s and casino’s seed. So casino will not have a chance to provide own seed 2nd without being spotted on the blockchain.
- Mark randomness generation formula.
- Send ETH currency to the winner.
To sum up and outline main differences: bitcoin/fiat casinos have all fairness check and randomness generator inside their servers. They can easily manipulate every single part of that, without being spotted.
Edgeless casino have fairness check and randomness generator inside the server too, but it also has a Smart Contract which connects gambling mechanism to the Ethereum blockchain. Smart contract tracks activity inside the server and shares information uploaded to the blockchain, becomes instantly available to the public. If there is an attempt to cheat, people will know it. Using this mechanism there is NO WAY casino can cheat without being spotted. Also, smart contract automatically handles transactions. Casino cannot avoid paying for players who made a win.
You might ask us: Does it mean a player needs to submit his seed/ input number manually? Isn’t it quite annoying to do that before every bet?
On one hand, yes, but on the other we do not expect players entering their seeds all the time. For this issue we will integrate random.org to our Edgeless casino platform, so players can chose to generate seed on their own or let random.org do it for them.
So, what do you think about power of a smart contract to make gambling transparent?