The following happens when I pick a new client seed:
1) The client seed is sent to the server
2) The server sends back a different server hash and seed.
Why does the server hash/seed immediately change after the client seed is sent to the server? This can allow
the server to manipulate results in its favor, since it generated its seed while knowing what the next client seed will be.
Also, why are the "random" client seeds sent by the server, and not generated client side?
Hi, I'm one of the Magicaldice developers.
When you randomize your client/server seed pair any subsequent bets will be made using the client seed you provided and your "next" server seed. You can always check the SHA256 hash of the next server seed in the provably fair window (accessed thought the toolbar in the top left of the site). You should note this SHA256 hash before hitting the randomize button, that way once the server seed is revealed (after randomizing once more) you can check to see that the hash corresponds to the actual server seed that was used for your bets. If the hash matches up you can be certain that the server seed was generated before you sent your client seed. You can read more about the process of verifying the bet process here:
http://dicesites.com/provably-fair.
As for the client seeds being generated server side, that is a limitation of the current codebase which will be remedied soon. If you are worried about this you can change your client seed before randomizing. In the end it's just a random number generator and you choose which numbers result in a win when you set the odds.