SafeDice
-
https://safedice.com/
Owned by: Sam
www.Bitcointalk.org Thread
Feel
Safedices green and blue look provides for a nice and calming feeling. The main pages simplistic design prevents too much confusion or frustration. The BIG roll button makes it pretty obvious what to do.
Usability
Safedice is pretty well laid out and easy to use.The navigation bar at the top of the site makes it easy to access a few important pages from anywhere in the site, which is very useful. These pages are the provably fair help page, an explanation on how the variable edge works, the site faq and your account. Other things accessed by the nav bar is the currency currently betting in, the site language and the leaderboards.The play tab emphasizes your balance and the roll button quite effectively. It feels almost as if the most important things are the biggest and the size of the item decreases as they become less important, if such a thing is possible. The bet amount box is also nice and big, with the win chance and payout slightly smaller. Finally, the lo/hi switch and stats like profit on win and house edge are rather small. I think the low/high switch could be a bit bigger though, and also be placed closer to the roll button.The stats tab (the one with the little bar graph icon) shows pretty much the user stats anyone would want. Only thing this tab is lacking, is site stats. I like to see stats about the site, how many bets have been made and won, site profit, wagered etc. Especially in a site where user investments are enabled.The invest tab, when enabled, is easy to use and very simply laid out. While not crucial to usability, I'm slightly annoyed by the invest all and divest all buttons not being aligned with the invest and divest buttons.Overall, everything is logically laid out and easy to find. MY only real problem with the usability is the chat. It can be hard to find for new users, especially with a small screen, as the chat button in the bottom right sometimes gets hidden when a small screen is used. Also, the chat window closes when anything outside ofthe chat windows is clicked on, and this has led to some frustration for me personally.
Fair
Safedice uses a nonce and hash based provably fair system, very like the one PRC uses.The full details of the provably fair method can be found on the site with a verifier found at dicesites.com. The basics of the provably fair method is as follows:The site chooses a server seed and provides you with the hash, proving that the server seed isn't changed after the fact. You choose your own account seed, or client seed, and a nonce is used that is basically the number of rolls you've made with the server-client seed pair.a sha512 hash is computed of nonce+":"+client_seed+serverseed+":"+nonce, twice. The hash is split into groups of 5 characters. If the first group is less than 1 000 000, it is divided by 10 000 and the result is your roll. If the group is more than 1 000 000, the next group is used. If no group is found with a value of less than 1 000 000, the last three characters remaining is converted to a decimal and used as your roll.Below is a c# implementation of a roll verifier for SafeDice:Code:
public override double GetLucky(string server, string client, int nonce) { string comb = nonce + ":" + client + server + ":" + nonce; SHA512 betgenerator = SHA512.Create(); int charstouse = 5; List&st;byte> buffer = new List&st;byte>(); foreach (char c in comb) { buffer.Add(Convert.ToByte(c)); } //compute first hash byte[] hash = betgenerator.ComputeHash(buffer.ToArray()); StringBuilder hex = new StringBuilder(hash.Length * 2); foreach (byte b in hash) hex.AppendFormat("{0:x2}", b); comb = hex.ToString(); buffer = new List&st;byte&st;(); //convert hash to new byte array foreach (char c in comb) { buffer.Add(Convert.ToByte(c)); } hash = betgenerator.ComputeHash(buffer.ToArray()); hex = new StringBuilder(hash.Length * 2); foreach (byte b in hash) hex.AppendFormat("{0:x2}", b); for (int i = 0; i &st; hex.Length; i += charstouse) { string s = hex.ToString().Substring(i, charstouse); double lucky = long.Parse(s, System.Globalization.NumberStyles.HexNumber); if (lucky &st; 1000000) return lucky / 10000; } return 0; }
Speed
The betting speed at safedice is average at best. Small bets are throttled quite heavily by the system and only larger bets are fastish. Even then, it struggles to compare against larger sites like prc and just-dices betting speeds. The site does seem to handle betting volume and traffic rather well though, ie the betting speeds don't drop much when there is large amounts of people betting.The site speeds are good. The page is usually responsive, although loading times are sometimes a bit of a problem (but this might just be my internet being slow).
API
SafeDice has a public api, but no documentation is available on it. Sam would likely help anyone wishing to implement the api into a bot without hesitation.The api is a simple rest api and works really well, with only one small kink. THe api requires BOTH an authorization header and a token cookie for authorization to work correctly.Further the api is, as mentioned above, a http rest api, using json objects as body instead of normal post paramaters.
Community
Owners
The owner of SafeDice, sam, is known as "admin" in chat. He's very friendly and has been helpful in all of my dealings with him. I've never noticed any real agitation towards annoying players or "trolls", as some other site owners display.Sam was very helpful while I was trying to get DiceBot and SeuntjieBot up and running for SafeDice and quickly responded to any questions I had about the api or the site. If I recall correctly, he even made some changes to certain api functions and added some extra ones to accommodate my needs for the bot. He will most likely help someone to get a bot up and running without hesitation if asked.Sam has been exemplary as a dice site owner, without a single tick against his name that I know of. Any issues with his site has been resolved quickly and usually with some small compensation as apology for the inconvenience to the player.
Features
Normal Dice in Bitcoind and Monero (xmr)Provably fair bettingInvesting in bot btc and xmr, on requestinstant withdrawals. Community chatAffiliate programvariable edge read more hereCommunity chatuser tippingLeaderboards
My Comments
This Review was done on Thursday, September 10, 2015