Provably Fair

SatoshiWon.com is a provably-fair lottery. Understand here why.




Encrypted Server Hash of the current round:
d812903958b67ae633ffb4a00beacc2531d3c94b4e92d8513db4fdf3bac55242


Explaination


During each round, there is an encrypted server hash in SHA-256. An example of a such server hash is given above.
The Server Hash consists decrypted of two parts:
[Bitcoin Block Hash of the latest round]:[Random Number between 1 and 65536]



Example:
000000000000000000230900feb15901ec2c7e008133ceb9f47af2b45ca5bd89:39865

The encrypted hash in SHA-256 is accordingly:
4c7839f4b8a97752d0ed20ee1ba2f048a7a83cccfe675f96c10df3a7bca80796

At the end of the round, when a winner is being selected, the decrypted Server Hash will be used along with the latest Bitcoin Block Hash to generate a new String which is being encrypted in MD5.

Example:
000000000000000000230900feb15901ec2c7e008133ceb9f47af2b45ca5bd89:39865:0000000000000000000737df08342907e0833011bd0bbbee7d2aae522754c6fd

The encrypted MD5-Hash is accordingly:
46cf94033f9c7666c638a9eca7337da2

From that hash, all non-numeric will be removed. The result is: 469403397666638973372
We are using Modulo to calculate the position of the Winner. The calculation for that is:
469403397666638973372 mod (number of tickets)

Note: If this calculation results zero, then the winner number is one, since there is no ticket at number zero.

Let's say, we have 1291 tickets, the ticket no. 1099 wins the whole jackpot using the calculation above.
After that, a new server hash will be generated which consists the recent Bitcoin Block Hash and a random number.




How can I verify whether a lottery round is provably fair?


On the page "Round History" you can see a Winner Hash and the Verify Hash.
The Winner Hash basically consists the Server Hash and the recent Bitcoin Block Hash captured on choosing a winner:
[Bitcoin Block Hash of the previous Round]:[Random Number between 1 and 65536]:[Recent Bitcoin Block Hash]

The Verify Hash is nothing else than the encrypted server hash, so the first two parts of the above string. This looks decrypted accordingly:
[Bitcoin Block Hash of the previous Round]:[Random Number between 1 and 65536]

The Verify Hash can be used to verify the authenticity of the winner hash. What is essential is the Winner Hash.
The winning ticket number is derived from the winner hash by encrypting the winner hash in MD5 and removing all non-numeric characters.
The resulting numbers will be calculated with modulo using the number of tickets. The result of that is the position of the winner.

To find out which numbers your tickets have, please go to the "Dashboard" and click on "Show Tickets". You'll find a list of your purchased tickets within the current round.