CryptoJS PBKDF2
generating key using pbkdf2
by artjomb
HTML
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/pbkdf2.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/components/enc-base64-min.js"></script>
<dl>
<dt>Password</dt>
<dd><input type="text" name="password"/></dd>
<dt>Salt (Base64)</dt>
<dd id="salt"></dd>
<dt>Iterations</dt>
<dd id="iter"></dd>
<dt>Output size (bits)</dt>
<dd id="outsize"></dd>
<dt>Hash-function</dt>
<dd id="hasher"></dd>
<dt>Output (Base64)</dt>
<dd id="out"></dd>
</dl>
<button>Run</button>
JavaScript
$("button").click(function(){
var password = $("[name='password']").val();
var iterations = 500;
var keySize = 256;
var salt = CryptoJS.lib.WordArray.random(128/8);
$("#salt").html(salt.toString(CryptoJS.enc.Base64));
$("#iter").html(iterations);
$("#outsize").html(keySize);
var output = CryptoJS.PBKDF2(password, salt, {
keySize: keySize/32,
iterations: iterations
});
$("#hasher").html("SHA1");
$("#out").html(output.toString(CryptoJS.enc.Base64));
});