Author

Topic: Brief explanation of what PROVABLY FAIR means(for those who are wondering) (Read 953 times)

sr. member
Activity: 348
Merit: 250
if I read this
http://www.reddit.com/r/Bitcoin/comments/1frm4x/provably_fair_by_bitzino_not_provable_with/

I get the impression that there is no provably fair

No, he is explaining ways that the house could circumvent provably fair, to deliver non-provably fair results to a player. Provably fair is real, and breaking the cryptography behind it is not a viable option.

if the house could circumvent  the provably fair that would be sad but I am sure it is done by some casino owners.
now my question is if there is a provably fair option that both sides ( casino op and player) can be sure that it is provably fair?
thanks
b!z
legendary
Activity: 1582
Merit: 1010
if I read this
http://www.reddit.com/r/Bitcoin/comments/1frm4x/provably_fair_by_bitzino_not_provable_with/

I get the impression that there is no provably fair

No, he is explaining ways that the house could circumvent provably fair, to deliver non-provably fair results to a player. Provably fair is real, and breaking the cryptography behind it is not a viable option.
sr. member
Activity: 348
Merit: 250
member
Activity: 98
Merit: 10
nearly dead
Provably fair means that random numbers used in the game are not modified by the dealer


Provably fair is more than that.

Look, the hash of the result for your next bet is e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e. I will never modify it before you bet, but that doesn't make it provably fair. Why is this not provably fair ? Because the user had no input in the process, the operator is free to pick results but never modify them after picked.

There is an easy way to think about it.  Suppose the casino dealer goes in the back room and lays out all the cards in the exact order they will be dealt.  The dealer then prints a picture of the cards, cuts it into little puzzle pieces, and then gives it to the player.  Once the players finish the hand they can then put the puzzle together and see that the cards were dealt fairly.

You just made the same mistake. Please refrain from trying to explain it when you don't understand the concept yourself.

Note that a verifiable system does not completely eliminate cheating is a casino wants to cheat you.  For instance, using these verifiable systems usually means the casino knows the result before they display it so they could simply “stall” your connection and your web page would hang.  Complex cheating schemes are discussed at

http://www.reddit.com/r/Bitcoin/comments/1frm4x/provably_fair_by_bitzino_not_provable_with/

There are no complex cheating schemes there.

"Stalling" a connection does nothing here after you understand an actual provably fair method. If the secret seed was not revealed, and you cannot reuse a seed, then this is not provably fair.

Some systems require the user to input a string or “seed.”  If a player leaves the same “seed” in place from play to play the casino can predict future plays and adjust the outcome.

Then that system is not provably fair, because the user seed must be always entered after whatever server seeds are set. If you do not understand the implications of this, then you, again, do not understand what provably fair is. If the user does not enter his user seed, then for all purposes there is actually no user seed.
sr. member
Activity: 423
Merit: 250
Provably fair means that random numbers used in the game are not modified by the dealer


Provably fair is more than that.

Look, the hash of the result for your next bet is e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e. I will never modify it before you bet, but that doesn't make it provably fair. Why is this not provably fair ? Because the user had no input in the process, the operator is free to pick results but never modify them after picked.

Yes, that is true, provably fair is way more than what I've explained.

For those not familiar with cryptography it is pretty confusing.  These verification schemes can be implemented with or without Bitcoin but the methods are similar to how Bitcoin works.

There is an easy way to think about it.  Suppose the casino dealer goes in the back room and lays out all the cards in the exact order they will be dealt.  The dealer then prints a picture of the cards, cuts it into little puzzle pieces, and then gives it to the player.  Once the players finish the hand they can then put the puzzle together and see that the cards were dealt fairly.

Instead of a picture what is used is a “cryptographic hash.”  This works by inputting a string of any length and the output is a fixed length (see web-based tool).  Some common uses of hashes are software distributions.  If the software program is changed in any way the hash will change.  But, if you have the hash you cannot tell what the original string was.  In other words, if you have the hash you cannot reproduce the software program.  If the hash changes you cannot tell what was changed, only that it was changed.

Note that a verifiable system does not completely eliminate cheating is a casino wants to cheat you.  For instance, using these verifiable systems usually means the casino knows the result before they display it so they could simply “stall” your connection and your web page would hang.  A player may never know they had a jackpot coming.  Some systems require the user to input a string or “seed.”  If a player leaves the same “seed” in place from play to play the casino can predict future plays and adjust the outcome.  Complex cheating schemes are discussed at

http://www.reddit.com/r/Bitcoin/comments/1frm4x/provably_fair_by_bitzino_not_provable_with/

When a hash is produced it verifies the contents of a string but does not verify the time it was produces.  For example, if someone invents something they not only want to verify the contents of their inventions but they also want to prove the time it was created.  This is normally done by sending the hash to a trusted third party who put a time stamp on it.  


However, someone wrote a free program that allows Bitcoin to put the timestamp on for free.  It works by creating a series of transactions in Bitcoin that reproduces the hash.  The timestamp is automatic in Bitcoin and the transitions are publically available.  This can be done by sending funds to different addresses owned by the same person so they are just transferring Bitcoin to themselves in specific amounts to reproduce the hash so it is free.
member
Activity: 98
Merit: 10
nearly dead
Provably fair means that random numbers used in the game are not modified by the dealer


Provably fair is more than that.

Look, the hash of the result for your next bet is e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e. I will never modify it before you bet, but that doesn't make it provably fair. Why is this not provably fair ? Because the user had no input in the process, the operator is free to pick results but never modify them after picked.
sr. member
Activity: 423
Merit: 250
http://bitcoinreviewer.com/provably-fair/

This is also a good explanation. Thanks for sharing the post Smiley

Not a problem. 

When I first heard the terms "provably fair" I didn't really understand what it meant
I assumed that if a gambling site was provably fair, then that site was trustworthy in a sense, but I didn't know in detail exactly what it was. So I wanted to clarify for those who are unsure what provably fair is.



b!z
legendary
Activity: 1582
Merit: 1010
http://bitcoinreviewer.com/provably-fair/

This is also a good explanation. Thanks for sharing the post Smiley
sr. member
Activity: 423
Merit: 250
Provably fair means that random numbers used in the game are not modified by the dealer
payouts are really based on these random numbers and nothing else.
The first clause can use two approaches (or a combination of them):

publishing random numbers in an encrypted form before the game and disclosing the key later
using some information that is available to everyone yet non-predictable (e.g. Doe Jones index or hash of the next block)
Note, there are two variations: (a) dealers know the numbers beforehand, (b) dealers don't know them and get them simultaneously with everyone else. In case (a) there may be possibility for cheating (depends on game rules) - so the rules must be analyzed carefully.

The second clause requires that game statistics is publicly available and verifiable. Block-chain is a good place for it. In case of SatoshiDice, payout fairness can be analyzed by looking at all transactions that involve their wallets. If a gambling site uses a new temporary deposit wallet for each new player, then this clause is not fulfilled.

Notion of fairness still bases on some vague assumptions, namely

nobody has enough computing power for breaking the cyphers and hashes involved
all games played (as seen on the publicly available statistics) were played by independent people and not the game creators
rules won't change immediately, i.e. all new games will be played by the same rules as the previous ones
Publicly available history can only show you that the game was fair in the past, but it does not guarantee that the next round will be fair. I.e. game creators can just switch the game off, but still accept payments to game wallets and keep them to themselves. People may not notice this immediately.
Jump to: