Freedoge - Co.in Verifier2
Freedoge - Co.in Verifier2
can see after you click on the link that says <b>PROVABLY FAIR</b> to verify that
the number you rolled was indeed provably fair (ie. we did not change the roll
outcome after you clicked on ROLL and that we did indeed use the same server and
client seeds that we showed you before the roll, to generate the rolled
number).</p>
<p>This roll verifier is entirely coded in javascript so you can view the
source to see how the roll is calculated and we will not be able to manipulate this
script in any way because the calculations are done right here in your browser and
the source is open for everyone to see.</p>
<table border=0 cellpadding=5px align=center>
<tr>
<td class="bold">SERVER SEED : </td>
<td class="bold">SERVER SEED HASH : </td>
</tr>
<tr>
<td><input id="server_seed"></td>
<td><input id="server_seed_hash"></td>
</tr>
<tr>
<td class="bold">CLIENT SEED : </td>
<td class="bold">NONCE : </td>
</tr>
<tr>
<td><input id="client_seed"></td>
<td><input id="nonce"></td>
</tr>
<tr>
<td colspan=2><input type=submit id="verify"
value="VERIFY!"></td>
</tr>
</table>
<p id="verify_server_seed_hash_msg" class="bold"></p>
<h2 id="rolled_number"></h2>
<script type="text/javascript">
$(document).ready(function()
{
$
('#server_seed').val(decodeURIComponent($.urlParam('server_seed')));
$
('#client_seed').val(decodeURIComponent($.urlParam('client_seed')));
$
('#server_seed_hash').val(decodeURIComponent($.urlParam('server_seed_hash')));
$('#nonce').val(decodeURIComponent($.urlParam('nonce')));
$("#verify").click(function(event)
{
var server_seed = $('#server_seed').val();
var client_seed = $('#client_seed').val();
var nonce = $('#nonce').val();
var server_seed_hash =
CryptoJS.SHA256(server_seed).toString(CryptoJS.enc.Hex);
var string1 = nonce.concat(":",server_seed,":",nonce);
var string2 = nonce.concat(":",client_seed,":",nonce);
var hmac512 =
CryptoJS.HmacSHA512(string1,string2).toString(CryptoJS.enc.Hex);
var string3 = hmac512.substring(0,8);
var number = parseInt(string3, 16);
var roll = (Math.round(number/429496.7295)).toFixed(0);
$('#rolled_number').html(roll);
if ($('#server_seed_hash').val() == server_seed_hash)
{
$('#verify_server_seed_hash_msg').html("<font
color=green>SERVER SEED HASH MATCHES</font>");
}
else
{
$('#verify_server_seed_hash_msg').html("<font
color=red>SERVER SEED HASH DOES NOT MATCH</font>");
}
});
});
$.urlParam = function(name)
{
var results = new RegExp('[\?&]' + name +
'=([^&#]*)').exec(window.location.href);
if (results==null){
return '';
}
else{
return results[1] || 0;
}
}
</script>
</body>