Provably Fair
The winning seed is committed (its hash published) when the round is created, before any tickets are on sale, and revealed once the draw settles. The operator cannot pick a seed after seeing who entered.
How it works
- While entries are open, tickets are sold sequentially and each wallet is capped: max 100 tickets per round.
- Before entries open the server generates a secret
serverSeedand immediately publisheskeccak256(serverSeed)as its commitment, alongside the publicclientSeed. The seed is fixed before anyone buys, so the operator cannot grind it against the final entry set. - When the round closes, one winning ticket number is derived by this formula, and the wallet holding that ticket takes the entire pot:
target(tier, attempt) = uint256(keccak256(serverSeed || clientSeed || drawId || tier || attempt)) mod totalTickets; winner(tier) = first entrant whose cumulative ticket count exceeds target; the single tier-1 winner takes the whole pot (legacy rounds paid up to 4 tiers; collisions with an earlier tier re-derive with attempt+1)
- At settlement the
serverSeed, its hash and the winning ticket are revealed. Anyone can re-run the math in the verifier below and confirm the same winner. Legacy rounds paid up to 4 tiers, so verify those with winners=4.
Seed commitments
serverSeedHash (commitment): 0x2f2e6162b74615692b5170ba4adf22886a6302027800c2b360a9f9ef69d1b893
clientSeed: 0x6553935504259e90f5da2c3ef563a76972f8433a2be640f00c4a960f9258c0d2
serverSeedHash (commitment): 0x47a820f7a1ca6094899d559b462b5bc4a0879d1d4f572682825cb032e9c9b7fc
clientSeed: 0x9d763dcd5dfb1ecbfb4f2ecee385d818b32ed1c59a63dd77419b19cc92bfc13e
serverSeedHash (commitment): n/a
clientSeed: 0xf6639e86e3b7bf2e69797934932f9b7e265236ed3b02af07d8c2ebeab2de4269
serverSeedHash (commitment): n/a
clientSeed: 0xc7232ae2d71047eab03ff5d11ac53807851945f1f3754091bbb5f13cee458411
serverSeedHash: 0x7c4c2727352e750d141d0b55199c07c9d38aafa9774becea2fbddcb0c96bc241
clientSeed: 0xc8ab5eda6c920eb5b75dbb6ba68b654e764c7489a6f11b647d2d077ba2caf56d
serverSeed (revealed): 0x2167cad1720cfc81a556bff8de2a6dcae971c7e6552d739a96bc23fe82b7eb53
serverSeedHash: 0x9efafd0e4cd974a5f5d435c45e113bd0c75ace0c0e51b16f0bb80076db78727d
clientSeed: 0x5eeded14e7ae4bc2171c511d9de743a80155a5a1e20307ff33b569261c8dda73
serverSeed (revealed): 0xe20fefab9a8ea57f5e376b62cea11c3d6768f1a1d1bfc521139e65a3f192ca92
serverSeedHash: 0xbc09f288459e07d0536ec84c41e5d9f7d6b748daeac1c82922af0dd3aafb5a8e
clientSeed: 0x0b2fc9a3867dab66d2fe84fe075f7b5b7850d3404b56225eb34708b304ae4b28
serverSeed (revealed): 0x5a94ec116bb379a38be6ec036b51d15e940f2a5e57b43e3b5462689272a1f00b
serverSeedHash: 0x76fb70656e18608c497e4b75395d1220142eeac2ad0fddc47dbb0c97d6112743
clientSeed: 0x49bc197aaad6fb3788aa711afa3a7f41dd4917d13c4a3f32a4967e6ff03ce219
serverSeed (revealed): 0x10b8517f5718fa155b3c6d95ce669eaef93ea17e902500621cf7c47696f06834
serverSeedHash: 0xe597b6da5e162cdd49725ccdcb27e5ef68a126dc5565292ea6dfa69ae95ccccc
clientSeed: 0x65062cf26e6a99c6c8c237904c60fa96f49a89756cc8ef4eb529ea8fc8db1bad
serverSeed (revealed): 0xe894aa1fe6779c00fe3e319e9d37e9c3ddabbba951c1d0cd48f13cb087f2b44b
serverSeedHash: 0xa0a07606aa378c722688b663807a4c28ab2c6b88391f0afc96b02f9d71afa096
clientSeed: 0x4d0b73e20207fc4511549e822a210b4751df4f25ea542807ff31a9b088ca3eb6
serverSeed (revealed): 0x5bc4a84acaf6a9bc7e48aa94bc7820ad125deb56e94fb92265be1024f7dcf179
serverSeedHash: 0xb55960562d1109213deeccb2ac146556304b61dd45288c3d69a2b64f7ba6c293
clientSeed: 0x71186d7abb1338b7249e6c856fb757432768ee0d1a4a832295d19bfd36c4b2c9
serverSeed (revealed): 0x486ec24636f9dec506e8a947cc03764c8d019ff1550b53e12baf9a08458db215
serverSeedHash: 0xfc39fe619843dce94d2b2ddcfaa4c99c2277a5b723b5dc6d2dedbacbcf0f424e
clientSeed: 0xeb9350f1f689ca324d3866a8aeb7490389f82dc6cc5a81eeb392a141954bcc11
serverSeed (revealed): 0xfe218c36c8c3fc832caa2c1fb4371dd0d77f14245ba06d73e1b2c4e9e90067cc
serverSeedHash: 0x80861d979384d28871cdd368c3ae3544b5fc544c60aca93b28cf1d32aff2370f
clientSeed: 0x4298cd75fde3c0e9a3daf3413234bdc4562746c952653cde121651a8df101125
serverSeed (revealed): 0xa6d9780f47cffab257e5cb035a2e9d28c5e2ab5f12c2bd0caef8c063d4f5c626
serverSeedHash: 0x90c6ace06936ba7f9afc45e3b7f8202693b9cb1ad376c65f4b60170018caaf5e
clientSeed: 0x313b4a9dd920684d134ad29239b5d9e6b12de68548e10a9886fd2edbbcce9e7f
serverSeed (revealed): 0x1842ece4293e112ef9ba275d2d25f8ee216acc092dc563936f9d74917e4d9f52
serverSeedHash: 0xe5cbef68835dcda78a37a87d41c4ba9e4031e2e77cc049081e81efbd9e05c181
clientSeed: 0xf5db29194fd7968053a48ba9aa3ae15e6343c93b384d479d3f3cd9671617c6bb
serverSeed (revealed): 0x2f7e607086e2a9a9390015de4bb7bfe9f0140ca21254ada7e04463928d7b6906
serverSeedHash: 0x6272a16f8ca8159ea6013ae2fd509d6404b7bda3e57e383b7731c56f2a8bb132
clientSeed: 0x8b7c0ae48b29ec2d7da8e9709a64b231823f67ffb54c6317ccc6ea2cbbf96889
serverSeed (revealed): 0xb76737247e3b126064ba4a4ae3a3706858323da58e4ef453e5f089b5118776a8