Skins: 0
Coins: 0.00
Provably Fair
Select a game from the list below to learn about how we ensure that the results are always random and never tampered with.
CSGO gambling & Open the best CS2 cases uses provably fair method, that doesn't allow us to manipulate the outcome once the game is started, below you can see how the outputs are caluclated.
You can execute the code straight from your browser with tools such as this NodeJS tester. Simply replace all parameters with the ones in the round you want to check.
Info
This is a passphrase or a randomly generated string that is determined by the player or their browser. This can be edited and changed regularly by yourself.
Client Seed
This field is required
To reveal the hashed server seed, the seed must be rotated by the player, which triggers the replacement with a newly generated seed. From this point you are able to verify any bets made with the previous server seed to verify both the legitimacy of the server seed with the encrypted hash that was provided.
You can validate hashed server seed using this script. The hashed server seed is a SHA-256 hash of the seed so after you unhash it, you can check that it matches with the hashed version.
Server Seed Hashed
This field is required
You can validate hashed server seed using this script. The hashed server seed is a SHA-256 hash of the seed so after you unhash it, you can check that it matches with the hashed version.
var sha256 = require('sha256');
var seed = 'f0c82c85ba6ef5cbba7406db81ee5451a1a795120e335116dc637d34a105e6e6';
function fair_getHash256(seed){
return sha256(seed);
}
console.log('Hashed: ' + fair_getHash256(seed));
Id
Server Seed
Useds
Created At
No data found
Roulette Game
Each section of the roll is assigned a number - and there are 15 potential numbers to land on. The resulting number from each spin is determined by a combination of three individual elements, which are fed into an algorithm:
Client seed is SHA-256 hash generated daily from random 32 bytes. We show it to you the moment it's generated.
Server seed is SHA-256 hash generated daily from random 32 bytes. We show you the encrypted version while it's in use.
The nonce is based on numbers that is the round id. The first round ever played would have an nonce of 1. This number increases by 1 for each new round. The nonce's job in generating outcomes is to ensure that, even when the same public seed and server seed combination are used, the outcome generated in the next game would still be different, since the seed combination is paired with a unique nonce, the nonce for each game is always different, since the round id would have increased by one for every new game played.
Since each roll, or outcome, is generated using cryptographically-secure randomness, the probability of a particular outcome will never change - even if you play 100,000,000 times. There’s no pattern or method used to determine which number will hit next - it’s sheer randomness.
Today's server seed is currently in-use, therefore it is a secret and only the encrypted seed (hash) is visible to you. You can not verify today's results until the day is over and the (unhashed) server seed has been revealed.
var crypto = require('crypto');
var roll_server_seed = 'aed859a82f458f3111fb8dd813001a65a9d88fce5004a37a3648a4f3c745e9df';
var roll_public_seed = '3e2a4be2d0eb744ea4b07b2773f881f035f84f5fcb1880ceb25929ad7563df34';
var roll_nonce = 0;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_public_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = fair_getRoll(generated_salt, 15);
console.log('Roll: ' + generated_roll);
Date
Server Seed
Public Seed
Games
09 May 2024, 09:36 AM
(hashed) fb8e531c6a01f583c83c3b8642892773e7054fec5fd26816755d0d35932535be
b582a91098748a6e5458289a1e91c54dadc28ef052248b2f16fc89f2d1455781
533443 - 534214
08 May 2024, 09:35 AM
643fb806f6966edb4db9f67b349eed4204b02ed2b8667a83abbccd491907dfc2
8232efc77c7c1b76fbcbb6c38c2b3b59a3dc39523ccfcf9888710daf99d2411c
530666 - 533442
07 May 2024, 09:35 AM
a6f3c1f2c2daca4cf66ce9a505ecf345de2d679ed0b6cf2f32ffd826371071a5
a7dd8e3f3b8d5a7ca46377f0287d6e534589f78e86eff8e2eb79f7790d8d8d95
527888 - 530665
06 May 2024, 09:35 AM
22e9b2f71aa2e242a2011645a8292b8d9239cb0c633bed4788636a34d65834ad
3a4c8f30991e97e9221a8354d4da2edb507158ccbeb8432748a98cf7aa0fb563
525111 - 527887
05 May 2024, 09:35 AM
db59d1c915597017d046120d8380839d3afa138625b401b39a653a00a56d7fee
579e7c06448f7bb99341f2390c48f49fb46b75baedadf57ae423f7d39b4c3919
522334 - 525110
04 May 2024, 09:35 AM
259f57a5191c7c1c76e87aa0ce24809853c406efd4aad3fa920e01f189e34b93
ecd7a97c02690eac9917bb3e96790bc86ce07618ca2d7d6280d5555be87c0b70
519557 - 522333
03 May 2024, 09:34 AM
a9163f660f6069af014dd8bc366e1646967e335f3d05b80572f26ea120aa8366
7358cb4c3575ed1fe91d3db19ac1a20a7a78817bc1bba927cd11c93f69ad7f11
516781 - 519556
Crash Game
Each section of the roll is assigned a number - greater than or equal to 1.00 to land on. The resulting number from each crash is determined by a combination of three individual elements, which are fed into an algorithm:
Client seed is SHA-256 hash generated daily from random 32 bytes. We show it to you the moment it's generated.
Server seed is SHA-256 hash generated daily from random 32 bytes. We show you the encrypted version while it's in use.
The nonce is based on numbers that is the round id. The first round ever played would have an nonce of 1. This number increases by 1 for each new round. The nonce's job in generating outcomes is to ensure that, even when the same public seed and server seed combination are used, the outcome generated in the next game would still be different, since the seed combination is paired with a unique nonce, the nonce for each game is always different, since the round id would have increased by one for every new game played.
Since each roll, or outcome, is generated using cryptographically-secure randomness, the probability of a particular outcome will never change - even if you play 100,000,000 times. There’s no pattern or method used to determine which number will hit next - it’s sheer randomness.
Today's server seed is currently in-use, therefore it is a secret and only the encrypted seed (hash) is visible to you. You can not verify today's results until the day is over and the (unhashed) server seed has been revealed.
var crypto = require('crypto');
var roll_server_seed = 'e581f85cab4f8f4ee22afc82b8299c4bd7f132049c9212b32e989b798246ac31';
var roll_public_seed = '1b233defb3b6acc3ead30a62ded768e8db9950bb922db728f44dcf9fb464d21e';
var roll_nonce = 0;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRollCrash(salt){
var INSTANT_CRASH_PERCENTAGE = 5.00;
// Use the most significant 52-bit from the salt to calculate the crash point
var h = parseInt(salt.slice(0, 52 / 4), 16);
var e = Math.pow(2, 52);
var result = (100 * e - h) / (e - h);
// INSTANT_CRASH_PERCENTAGE of 5.00 will result in modifier of 0.95 = 5.00% house edge with a lowest crashpoint of 1.00x
var houseEdgeModifier = 1 - INSTANT_CRASH_PERCENTAGE / 100;
var endResult = Math.max(100, result * houseEdgeModifier);
return Math.floor(endResult);
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_public_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = (fair_getRollCrash(generated_salt) / 100).toFixed(2);
console.log('Roll: ' + generated_roll);
Date
Server Seed
Public Seed
Games
09 May 2024, 09:37 AM
(hashed) a6bdd9ea3efa6b5e5611b1fc04b40b56838ecb21fe0fbdce20d681a768ea7d04
926e832c1ea6e6952e152478e7ebc995b2a480c24b5e056e7a90eb8d64fdb47c
427814 - 428587
08 May 2024, 09:37 AM
c973f3e4a6d22fc031c19d0381a28f21b7966a205ca31597e74e98771885a2f9
9b76b8faf6ad070aca49e0d27d98e4d0ab6fa557e259bc1890fc425605164de8
425059 - 427813
07 May 2024, 09:37 AM
ee3cf413fb51e6001419460f1227b0c10d7db67721b4f6b7d047239273202636
7910c8af7d2ce6da2bc3a9e4e726d465607ebbcdf4e22b58160f3eb04ff126c2
422338 - 425058
06 May 2024, 09:37 AM
0cd3b065b7482dbd4b796f0cff7d321bb506451e0d65d8aec46d91df161767cc
2af828138d9e38974f04b01ed937c4e383a481aebca4c28bd4fe9ce2631ec64a
419615 - 422337
05 May 2024, 09:36 AM
017da1cb54ab6c83c4020d28d0076fca600234eb7791bc7fcdff7c3093c4b6d9
485edfe6ce1d77f88fc232d2a895164e043bef987738173e4d6131bf04b0f278
416892 - 419614
04 May 2024, 09:36 AM
8322175247d17c13c47fbb8f8cca3c59bed4e3a8a9972b3b705a10c3cefc5d4a
843095dab8e298e5a96aa4b176f2ac32a732403add8f591c386215704bae2965
414138 - 416891
03 May 2024, 09:36 AM
f28945ce3889d40b12bd7b3bd36218656f330a4cd3f039fc59714dc950e860e8
f392b90d6ad694b5ae7f8bb4427e125f82e6b244f6735c5953f9804cc404a7bd
411455 - 414137
Jackpot Game
Jackpot uses a provably fair system in which the public seed is not known until after a jackpot game has started. The result for each round is generated using the SHA-256 hash of 3 separate inputs:
The server seed is a securely random value, generated when a round is created. The SHA-256 hash of the server seed is displayed to all players immediately after a round is created. Players can check that the private seed revealed after the jackpot result is made known matches this SHA-256 hash.
The public seed is the ID of an EOS block, which is to be generated after the countdown is finished. When the countdown is finished, our system chooses a block number on the EOS blockchain that will be generated in the near future. The ID of this block is what will be used as the public seed. This way, neither the players nor our system know what data will be used to generate the jackpot result until after both players have committed their bets.
The nonce is based on numbers that is the round id.
var crypto = require('crypto');
var roll_server_seed = 'cc0fa67554c2e9fc0f6a4a833353080a6f0e7dd2e8a911efb8f6f05c75a93063';
var roll_client_seed = '0d3ec17f8e156a06656107778fbb83211d96c8686bcaa6f0a957baf18ca21b5f';
var roll_nonce = 5;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_client_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = fair_getRoll(generated_salt, Math.pow(10, 8)) / Math.pow(10, 8);
console.log('Roll: ' + generated_roll);
Id
Server Seed
Public Seed
Block id
Roll
Created At
18
0d15b2e680a06ac4c30b3d8aef35be4745f42f1994fad942f351a178a8b94ffd
16241d60e52983339f6a42b05942e8a63aa358e91d8279d2e58c8f390988f8cd
371465568
0.79066837
02 March 2024, 03:02 AM
17
89dea8ab303101fa829c53d13d4845b0b25cd238f04bed1a8813a4818bb6d6b3
1579cd4c250b1662f031456ad3cc460a548f7c32e57bdc6c831921e47c46392b
360303948
0.54532538
28 February 2024, 06:44 AM
16
b7657488fd8c37a81ae8eab6897f8fcb2b8ffc54d134718e12e2a422f6d42436
15724f72a0e2e3a7301e4a18abad9c3a90721b13ddfeddf80f21295ce0af729d
359812978
0.54943365
17 February 2024, 10:05 PM
15
8a7d60bac8c9a583f8ef4caa9c3f2825a0c3bdf84351097e87af00780a9f03fa
1557048ecf1671b996d814f7ec9ae26a0ab15990d10f7e0e5edbff7463009545
358024334
0.07544861
31 January 2024, 10:09 PM
14
23de9f32c857946548c86f1d24847d1657c8a980796b3a33e5bde7d58d991cac
152a39ec588bff108a08534d73d0674cd114a56f46049471ddb0d4117e1d8d77
355088876
0.4686799
05 November 2023, 09:09 AM
13
511b8bb1fbf71062f6f89fe7667c7044eb04f20b8aeca124a87f74ea2be87fb6
14438a832d68c44d7016b65be96b2606bce7b00e46a69fac601bd85292a65c21
339970691
0.76618311
04 November 2023, 08:40 PM
12
b2add720d5dc1ea02b0663171cef9d174e450072a60d3c9069f79f0e703107ee
14422b664ca894502a508069381927110e7658f67652801dcfd650557f9149e3
339880806
0.98402209
04 November 2023, 08:39 PM
11
c2789817be8286672f36e350593386d08c06c4eae4599b3f42e51fb07dd209a7
14422af103ce32910eaa60f3c98b6fcd0401e87898aeb697fe3a4f16d8bd680e
339880689
0.93243309
04 November 2023, 08:33 PM
10
844b26ce1cfcf00f1ce7a8ad0caa981da785633038875bd4e4b68a656c245ba5
144228760018d608c2b68362310c786126dd07c57a72ffb2d9e874ebb84be0b2
339880054
0.92085135
04 November 2023, 08:32 PM
9
4ca47fff9f004f42d534f746f769a5a109e69031ffa6d3f3038d256bfec4f3cc
144228016bd9fabd992413d4bc78650029daf8293aae63391e7887b8aeb76fca
339879937
0.1943187
04 November 2023, 02:24 PM
8
b0bd81913343279f47d4b76330c9523ef5566735367e41a376ba4449628d9f4e
14417b6da37c4faeba5723b9e81dd2ed22924f1d966a94f9f256e900bc0b1f1f
339835757
0.0716068
04 November 2023, 10:32 AM
7
c0dd0e7b9abfb40ef5c0374009fdfc0dce5418b2ec1ac5694d5b1314a5cde447
14410e913e1c3da31fc6f481afec2cb27bd654fc27bb3d026a58a250ab7f6ca6
339807889
0.31922386
04 November 2023, 00:33 AM
6
46a199003f387d88054279b18e5c14bc2769946137919b072f756f4736f83e06
143ff602b84cd0b03091f0416825131488ac933af4bb574247c1f7d9f9557b66
339736066
0.62513239
29 October 2023, 07:42 PM
5
9f83d3a567034710eea257098bdbb979e9a289caedd37f3b871ad7cc27219555
1432428f2fe6c0cd274d31b8d62c64d363403fcd2adc23e553b4b0c153f1ce06
338838159
0.5614878
28 October 2023, 06:40 PM
4
b0124aa94b93e322610fb3907ce3be9beed40888615072f49683849893875d3f
142f8582bdca8944283627e6952121df9112f2ef0fb1bc65a0ab21bbb3dbb89d
338658690
0.08418616
28 October 2023, 05:33 PM
3
5d87718c148596711a862be6a2d8c323a72888e370c7dc95fe31791cef397c97
142f662e77b6af0857558d23fe7a159581e6eb71ae5cf8a44df8b2d976956c6d
338650670
0.20387324
28 October 2023, 05:22 PM
2
36276026ea2b951082d89d9c1987159232cba05a4e62557197e81b10b0b6b961
142f61226a8cad63f27c7b2a4b24fd48ab06360e0dd4613c333851a35a425e07
338649378
0.91791241
25 October 2023, 10:09 AM
1
e219a9722a4bd5dbd5861ee8099add63040978101c902b7d8c5a5a59609688ca
1426af7fa9497bcb3b258a4ccc4e4b6844b3dda39946e8d65b728ef3c0ef5847
338079615
0.87860316
18 October 2023, 00:58 PM
Coinflip Game
Coinflip uses a provably fair system in which the public seed is not known until after a coinflip game has started. The result for each round is generated using the SHA-256 hash of 3 separate inputs:
The server seed is a securely random value, generated when a round is created. The SHA-256 hash of the server seed is displayed to all players immediately after a round is created. Players can check that the private seed revealed after the coinflip result is made known matches this SHA-256 hash.
The public seed is the ID of an EOS block, which is to be generated after the countdown is finished. When the countdown is finished, our system chooses a block number on the EOS blockchain that will be generated in the near future. The ID of this block is what will be used as the public seed. This way, neither the players nor our system know what data will be used to generate the coinflip result until after both players have committed their bets.
The nonce is based on numbers that is the round id.
var crypto = require('crypto');
var roll_server_seed = '30dfbd2887ff70583787976bc3105fc992942f91985c7acd96cc5a2ff4de6e45';
var roll_public_seed = '0d3a2d2c14fa35d5cec6c3940b05040e62ba57182661174dc48a35e6dab46e7d';
var roll_nonce = 1;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_public_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = fair_getRoll(generated_salt, Math.pow(10, 8)) / Math.pow(10, 8);
var generated_side = (generated_roll < 0.5) ? 1 : 2;
console.log('Roll: ' + generated_roll + ' | Side: ' + generated_side);
Id
Server Seed
Public Seed
Block id
Roll
Created At
429
80ee61a45d35ebfbc611a10b5db46836c16ca8bff140dc36f99e699223fe113b
162b3f5a4b515681094408d125607a8f97f8f5e02a7e9e50fe406b1e1dfc85c7
371933018
0.70142916
08 May 2024, 01:11 PM
428
edf7747f22a3aad53e8c61b2be457c479c661da3645f0df926de6e2987efa741
162b3f57e285bcb7c871fc7c17cf2eb3a83bc271a98e556d143cb78d268c14ec
371933015
0.72888482
08 May 2024, 01:11 PM
427
92a844514324c01c2416bb478b1ced14f6552b0c31a46cb11492f6aa536d2abd
162aed94472733ba57c96afddf07b722c4d36ce7785b81ac23f12002fe1c79fb
371912084
0.66154209
08 May 2024, 10:17 AM
426
e0c05c138984342e968e04f663e7190823e27c8b582e7f9f68f2443c162b5ca0
162aed606cd206dfa80a78fe10965601aac002aeeb74e05b8d39b15035302acc
371912032
0.29524298
08 May 2024, 10:16 AM
425
3a5e2b97ad5f1e5a49efc0c05775e600849b3a32342dfe4a7ae88f9b3cab07b0
162aed2cdb64be37decabe8ae6b458f574186cdd8ecb78d2a2d93c87f6a41bc2
371911980
0.79126888
08 May 2024, 10:16 AM
424
397f9928cf9d996eba83d925dbf12a00c460ad2085ec6c82b0f051f18c930a36
162aed28b19f78ebe4d81bc6ccf5963fba7c1fc19b576229f27f2996a72a1da9
371911976
0.51967381
08 May 2024, 10:16 AM
423
d5b77dc5dbc751011c9acabcbfa2e577d4c134c4f60bf1bf145b28d998956bf3
162aecf841cafc4f058aad809d5752128881bf10a7a5ad78fe8c2c4b4793c2f7
371911928
0.53914202
08 May 2024, 10:16 AM
422
8ef0d87c787dc66d9612344924e63af0540027f8ac683adbe3d686ad8e629ba9
162aecf415a9a04fcc32fb836f99bac41be62fa75de37aef6b6c82912a07c16f
371911924
0.37423813
08 May 2024, 10:16 AM
421
04e9c94b68ae529a93895c92b0c66ffdd60375661352bbe2c02338084e1b36ac
162aecf09d395112817ebfae2a67380e0cf4168c8862c18d2df627c781c8d67c
371911920
0.95582037
08 May 2024, 10:16 AM
420
c73f5657b411b1a8981b64990b034e1eec519ae100b9067b70e8753e64a66e72
162aecf09d395112817ebfae2a67380e0cf4168c8862c18d2df627c781c8d67c
371911920
0.99117358
08 May 2024, 10:16 AM
419
f30b354aec121583aab6c71653b1c0498f107aa369c654cfc8f3a6fec5dcc17e
162aecb80466a1afef95dd68b3cb3cbb36a1f52ef0c4793c90a2339734175dbf
371911864
0.23838824
08 May 2024, 10:15 AM
418
e8559259cfafe917da06e5825a088b6e92b591dd48e2e00d0e6d87128023eea2
162aecb5f0ab8fcaf84b1304874e310b0e2a38adc6dd1fdcef63193de83ce3dc
371911861
0.32319943
08 May 2024, 10:15 AM
417
3bded3e0164f44f8dcbb3a2ce5ad6fd91d550f0a75db5361a1ec723a1b965fc4
162aec907b64c89c9feaa526b0bfa798f6651f7f4e4ae677b4462aa0c9de160c
371911824
0.77022833
08 May 2024, 10:15 AM
416
6f42a061e1c1da1eba7094050e854d3b2e8037f85b236f5ba85b524864ba07f9
162aec8cf656bdfdd3a67794fcc4c4491539c8b6c3e43cca9742f9b137a3bd22
371911820
0.69699229
08 May 2024, 10:15 AM
415
a122c0b090a7149c63ac51f803cf6c93db324bdd57fc3ab8ccfc1e9502801df4
162aec84986082bd2d2014652fc5ca362f67d8f315f2983d52d863c14122d229
371911812
0.77382897
08 May 2024, 10:15 AM
414
934df2c1e4f98bca37825d298fef64d4c9f4d78a856f2f849c92becf2a86ccb1
162aec80f98b47992e0ed25f2a9a3eb485da6a59624c117f94b33d1bda1c952f
371911808
0.06733963
08 May 2024, 10:15 AM
413
b517a6185ec1271e0c2f458975960ed25cb2ca334fc71db8dc8ebff819b20387
162aec4429e80ac59f043471ddceaa0869db94d9058aa5285d31691e301bbeb9
371911748
0.73980425
08 May 2024, 10:14 AM
412
8910dd4a00b3f56ff5e518fa3108146a994dfaaf2b5e7a997e9318f8ff1a3739
162aec4429e80ac59f043471ddceaa0869db94d9058aa5285d31691e301bbeb9
371911748
0.90580808
08 May 2024, 10:14 AM
411
2660a2ec34be6640b09fdba0379c8230305a89b18c944533ec518cff8b5c2ef2
162aec401f22505cd601d23f565f99e9a56c963784ef179609f208b4cfcc59cc
371911744
0.29601456
08 May 2024, 10:14 AM
410
415ad419c03a4321a917792b36cd7bc07549f61a596963f4e62c8dcd887466d7
162aec3dc594d1f4504ede961e853419f125c0ea488a4c377c70dfebd1de8a3f
371911741
0.45390337
08 May 2024, 10:14 AM
409
b2a2c330453687cec2138716a05a1a2e94ce048717cabd636b814450b775f1dc
162aec38880b765ee4ac9896fe1ed08f05b472d37fb6afe59f6d72b8698265b7
371911736
0.7316907
08 May 2024, 10:14 AM
408
cfc25df9755dc0cb5757e7083cd2c0c45529858074dcd25f62676402a21beafd
162aec38880b765ee4ac9896fe1ed08f05b472d37fb6afe59f6d72b8698265b7
371911736
0.88584275
08 May 2024, 10:14 AM
407
9823f66b67911c3b65368a192bd21326d9246e64d6af7b8f58f05f93e923a6fb
162aebfc8566b298b74291cd824c1efd0ced28c811cc9e07d5f8d5a18882b55e
371911676
0.33702861
08 May 2024, 10:13 AM
406
58fae2b799552572125c0572c63ee04289b6db555362ad7c258de647228f58f1
162aebf8489a76c0072101e10d99e006b6e91f775d12d388f9f09e3254c6c08e
371911672
0.52592096
08 May 2024, 10:13 AM
405
2e8ab6d612df58a9d9db123a7b4fdbc5eea905c3090debad1db5ff0b83a29cca
162aebf4d9da964a5eedbba39b856e284fbf558dd28ec9ac3ee9d7cd68228ef3
371911668
0.36451717
08 May 2024, 10:13 AM
404
4f09a75e4f96887f04347f7586f11d36b4b5b2b411a0da9f2c6b59c4198c905b
162aebf4d9da964a5eedbba39b856e284fbf558dd28ec9ac3ee9d7cd68228ef3
371911668
0.1033752
08 May 2024, 10:13 AM
403
353d2ebfd30ba55e8372cdfe876f87b057829195c4b79d54672423fce92fade7
162aebb8e120029ef4d55e8aaa818f7c4136828a1760ea9a52a21f152f849e80
371911608
0.3890958
08 May 2024, 10:13 AM
402
8561a16a285ccdc9af7dc0acdc974f1767791ed6776d37145002a860985c2c71
162aebb8e120029ef4d55e8aaa818f7c4136828a1760ea9a52a21f152f849e80
371911608
0.03864584
08 May 2024, 10:13 AM
401
8e1e0efa18f1a7dd9921b2c8c61a9e85dcdc5caa4205daeb7abad678bbd1dabc
162aeb809d6717e867c4ceb482181ac7ada479ae148399e4038b05156dc02413
371911552
0.53740837
08 May 2024, 10:12 AM
400
031833aee2798b96d864148de838e539381f1fb9796a042b02d1945a8fd5d9ef
162aeb809d6717e867c4ceb482181ac7ada479ae148399e4038b05156dc02413
371911552
0.2338435
08 May 2024, 10:12 AM
399
c1d38a81a7f4a9f4a9da1c3271d74ceda63d8b23f740c5de4009ee87fed833dd
162aeb417ee52e930c41aa80a088453d668c26a1a412a928fc865b203821b30c
371911489
0.83705646
08 May 2024, 10:12 AM
398
05bc6f36d128fc97e23ad9c8df1a79e597faece5f0046f1ed8efd5fa054dbd5d
162aeb3cdc3181dee754e0591eb134bf48e850a322c341785e94608fec9fefe3
371911484
0.97405106
08 May 2024, 10:12 AM
397
f52f00d81945b2b6500e18682c6610d3765ee23564ad6a77804b578d20401b16
162aeb3cdc3181dee754e0591eb134bf48e850a322c341785e94608fec9fefe3
371911484
0.92504169
08 May 2024, 10:12 AM
396
0a66d4ab473b06855d2d97a694e5cb603253cd6b92c3634f159d449dc539fe41
162aeb38bf0c4dd9451ed0752a94ccdfdcdb7c0e96b31868d4f013a4adae1b4a
371911480
0.55274661
08 May 2024, 10:12 AM
395
8e4d7182d8de04804b783f5a5aba3448cab6c32122bab3cf71ef54816d5efb57
162aeb355de5ea5e8e0d57d553ad5389c6525fc6b97ea25d760ffa359307b9ce
371911477
0.2214654
08 May 2024, 10:12 AM
394
f73092875654ac3b02bd31e79634634a132e0847ce2f48fb76150ac35f47d23c
162aeaf4fdd2c19bd212ac1465d48343f1e6e1a44f9940492a9d3ac03d58cf99
371911412
0.16917309
08 May 2024, 10:11 AM
393
29aff3aaf0aead3e8001d70fafbfeb529a169fe69a7b4e6c86079f78269303e4
162aeaf4fdd2c19bd212ac1465d48343f1e6e1a44f9940492a9d3ac03d58cf99
371911412
0.14190641
08 May 2024, 10:11 AM
392
a5dedc8a13e1ecd7799938f1b07e653a85dd32779faf62d798782c638335b5c6
162aeaec8afbb62c6f338068ccbe50705407b112f44775700ccf92adb122f684
371911404
0.21027942
08 May 2024, 10:11 AM
391
5976fae1c73f4c05edb0bd09caa30a9a16361e520a1a26f7b6689011594588c0
162aeaec8afbb62c6f338068ccbe50705407b112f44775700ccf92adb122f684
371911404
0.33797587
08 May 2024, 10:11 AM
390
e76f4e97db685e9c72118351a20e6cc399138fc4b707a7829dde54ba7355478e
162aeae9596e0ced81d4094c1a3569f55201de54faf49003a2094bccfe074728
371911401
0.5402537
08 May 2024, 10:11 AM
389
c6ba2b0b15aca5b0963008eb3c76ebbbe641806662dfd89be9d5dc531d671c49
162aeae4ee99ae202cc3d4e2639a3739e1bfa9d97290bbed061959d0fc67a414
371911396
0.28977802
08 May 2024, 10:11 AM
388
305ee40769a0de79ecd80c66661521c391777636dc0a6c7af3da19f7e52c4524
162aea9c8fcf51784a7414654501913d238fda5429b3fdc82345e94281fbadaf
371911324
0.06051158
08 May 2024, 10:11 AM
387
9d8878c67f858b5331110ee89a5ff6ddf7e7bfe6ef7da4d882335b746c71e1d7
162aea9c8fcf51784a7414654501913d238fda5429b3fdc82345e94281fbadaf
371911324
0.1212622
08 May 2024, 10:11 AM
386
f227cac3e2784f3fcdba92df12bd73a0bb8e406b44314adae8450cd3f349bd48
162aeaa8c13d5b1dc72caf61e8714cde84016aa324b931a274e231262795b497
371911336
0.76772499
08 May 2024, 10:11 AM
385
e1804e8dbda1bf953e60dd7b992974efa0fe9932a8714e7a7d2ade7df6159b67
162aeaa8c13d5b1dc72caf61e8714cde84016aa324b931a274e231262795b497
371911336
0.5677459
08 May 2024, 10:11 AM
384
6e3152a5c7ab78cc67ae5597fca781578386266c9aa212f25f9b3f535e139379
162aeaa4ae8dc11051e9f870e1d499b2b408df08bfb9059ab098fa43feb0abae
371911332
0.01342789
08 May 2024, 10:11 AM
383
3d8f2c6af31c92c1085637789e0a5b03b27197b6c4e73359b2527fb75f5adb69
162aeaa4ae8dc11051e9f870e1d499b2b408df08bfb9059ab098fa43feb0abae
371911332
0.55642056
08 May 2024, 10:11 AM
382
bb548db62fd1263d8037989c138c66bb9f7a05c32d80fa1050f5a2a0b351678b
162aea60060136be3b536e542f1705fda879e62d74518cb20837b5e7ca3b3d6e
371911264
0.03906301
08 May 2024, 10:10 AM
381
9129c63775efdb120aeeaf02a0531a1ec0d9431a5fd0639f77c9e0c8eff76cc7
162aea5c5f5dc3647ca6e5f1281912a8d9ae5a6bad806426a09ffe26ef8bdebd
371911260
0.76339705
08 May 2024, 10:10 AM
380
0fe818111a3291a28f3a827712a4dd3e17953b560a5ca8dcd213152ab84ba979
162aea58448b99bf507c7992df32c892164fd752679473e0ec516758515cd4d6
371911256
0.21704785
08 May 2024, 10:10 AM
Dice Game
In the Provably Fair tab, you can change the client seed and regenerate the server seed.
Server seed is SHA-256 hash generated from random 32 bytes. You can regenerate server seed in any time. You cannot see the original server seed, yet you will be able to check that it was unmodified later after regenerating the server seed.
Client seed is generated first time for user, same way like server seed. As the client seed affects every roll result, changing it to any seed of your choice at any time means you can ensure that it's impossible for us to manipulate the result.
However, the SHA-256 function we use to generate the roll is deterministic, if the client seed is combined with the same server seed, it will generate exactly the same roll result every time. This could be used to abuse the system, so we use something called a 'nonce' which prevents this from being abusable. Each roll done using the same server seed & client seed pair will also be paired with a different nonce, which is simply a number starting at 0 and incremented by 1 for each roll done.
The nonce is based on numbers that we can't manipulate (they naturally increment by 1 after each roll).
SHA-256 returns the hash value for the salt hash combination in a hex-encoded form. We then take the first 8 characters from this hash and convert this hex string to a number.
We apply a modulus of 10000 to converted number, giving us a number in the range of 0-9999. Finally, division by 100 produces a decimal number in the range 0-99.99.
Each roll can be verified using this formula as soon as you have revealed your server seed for the previous rolls. The published unhashed server seeds can be checked by simply applying the SHA-256 function to it, this will produce the previously published hashed version of the server seed, which was made visible to you before any roll using it was ever made. Each user can check the integrity of every roll made using this information.
var crypto = require('crypto');
var roll_server_seed = '2c3eea4603280f3cadfb0046b248e7b756930b0b6886997ac73f96d478c823f3';
var roll_client_seed = '0b3eeb63c10796f00e3faff36207b369';
var roll_nonce = 0;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_client_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = (fair_getRoll(generated_salt, 10000) / 100) % 100;
console.log('Roll: ' + generated_roll);
Id
Server Seed
Client Seed
Nonce
Roll
No data found
Unboxing Game
In the Provably Fair tab, you can change the client seed and regenerate the server seed.
Server seed is SHA-256 hash generated from random 32 bytes. You can regenerate server seed in any time. You cannot see the original server seed, yet you will be able to check that it was unmodified later after regenerating the server seed.
Client seed is generated first time for user, same way like server seed. As the client seed affects every roll result, changing it to any seed of your choice at any time means you can ensure that it's impossible for us to manipulate the result.
However, the SHA-256 function we use to generate the roll is deterministic, if the client seed is combined with the same server seed, it will generate exactly the same roll result every time. This could be used to abuse the system, so we use something called a 'nonce' which prevents this from being abusable. Each roll done using the same server seed & client seed pair will also be paired with a different nonce, which is simply a number starting at 0 and incremented by 1 for each roll done.
The nonce is based on numbers that we can't manipulate (they naturally increment by 1 after each roll).
The total tickets is based on sum of tickets from crates.
SHA-256 returns the hash value for the salt hash combination in a hex-encoded form. We then take the first 8 characters from this hash and convert this hex string to a number.
We apply a modulus of 'total_tickets' to converted number, giving us a number in the range of 0-'total_tickets'. Finally, incrementing by 1 produces a integer number in the range 1-'total_tickets' + 1.
Each roll can be verified using this formula as soon as you have revealed your server seed for the previous rolls. The published unhashed server seeds can be checked by simply applying the SHA-256 function to it, this will produce the previously published hashed version of the server seed, which was made visible to you before any roll using it was ever made. Each user can check the integrity of every roll made using this information.
var crypto = require('crypto');
var roll_server_seed = '2c3eea4603280f3cadfb0046b248e7b756930b0b6886997ac73f96d478c823f3';
var roll_client_seed = '0b3eeb63c10796f00e3faff36207b369';
var roll_nonce = 12;
var roll_total_tickets = 10000;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_client_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = fair_getRoll(generated_salt, roll_total_tickets) + 1;
console.log('Roll: ' + generated_roll);
Id
Server Seed
Client Seed
Nonce
Tickets
Roll
No data found
Case Battle Game
Casae Battle uses a provably fair system in which the public seed is not known until after a battle game has started. The result for each battle is generated using the SHA-256 hash of 3 separate inputs:
The server seed is a securely random value, generated when a round is created. The SHA-256 hash of the server seed is displayed to all players immediately after a round is created. Players can check that the private seed revealed after the coinflip result is made known matches this SHA-256 hash.
The public seed is the ID of an EOS block, which is to be generated after the countdown is finished. When the countdown is finished, our system chooses a block number on the EOS blockchain that will be generated in the near future. The ID of this block is what will be used as the public seed. This way, neither the players nor our system know what data will be used to generate the coinflip result until after both players have committed their bets.
The nonce is based on numbers that is the round id.
The rounds is based on numbers that is the number of cases the battle have.
The players is based on numbers that is the number of players the battle have.
The output is a matrix. Each row represents the round and the column represents the player position. Each value is based on numbers that is the case roll.
var crypto = require('crypto');
var roll_server_seed = '48dc637aedd2d53c1dbf4d0cb8c48e3be1a243a6fb9e6738cd528cef1db1159e';
var roll_public_seed = '11db6dc55673ab3d610ee1b96593a08ed5029231f4a0fa1e8d54e1b4abd34c5f';
var roll_nonce = 3;
var roll_rounds = 4;
var roll_players = 2;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
function fair_getRollCaseBattle(salt, rounds, players) {
var array = [];
for(var i = 0; i < rounds; i++) {
array.push([]);
for(var j = 0; j < players; j++) {
var salt_position = fair_generateSaltHash(salt + '-' + i + '-' + j);
var roll = fair_getRoll(salt_position, Math.pow(10, 8)) / Math.pow(10, 8);
array[i].push(roll);
}
}
return array;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_public_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = fair_getRollCaseBattle(generated_salt, roll_rounds, roll_players);
console.log('Roll: ' + JSON.stringify(generated_roll));
Id
Server Seed
Public Seed
Block id
Roll
Created At
63
e3904386ae88a6af64053dfe7df6adad90c72d9addf527bcbe2b5477ffe0a30e
1579ca3cce29379bcc91e4f48d8a580950e35b08e1cacfceca0ee9a9be8fc334
360303164
02 March 2024, 02:53 AM
54
a5a514338624cdabf2fe4d16ef99dddc3887cd1f525ee0cc7dbb7ac3412b7c39
1530e89202217a36ee903930dafa41dc7d44affc03397d1e096a14f8d9ccecef
355526802
03 February 2024, 11:02 AM
53
01ebd90b8245016fb124dfb2b7c7c878de575cbe12433dfa36e54e904764745c
1530e4b2cb143c85425bde091b7de0ccd2264376e8c870c1254d55e45627ddef
355525810
03 February 2024, 10:50 AM
52
2b2e635ca599fe9370515a0d9db5efcd621980e137f1f5b84e1c84aad6268a08
1530d962d10cd6c13ca9d22e2a7996b610190aa52268f4d2d30bc9077e3613a8
355522914
03 February 2024, 10:32 AM
51
eeed413c9e0370d0910ab14c8bd3d41796aecb93b387b49009e2a68fcd4d6cec
1530b6169828e6eb8c0a3bec3062c98fcae86ac4bd38aeb016875d0b368227f7
355513878
03 February 2024, 09:17 AM
50
79a5fda6e13f2c00b4a6d8713127d77d0181587be337c26fb7b008081dbb56d6
1530b2ded3cfc46efbe294953db87abcd5d0c2951145737dd9f3c55fa8259fb4
355513054
03 February 2024, 09:08 AM
48
413c28d0eac47d8c959bfbd1d54ae6d2681c050768c06e968dbf3ddd572fea22
14fda8530756090cc1b790493c53154f223e6abb260cc813b04778e52284ca34
352168019
15 January 2024, 00:04 AM
46
379649fe4939c42dfa4b7e96942b7bf6782f1f5c062ffd108e02524942e5fa80
14ed2099d2ea9ab7964410f508e1550d7a226660f111247600615f220704a885
351084697
08 January 2024, 05:22 PM
42
6c6d21ec60e91774f2117a83f720b9e18c8258fb4ded5c59233fab27cae0257f
14b53d1734e645f0d9e40d2f52e7c7bae34b5d59b6fdc71f9a86e075dbe8a50d
347421975
18 December 2023, 00:23 PM
41
45b61e50dac062281a8221637b25ba5e32195f6211e38c65b80d457063313eda
14b4f0136918a7c1b2cf152dab0516d1898208167e3462526b0345d13296a932
347402259
18 December 2023, 09:39 AM
40
9b5f4c0da160040aa1a5550a855d03ee6bb058a3d0de024390451011219e73dc
14b4efab557e11e0c908c8459c7de79b46e82ddb9b57b7410bfabb8f0ba914ec
347402155
18 December 2023, 09:37 AM
39
3738cacd141d56b1bf23f3fa26146cc10ed5bfab0c7ff11abb1b2a1357eb45a9
14b4ef03e51f2c4d9fd4a7dbb3f77a1357674dbe75c0f47e765944488729861d
347401987
18 December 2023, 09:36 AM
37
c1cf355484b89970ce5c45d7f1829d60fab7d4eafef43c83a644b759d3f6a6fa
14425289ad029a231ed7a90bb406709759fb17d1858ef99dbc6839ec1ff3f190
339890825
04 November 2023, 09:58 PM
36
a13d918736dca7f2f9e8841e0de52e6d44a931c8bb7dcadc678417622071ebab
1442498d554dc970815ce9a13de413abe7b5f68966451be3c801b9f25ed7a038
339888525
04 November 2023, 09:43 PM
35
c678689d4b34f4c0c0a1117180595663bab16b7447e9df1c78a6e6a1e1028d31
144248c5b92858aebb29ce5c0540bed256de5a4879e690e99ccb8debf3bfa93f
339888325
04 November 2023, 09:41 PM
34
1b97da5722e06432079a565f2a63384875c15a4771fca445459a81754eeaaf91
1442440d8092077206e57f9b1e146151dada1930bd1cc5668ae43487434289a4
339887117
04 November 2023, 09:31 PM
33
58059a91a978f01834b01ca66e319afaaa17b46218e0fe684e90a8f65c2c1549
144241211d2d27cffdb8eb9106c6c724c8720bb80cd07140e843a8e5125498c1
339886369
04 November 2023, 09:25 PM
32
81a2fe1d62eaf28c56b42891299f2c43defa742835d54b34a7a82672645ac5bd
1442387a64872293d60856e8ce75ccf24043addc0ac46f8c31efccd2fceb80a2
339884154
04 November 2023, 09:06 PM
31
0dfcc741ac4079b3d294c1025b75fefe0465db7912c64259da906024f7a82cc7
1442322577eadaf0d67798d66d6d964478f7aad872142f75af890d1c9f66f1fc
339882533
04 November 2023, 08:53 PM
30
5000a1635df0fc2926dd4ac919a9257e66117f935d0d411cafb05677fde13f84
14422fc1ae7a92d939b31baf1c81c31ec5a278cd0927547c813401ccdf1b6e15
339881921
04 November 2023, 08:48 PM
29
e2065eddee1bb68d2563835a083ef5da72570fddf49b65c6c02e1eb2eccab7ba
14422c99d7ef92479e5d69e3ec4d5bf1dea0680f5baf12f718c79b1bf0dc7290
339881113
04 November 2023, 08:41 PM
28
4044e00fddecf62cd7292c520ef4bed34e48e5c4aa55e664b549caaf84c2d4f4
14422bfd71775511830f969e6626b0498b8f4a80f69996b3681b594133005e58
339880957
04 November 2023, 08:40 PM
27
95fd745b6d9d4eeb5b332cb13584468bc04344fd62a62b10716e973ce103010e
144229653e7bd350ab6384097af15f8aada29c93c0d6f350fd2744439d370c74
339880293
04 November 2023, 08:35 PM
26
91254c24f6e6deffce6a5675caa7af6c2c9f779a74e3d76ac484400f0606f063
144228c922a48bfdebe8b9896484fb4a9de4bc3219261c3b5e6d464cf7b7bd04
339880137
04 November 2023, 08:31 PM
25
9fc843a5324b3115860a3f7843d3938dcfd583974f73a32ada0ffd58740a49e5
14422289924776746d39ca360c91cbb122ea923b7a7c2101a26c7d261ce50653
339878537
04 November 2023, 08:20 PM
24
f2044cf975df9baf5fdcf08c6068b58a58ae9464703c8a8dc3c1af60fec5e2c8
14422045f9a7540246deb480066eb880f0c9aa94fab2f2e877a8235f8feb7390
339877957
04 November 2023, 08:15 PM
23
cf61e35260c87d593034b7fb89db4ae5c4fdf63ec5d1bda2ebb7fc5227dd8947
14421f1522d2a6b877af08236aec34dcce0011e45e9582e6be374493f4fc6535
339877653
04 November 2023, 08:13 PM
22
bf599de833d1341f14ed48240dcd71743eb2875c85eefdfff8b3e0a0e2245307
14421d71b339640b7c4268a854da2f91acf96368d0d74e4efb9368cbac0359ac
339877233
04 November 2023, 08:09 PM
21
316d1b7b12ce616938046624be59efde5042b708153acf08349ec9cfc1d80eb6
14421b75a78e6acec3564175871039751546a8ab107eab522ddebd9597cdb177
339876725
04 November 2023, 08:05 PM
20
72c7ab4a986a340361e8142082a6083721b1a0f4271ae5451b318b5e95025b07
144216ed6a502125a4c37a23a88346839ee491122137f1585e10dee32da233d6
339875565
04 November 2023, 07:55 PM
19
47042ad9842605732215a3010f282903859a3b9efb1800c4a74e8cfb452a4bcd
144216292ef303b4f501af56d1d37a98d7fe39bb2552da40c085d830a30ae963
339875369
04 November 2023, 07:54 PM
18
f71f7adabdd9d7139cfbc15c56f53a2efa5bb05aeb2f4c0762551a3f6c814f70
144211995efda543bade8df3c983dd75c457b5d5d2880957437f288844deb355
339874201
04 November 2023, 07:44 PM
17
c60d6821c37595fcf8b1d0555e29dad7dd029c9cf324b99bb5572a91d471a37b
14420fa9f01e08e5cf4409811b055ec2a1fdfe05b14184f90a7204b08aef0734
339873705
04 November 2023, 07:38 PM
16
144484249b9d1be600fddb5563857f0f13006f2414085a7a88f8883b68ae443a
14420de53d2e3e156692cef626771c67138ee40f677a4627ab3a60596bc9d76f
339873253
04 November 2023, 07:36 PM
15
1a37fb52241852e12f5a26bd955c3f0e2cb9740bebfe6b96fa5f78684fb1be69
14420afd92edc370c99b01818a4dced3a71d6100924141832d9a42ae58484d47
339872509
04 November 2023, 07:30 PM
14
a202361842cc6a133fa0d64de8211a02d9ce2af5e8b33c80ae69b5a8b3ce32b2
144209fd1f6da30567c5dc972d2827368912eb2e64e9179fa14a20cf20f407e7
339872253
04 November 2023, 07:28 PM
13
24d7fc72d71d480521460c5602a28213f06ca2d80ab1cf1b2fa60697d81a73db
14420929ef2b5b965ee62d42b70af40f6dfa97860e215e535538dd5617781368
339872041
04 November 2023, 07:23 PM
12
1aed12e0b22cafa9a95c8046471d71e877cfcf9d74cb628c4d0b76c193d289d7
1441ce4a195517a7069ee9d159846162aa4fc777ac65dcd9c0c0113394cabebc
339856970
04 November 2023, 05:20 PM
11
804e01213c1d24e0724cf4b4a00a3750dde39a67555147a0168b9a9bc64e1447
143fdeb68eccf406574a73e0dced9098f900e2d6a7ee2eaded767f3b54642201
339730102
03 November 2023, 11:43 PM
10
c38cb9dcbdf2e902db1fa357b293ade361c90ef3108f05f94de20d39fa28cd81
143fddd22ffb755bd9d69f44ce433d18d596bba1e84ccb4820d41a0669a8fe2a
339729874
03 November 2023, 11:41 PM
9
f5c8650b236b138c2d49946bb963c3f8eb3b2b67d9de36215dbe26137f191ca4
143fda5e209ff4af21d881db7c5f55ceb9421024b98abe2c5d20bda5bb4e6b62
339728990
03 November 2023, 11:34 PM
7
3930002180019abf365d50f32e66f2aa6a33f511f2c983d65811ac4fddfbcd74
143fd58ae4de0b6bcbe0275557ff2583cd43415e7d028b77d7e07301bca8cce1
339727754
03 November 2023, 11:24 PM
5
521d9f3d7d1d785ca32927248ba9fde484ae3648b7c32969c5dcfd369d09e907
14281e4c9c2ea58eeffc6852b862b83e626d0438ad8364af4195ce72210871f8
338173516
25 October 2023, 11:11 PM
4
6a3924a8eac679054285b44b00160f17a6a66dd2e316e1a53d3d7c8de546855a
1427fea4f7ae4d789b3848dac5d66b38b024a318a297ad9bb5fcd5a781ada180
338165412
25 October 2023, 10:04 PM
3
ae4d7a78e56731661fc45e3b7086aa8aa12dc90c4e38a6fddc339cfb9a4729cb
1427fdd428c3cd4f08fd36a0697a86bf076c80a1e273d3bcabb77f774d13fe96
338165204
25 October 2023, 10:02 PM
2
64a19110c77567fd9455d76276bd23ab00701ed60755cac0b59d32270c70c00d
1427f6b8c8fc3d32f42dedc36f5b10a2ffadf9293180448df7377706e7edb33f
338163384
25 October 2023, 09:44 PM
Upgrader Game
In the Provably Fair tab, you can change the client seed and regenerate the server seed.
Server seed is SHA-256 hash generated from random 32 bytes. You can regenerate server seed in any time. You cannot see the original server seed, yet you will be able to check that it was unmodified later after regenerating the server seed.
Client seed is generated first time for user, same way like server seed. As the client seed affects every roll result, changing it to any seed of your choice at any time means you can ensure that it's impossible for us to manipulate the result.
However, the SHA-256 function we use to generate the roll is deterministic, if the client seed is combined with the same server seed, it will generate exactly the same roll result every time. This could be used to abuse the system, so we use something called a 'nonce' which prevents this from being abusable. Each roll done using the same server seed & client seed pair will also be paired with a different nonce, which is simply a number starting at 0 and incremented by 1 for each roll done.
The nonce is based on numbers that we can't manipulate (they naturally increment by 1 after each roll).
SHA-256 returns the hash value for the salt hash combination in a hex-encoded form. We then take the first 8 characters from this hash and convert this hex string to a number.
We apply a modulus of 10000 to converted number, giving us a number in the range of 0-9999. Finally, division by 100 produces a decimal number in the range 0-99.99.
Each roll can be verified using this formula as soon as you have revealed your server seed for the previous rolls. The published unhashed server seeds can be checked by simply applying the SHA-256 function to it, this will produce the previously published hashed version of the server seed, which was made visible to you before any roll using it was ever made. Each user can check the integrity of every roll made using this information.
var crypto = require('crypto');
var roll_server_seed = '2c3eea4603280f3cadfb0046b248e7b756930b0b6886997ac73f96d478c823f3';
var roll_client_seed = '0b3eeb63c10796f00e3faff36207b369';
var roll_nonce = 0;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_client_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_roll = (fair_getRoll(generated_salt, 10000) / 100) % 100;
console.log('Roll: ' + generated_roll);
Id
Server Seed
Client Seed
Nonce
Roll
No data found
Minesweeper Game
In the Provably Fair tab, you can change the client seed and regenerate the server seed.
Server seed is SHA-256 hash generated from random 32 bytes. You can regenerate server seed in any time. You cannot see the original server seed, yet you will be able to check that it was unmodified later after regenerating the server seed.
Client seed is generated first time for user, same way like server seed. As the client seed affects every roll result, changing it to any seed of your choice at any time means you can ensure that it's impossible for us to manipulate the result.
However, the SHA-256 function we use to generate the roll is deterministic, if the client seed is combined with the same server seed, it will generate exactly the same roll result every time. This could be used to abuse the system, so we use something called a 'nonce' which prevents this from being abusable. Each roll done using the same server seed & client seed pair will also be paired with a different nonce, which is simply a number starting at 0 and incremented by 1 for each roll done.
The nonce is based on numbers that we can't manipulate (they naturally increment by 1 after each roll).
SHA-256 returns the hash value for the salt hash combination in a hex-encoded form. We then take the first 8 characters from this hash and convert this hex string to a number.
A mine game is generated with 24 separate salts. Each salt is generated by using the index of tile from board and the main salt who is generated using the server seed, client seed and the nonce. Each output is multiplied by the number of possible unique tiles still remaining on the board. This is done by subtracting the number of tiles remaining by 1 for each iteration game result generated using the corresponding output provided. The location of the mine is plotted using a grid position from left to right, top to bottom.
The fisher-yates shuffle implementation is utilised to prevent duplicate possible hits being generated. Between 1 and 24 game results are used, based on the settings chosen.
Each roll can be verified using this formula as soon as you have revealed your server seed for the previous rolls. The published unhashed server seeds can be checked by simply applying the SHA-256 function to it, this will produce the previously published hashed version of the server seed, which was made visible to you before any roll using it was ever made. Each user can check the integrity of every roll made using this information.
var crypto = require('crypto');
var roll_server_seed = '2c3eea4603280f3cadfb0046b248e7b756930b0b6886997ac73f96d478c823f3';
var roll_client_seed = '0b3eeb63c10796f00e3faff36207b369';
var roll_nonce = 43;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
function fair_getShuffle(salt, max) {
//Set shuffle inexes
var array = [];
for(var i = 0; i < max; i++) array.push(i);
//Fisher-yates shuffle implementation
var k = 0;
for(var i = array.length - 1; i > 0; i--, k++) {
var salt_possition = fair_generateSaltHash(salt + '-' + k);
var roll = fair_getRoll(salt_possition, Math.pow(10, 8)) / Math.pow(10, 8);
var j = Math.floor(roll * (i + 1));
[array[i], array[j]] = [array[j], array[i]];
}
return array;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_client_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_array = fair_getShuffle(generated_salt, 25);
var generated_roll = '';
generated_array.forEach(function(item){
if(item < 10) generated_roll += '0' + item;
else generated_roll += item;
});
console.log('Roll: ' + generated_roll);
Id
Server Seed
Client Seed
Nonce
Roll
No data found
Tower Game
In the Provably Fair tab, you can change the client seed and regenerate the server seed.
Server seed is SHA-256 hash generated from random 32 bytes. You can regenerate server seed in any time. You cannot see the original server seed, yet you will be able to check that it was unmodified later after regenerating the server seed.
Client seed is generated first time for user, same way like server seed. As the client seed affects every roll result, changing it to any seed of your choice at any time means you can ensure that it's impossible for us to manipulate the result.
However, the SHA-256 function we use to generate the roll is deterministic, if the client seed is combined with the same server seed, it will generate exactly the same roll result every time. This could be used to abuse the system, so we use something called a 'nonce' which prevents this from being abusable. Each roll done using the same server seed & client seed pair will also be paired with a different nonce, which is simply a number starting at 0 and incremented by 1 for each roll done.
The nonce is based on numbers that we can't manipulate (they naturally increment by 1 after each roll).
SHA-256 returns the hash value for the salt hash combination in a hex-encoded form. We then take the first 8 characters from this hash and convert this hex string to a number.
A tower game is generated with 10 separate salts. Each salt is generated by using the index of stage from board and the main salt who is generated using the server seed, client seed and the nonce. We apply for each output a modulus of 3 to this number, giving us a number in the range of 0-2, which represent the index of tile for a wrong move. The location of the tile is plotted using a grid position from bottom to top, left to right.
Each roll can be verified using this formula as soon as you have revealed your server seed for the previous rolls. The published unhashed server seeds can be checked by simply applying the SHA-256 function to it, this will produce the previously published hashed version of the server seed, which was made visible to you before any roll using it was ever made. Each user can check the integrity of every roll made using this information.
var crypto = require('crypto');
var roll_server_seed = '2c3eea4603280f3cadfb0046b248e7b756930b0b6886997ac73f96d478c823f3';
var roll_client_seed = '0b3eeb63c10796f00e3faff36207b369';
var roll_nonce = 45;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
function fair_getRollTower(salt) {
var array = [];
//Get tower roll by stage
for(var i = 0; i < 10; i++){
var salt_possition = fair_generateSaltHash(salt + '-' + i);
var roll = fair_getRoll(salt_possition, 3);
array.push(roll);
}
return array;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_client_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_array = fair_getRollTower(generated_salt);
var generated_roll = generated_array.join('');
console.log('Roll: ' + generated_roll);
Id
Server Seed
Client Seed
Nonce
Roll
No data found
Plinko Game
In the Provably Fair tab, you can change the client seed and regenerate the server seed.
Server seed is SHA-256 hash generated from random 32 bytes. You can regenerate server seed in any time. You cannot see the original server seed, yet you will be able to check that it was unmodified later after regenerating the server seed.
Client seed is generated first time for user, same way like server seed. As the client seed affects every roll result, changing it to any seed of your choice at any time means you can ensure that it's impossible for us to manipulate the result.
However, the SHA-256 function we use to generate the roll is deterministic, if the client seed is combined with the same server seed, it will generate exactly the same roll result every time. This could be used to abuse the system, so we use something called a 'nonce' which prevents this from being abusable. Each roll done using the same server seed & client seed pair will also be paired with a different nonce, which is simply a number starting at 0 and incremented by 1 for each roll done.
The nonce is based on numbers that we can't manipulate (they naturally increment by 1 after each roll).
SHA-256 returns the hash value for the salt hash combination in a hex-encoded form. We then take the first 8 characters from this hash and convert this hex string to a number.
A plinko game is generated with 14 separate salts. Each salt is generated by using the index of stage from board and the main salt who is generated using the server seed, client seed and the nonce. We apply for each output a modulus of 2 to this number, giving us a number in the range of 0-1, which represent the next move of ball (left = 0 or right = 1).
Each roll can be verified using this formula as soon as you have revealed your server seed for the previous rolls. The published unhashed server seeds can be checked by simply applying the SHA-256 function to it, this will produce the previously published hashed version of the server seed, which was made visible to you before any roll using it was ever made. Each user can check the integrity of every roll made using this information.
var crypto = require('crypto');
var roll_server_seed = '2c3eea4603280f3cadfb0046b248e7b756930b0b6886997ac73f96d478c823f3';
var roll_client_seed = '0b3eeb63c10796f00e3faff36207b369';
var roll_nonce = 59;
function fair_getCombinedSeed(server_seed, public_seed, nonce) {
return [server_seed, public_seed, nonce].join('-');
}
function fair_generateSaltHash(seed) {
return crypto.createHmac('sha256', seed).digest('hex');
}
function fair_getRoll(salt, max) {
return Math.abs(parseInt(salt.substr(0, 12), 16)) % max;
}
function fair_getRollPlinko(salt) {
var array = [];
//Get plinko roll by stage
for(var i = 0; i < 14; i++){
var salt_possition = fair_generateSaltHash(salt + '-' + i);
var roll = fair_getRoll(salt_possition, 2);
array.push(roll);
}
return array;
}
var generated_seed = fair_getCombinedSeed(roll_server_seed, roll_client_seed, roll_nonce);
var generated_salt = fair_generateSaltHash(generated_seed);
var generated_array = fair_getRollPlinko(generated_salt);
var generated_roll = generated_array.join('');
console.log('Roll: ' + generated_roll);
Id
Server Seed
Client Seed
Nonce
Roll
No data found