Delving into Fairness: Kryptogamers.com

Is Kryptogames Fair?


TLDR: No evidence of foul play


provably-fair-bitcoin-casino.jpg
source

@kryptogames has been accused of fixing outcomes, especially with their Blackjack game. In an effort to get a deeper understanding of how gambling on the blockchain works and if it is fair, we decided to do some research and analysis. I listened to and read about parties accusing Kryptogamers of cheating, spent the past week picking @kryptogames brain and discussed this with developers who have a much deeper understanding of the blockchain than most. After researching the subject and getting a clearer picture of how it works, I know that they cannot possibly impact the cards once the first card is dealt.

Accusers Claims

  1. Has played a lot of Blackjack and believes "something is funny" in regards to Kryptogamers.
  2. Highly improbable series of the dealer winning
  3. "Nobody is up"
  • Read more in the comments of this Kryptogames post here
  • We are not going to discuss dividend payments, this is a gambling association, not an investing association, gambling is not investing and this article is not financial advice.
  • If you have any evidence of foul play, please submit it, actual transaction IDs are a must, please let us know the approximate time and date of the transaction along with the size of the bet so we can quickly verify them on steemd.com or steemworld.org and plug them into the verification algorithm
    Screenshot 2019-07-29 at 20.40.37.png
    As you can see, @crypticat, who is the author of this post is up almost 1200 Steem with over 9000 games played (July 29, 2019 20:40pm EST) so the claim that no one is up is false, there must be others too. Please note: Not all those games were Blackjack. Accusation 3 is false!

Statistical Facts


As you can see there is a 0.35% edge in favour of the house, so every Steem you bet you are likely to lose 0.0035 in the long run if you play a perfect game.
Screenshot 2019-07-29 at 20.32.35.pngThis is their game and the odds, you can check yourself at the source here

  • These odds are extremely generous when compared to dice games or slots, but you must know what you are doing.
  • The odds include successful doubles and splits; actual odds of losing a hand are ~53%, not including ties
  • Losing 10 hands in a row is horrible, but not impossible. (0.53)**10 = 0.00175 or approximately 1/571 hands with perfect play
  • You can hit on 20, which has an extremely high chance of losing, so just because you lost 20 times in a row, doesn't mean anything. We can verify your cards!

The most common mistake made when calculating odds is the gamblers falacy where people think that if something happens x times in a row, then it's must be unlikely that it will happen again when in reality the odds of it happening x + 1 times is exactly the same as it happening the first time if you are already at x events due to events being independent of each other. The worst outcome I saw was rolling above 50 something like 18 times in a row. That's one in one quarter million! Please share your stories of extreme events below.

Provably Fair

A provably fair casino gives you the ability to verify the fairness of your bets. In theory, such a casino can’t/won’t cheat you when considering that they’d easily be caught.

Smart contracts platforms like Ethereum and NEO make it impossible for gaming sites to alter results. Games on these platforms are governed by programming code, meaning there’s no chance for a casino owner/employee to change anything.

Basically, a provably fair casino is all about transparency and allowing you to enjoy fair gaming without worry.

Source https://www.gamblingsites.net/blog/pros-and-cons-of-provably-fair-casino-games/

  • I strongly recommend you read this article

How to Verify Kryptogames Bets


Kryptogames made a post about it here But we are going to try and dumb this down for you. As mentioned in the article above each hand (outcome, game) is the result of mixing three things: A client seed, A server seed, and a something which isn't repeatable called a Nonce. Instead of a Nonce, Kryptogames uses the Steemit Transaction ID. Let's look at each one separately.

Client Seed

You can change your client seed at any time, this is determined by your browser, you can also edit it yourself in the memo. Kryptogames has no influence over this!
Screenshot 2019-07-29 at 21.49.02.png

  • Note, shuffling does not change the client seed, refreshing the game does! Wheres my bounty @kryptogames

Server Seed

Screenshot_20190729_220840.jpg
This is fairly confusing and took a while to understand. But their server seed is chosen in advanced of a bet according to a randomization code that is open-sourced and available to audit in the library here, then the server seed hash is published to the blockchain before you make your bet.
Screenshot 2019-07-29 at 22.33.59.png
You can see that they publish a new random server seed every minute to the blockchain in the above screenshot. You can go to https://steemworld.org/@kryptogames and look at the account operations to verify that this seed does indeed change every minute. Thanks, @steemchiller for your amazing site!

Steem Transaction ID

There is no way your Steem Transaction ID can be manipulated by Kryptogames if you think this is possible, I suggest you exit Steem right now. Your transaction ID is generated by the blockchain. You can find it on www.steemd.com/@username or www.steemworld.org/@username here is my Transaction ID from the 1 Steem blackjack hand above. Note, I lost! 114491b277a15118e8a30a8c2ae1f9bf0d5d4499

The Magic of The Cards


The three seeds or strings of characters are fed into an algorithm:

crypto.createHmac('SHA512',client_seed + trx_id.substring(0,10)).update(server_seed).digest('hex');

This means they take those random numbers and letters from the 3 seeds above, mash them up and get a 128 string of hexadecimal characters. The SHA 512 Algorithm is not something Kryptogames made up nor are they lying about this process read all about it here. https://en.bitcoinwiki.org/wiki/SHA-512

  • This output is what determines the cards, obviously, you cannot see for a minute or two after your hand is played or you would probably not hit if you knew you were going to bust!

How to Convert this Hexidecimal String into Cards


It's a base 16 number, most of us only understand base 10 numbers, base 16 includes 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, and f each card is represented by 2 characters in the string. Luckily you can convert Hexidecimals to decimals with this calculator
https://www.rapidtables.com/convert/number/hex-to-decimal.html
*The 128 string is divided into 2 characters each which can be 0-255
*They throw out integers above 208, there are only 4 decks of cards 4x52 = 208! They divide the integers by 52 and add the remainder. So the numbers will always be 0-51

