rollin.io verifier

HTML

<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/sha256.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/hmac-sha512.js"></script>
<script src="https://cdn.rawgit.com/banksean/300494/raw/f003af3e59a164330da573202f2372b94eb8ae47/mersenne-twister.js"></script>
<table>
    <tr>
        <td class="title">Random Seed</td>
        <td>
            <input id="random" value="" />
        </td>
    </tr>
    <tr>
        <td>Server Seed</td>
        <td>
            <input id="server" value="" />
        </td>
    </tr>
    <tr>
        <td>Client Seed</td>
        <td>
            <input id="client" value="" />
        </td>
    </tr>
    <tr>
        <td>&nbsp;</td>
        <td>
            <button id="calc">Calculate!</button>
        </td>
    </tr>
</table>

<h2>Verify That:</h2>

<div>
    <table class="bordered">
        <tr>
            <td class="title">Informed Server Hash</td>
            <td id="server-hash"></td>
        </tr>
        <tr>
            <td>Roll Result</td>
            <td id="result"></td>
        </tr>
    </table>
</div>

CSS

body {
    font-family: arial;
    font-size: 13px;
}
table {
    width: 100%;
    border-collapse: collapse;
}
input {
    width: 100%;
}
tr {
    vertical-align: top;
}
td {
    padding: 4px;
}
table.bordered td {
    border: 1px solid gray;
}
td.title {
    width: 120px;
}

JavaScript

jQuery(function ($) {
    function rcalc() {
        var randomSeed = $('#random').val();
        var serverSeed = $('#server').val();
        var clientSeed = $('#client').val();

        //verify server hash:
        $('#server-hash').text(CryptoJS.SHA256(serverSeed + randomSeed));

        var seed = CryptoJS.HmacSHA512(serverSeed, clientSeed).toString();

        var start = (seed.length / 2) - 4;
        seed = seed.substr(start, 8);
        seed = parseInt(seed, 16);

        var m = new MersenneTwister(seed);
        var n = parseInt(m.random() * 100);

        $('#result').text(n);
    }

    $('#calc').click(function () {
        rcalc();
    });

    $('#server, #client').change(function () {
        rcalc();
    });
});