view jsfiddle: https://jsfiddle.net/1l1uqcgv/6/?utm_source=website&utm_medium=embed&utm_campaign=1l1uqcgv
function refreshtable(){ var hash = document.getelementbyid("gamehash").value; var lasthash = ""; var amount = document.getelementbyid("gameamount").value; var tablebody = document.getelementbyid("tbody"); tablebody.innerhtml = ""; for(var i=0; i<amount; i++){ var gamehash = (lasthash!=""?gengamehash(lasthash):hash); var gamecrash = crashpointfromhash((lasthash!=""?gengamehash(lasthash):hash)); var clr = gamecrash > 1.97 ? 'green': (gamecrash < 1.97 ? 'red' : 'blue'); tablebody.innerhtml += "<tr><td>"+gamehash+"</td><td style='background:" + clr + "'>"+gamecrash+"</td></tr>"; lasthash = gamehash; } } function divisible(hash, mod) { // abcdefghij should chunked ab cdef ghij var val = 0; var o = hash.length % 4; (var = o > 0 ? o - 4 : 0; < hash.length; += 4) { val = ((val << 16) + parseint(hash.substring(i, i+4), 16)) % mod; } return val === 0; } function gengamehash(serverseed) { return cryptojs.sha256(serverseed).tostring() }; function hmac(key, v) { var hmachasher = cryptojs.algo.hmac.create(cryptojs.algo.sha256, key); return hmachasher.finalize(v).tostring(); } function crashpointfromhash(serverseed) { // see: provably fair seeding event var hash = hmac(serverseed, '000000000000000007a9a31ff7f07463d91af6b5454241d5faf282e5e0fe1b3a'); // in 1 of 101 games game crashes instantly. if (divisible(hash, 101)) return 0; // use significant 52-bit hash calculate crash point var h = parseint(hash.slice(0,52/4),16); var e = math.pow(2,52); return (math.floor((100 * e - h) / (e - h))/100).tofixed(2); };
is possible find "serverseed" shown in lines 31 , 41? find previous games, hash entered box, showing previous games. serverseed used find these hashes, or single hash create previous hashes?
the serverseed hash input in order see crash point , view previous games.
Comments
Post a Comment