Take a transaction ID, plug it into the Verify Transaction ID found under Provably Fair on https://kryptogamers.com/blackjack, click verify! You get the following if you put in my transaction ID 114491b277a15118e8a30a8c2ae1f9bf0d5d4499

Screenshot 2019-07-29 at 23.04.32.png

-Note the Server seed, Client seed and Steem ID are all verifiable and happened. You can use a blockchain explorer to verify this such as Steemworld or Steemd. None of this is made up.

Pay Attention to the Final Sequence and Use this Chart!

Output: final_sequence = 3,1,22,39,23,4,9,38,27,34,19,19,7,14,45,29,30,42,30,31,43,17,10,41,35,0,4,30,42,45,49,35,48,11,16,34,20,11,45,32,32,36,25,0,2,5,49,33,18
Add one (+1) to each number and you can see your cards.

number to card (1).png Excuse the 13

I got 3 + 1 = 4s , the dealer got a 1 +1 = 2s, my second card was 22+ 1= 10h, shoot, I got 14, dealer is showing 2. I assume the dealer is gonna win, so I hit (dealer has a 39 + 1=40 or an Ace of diamonds), I hit a 23 +1 = Jack...%$@#$@# bust! , even if I stayed dealer would have got that jack, for 13 and then got a 4+1 = 5s 13 +5 = 18 for a win = my loss.

Note: Once the Steem transaction is posted (every 3 seconds) they cannot hack it! We've checked hundreds of transactions, you can too, no evidence that the output doesn't match the cards.

So How Can They Possibly Affect the Outcome?


I am not a programmer but @klye of https://www.steem-roller.com/# is, he says the only way to impact the results is by skipping nonces. Essentially if they don't like the outcome of a bet that happens at the start of a new server ID, they could quickly change the server seed before publishing it, skipping the Steem transaction ID. This would not impact whether you hit or stay, and you could avoid this issue by changing your client seed before every bet. They would only be able to do this once every minute, it would only affect bets place immediately after a new seed is going to be published and it would have to be very fast. I am not accusing them of doing this and there is zero evidence to suggest it, it is theoretically possible.

This does not mean they could manipulate the cards, they could simply just throw away a certain server seed if they don't like how it interacts with the first 3-second Steem transaction ID, before the next 3-second Steemit transaction ID is created and impact the results of a large full tilt gambler who they happen to be watching. This is the only plausible scenario for manipulating the cards and it is highly debatable. I would like to hear what all parties think about this below.

@a0i, @abrockman, @access, @adzrobinson, @aellly, @aferrell, @alexworld, @allcapsonezero, @ano123, @awesomegames007, @backdm, @bafi, @balte, @beesteem, @bengdui, @bluesniper, @brasan, @broncnutz, @brumest, @centering, @cgbartow, @champjus, @chetanpadliya, @chriz85, @clayford08, @coinchaos, @coolguy123, @cryptictruth, @cryptobro1991, @cryptoeera, @cryptoknight12, @cryptopassion, @dalz, @deadspace, @deanliu, @dera123, @dexter-st-jock, @dicetime, @diehard2k9, @donald.porter, @drfk, @duane.dos, @ekushya, @elementm, @emrebeyler, @equinor, @ervin-lemark, @etcmike, @felander, @flutterby29, @for91days, @gabbynhice, @gabrielvlad, @gduran, @georgeknowsall, @glastar, @hitmeasap, @holoz0r, @hotasian, @ilcreativo, @infidel1258, @jason7282, @jassenessaj, @jinuking, @jiujitsu, @johhnnyturbo20,@kim0412, @kaniz, @khaledmreizeeq, @kimxinfo, @kingofgamer, @leoumesh, @lordgod, @lovemetouchme2, @lucasmj, @manusamlive, @mcenoramle, @mcoinz79, @meanbees, @mfblack, @mister-meeseeks, @nanadar, @nathen007, @navorn, @nee-k, @netaterra, @okean123, @oldtimer, @olegpussyking, @parceval, @pasie15, @pepperfoo, @piaristmonk, @primersion, @privatebank, @qam2112, @rawn, @rb17btc, @rb3coins, @rhanna10km, @rosatravels, @satoshibit, @sindong, @sourcemechanic, @ssm1810 @stabrowski, @starfighter, @steemitcuration, @steemit-legacies, @steemshiro, @stimp1024, @stokjockey, @sunit, @sunray, @superlotto, @supermeatboy, @taurusheat, @theb0red1, @thedarkhorse, @thegoliath, @themarkymark, @thomasgutierrez, @tombstone, @transcript-junky, @triplej, @tsnaks, @tunnaingwin, @ugos, @ultima-alianza, @vikisecrets, @walterjay, @wrecktangle27, @wylsacom, @xyzashu, @yangpankil27, @zocken, @cupz, @epicdice, @steem-bet, @steemslotgames

  • I am not suggesting that any of the above names have any association with gambling

TLDR: The only way a hand can be manipulated is by hitting the reset button once every minute very close to on or at the minute to screw with a full-tilt player (aka skipping nonces)

  • @fairbet, @crypticat, @klye are in no way accusing that Kryptogamers is skipping nonces
  • No evidence suggests that the bets are being rigged
  • I do not recommend you gamble, you will lose money in the long run
  • Gambling on the blockchain is just as safe or safer than gambling anywhere else
  • The author holds GAMER tokens but is not being paid by or is associated with Kryptogamers.com

@kryptogames are you able to prove you aren't skipping nonces (not that I am accusing you of it, I just think it could be possible)

Players please provide solid evidence if you have any accusations to avoid looking foolish.

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center