Mushpup Crypto Upgrade
by klenwell
HTML
<script src="https://mushpup.googlecode.com/svn/trunk/js/external/paj/sha1.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/sha1.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/components/enc-base64-min.js"></script>
<link rel="stylesheet" href="//code.jquery.com/qunit/qunit-1.15.0.css">
<div id="qunit"></div>
<div id="qunit-fixture"></div>
<h5>See console for output</h5>
JavaScript
/*
* Mushpup Crypto Upgrade
* - https://mushpup.googlecode.com/svn/trunk/js/external/paj/sha1.js
* - https://code.google.com/p/crypto-js/#SHA-1
*/
var testStr = 'test';
var testHash = 'qUqP5cyxm6YcTAhz05Hph5gv';
function pajHash(str) {
return b64_sha1(str).substr(0,24);
}
function cryptoHash(str) {
return CryptoJS.SHA1(str).toString(CryptoJS.enc.Base64).substr(0,24);
}
function cryptoHashAlt(str) {
var hash = CryptoJS.SHA1(str);
return CryptoJS.enc.Base64.stringify(hash).substr(0,24);
}
QUnit.test( "pajHash", function( assert ) {
assert.equal( pajHash(testStr), testHash, pajHash(testStr) );
});
QUnit.test( "cryptoHash", function( assert ) {
assert.equal( cryptoHash(testStr), pajHash(testStr) );
assert.equal( cryptoHashAlt(testStr), cryptoHash(testStr) );
});