Part of fixing the issue is forcing all accounts to set a new seed pair, in an hour expect to be prompted to set a new pair.
We (bikinidice) change server seed every rool. That's isn't very pretty for player (need to check every time his pair to make sure of our fair system) but we need to protect our investors coin.
Sites like bikinidice which pick a new server seed for every roll are a real pain to play on for the paranoid gambler. In order to be sure that the rolls are fair, you have to make a note of each new server seed hash, and then pick a new random client seed as well - for every roll - and then verify the rolls afterwards, too.
If any player force the sha256 server seed is a BIG problem. Yes it's difficult but not impossible.
Lol?
I think if you had some coin of other player you need to take more care than a "lol"
Yeh, definitely. But just the fact that he, as a dice site operator, thinks brute-forcing is a problem with a long enough seed is pretty funny. Let's do some maths.
PD uses 26 lowercase letters and 10 numbers in their seed, so 36 different characters with a length of 64 characters. So 36^64 =
4011991914547630480065053387702443812690402487741812225955731622655455723258857
248542161222254985216 different seeds.
The bitcoin network calculates double SHA256 hashes with a speed of 297,275,048.09 GH/s. So 297275048.09*1000000000 = 297275048090000000 double SHA256 hashes per second (pretty impressive right?), and single SHA256 would therefor be 297275048090000000*2= 594550096180000000 hashes per second. This is 594550096180000000*60 (seconds) *60 (minutes) *24 (hours) *365 (days) = 18749731833132480000000000 hashes a year. However, it would take:
4011991914547630480065053387702443812690402487741812225955731622655455723258857
248542161222254985216 / 18749731833132480000000000
=
213975962443264184927319954831658656345664031820000000000000000000000000000 yearsto calculate all the original seed-hash calculations of PD with the power of the entire bitcoin network.
So yes. I do think it's funny that he thinks this is a serious threat or that he thinks he is "protecting his players/investors" by having a "seed per roll" system. He is actually quoting a message of October of dooglus just to say "
see dooglus, this PD hack is exactly the reason why we have hashes per roll, so we cannot have teh damn brute-forcers". I kinda assumed or hoped that was a joke or something, hence the "
lol?".
Don't get me wrong. A dice site can have many problems / server-seed leaks, to name a few:
- Any SQL injection or code execution or things like that to get to the database with the seeds.
- Any other way of "leaking" the un-hashed server-seed (probably what happened here - personally I am curious for the later update with hopefully some technical details)
- Running in a shared hosting or VPS environment with a bad hosting employee.
- Not separating nonces / client seeds, like BikiniDice was planning to do (
like I pointed out here)
- Having a predictable random generator so the server seeds could be predicted (BikiniDice seems to use the PHP rand() function, so I hope the server seed is generated more randomly than that)
- Any other algorithm flaws, like PRC had many months ago with getting the "next character" instead of "next set of 5" thing.
- If your "server seed" is actually not that long, brute-forcing is a problem.
- And obviously any other normal security issues like XSS, CSRF, etc.
Nothing bad towards BikiniDice though, I really like the trollish-internet-concept. Just thought it was a silly statement to make.
Ps, I am not that good in math, if there is a problem please correct me, but the idea is clear I think.