UNPKG

dojox

Version:

Dojo eXtensions, a rollup of many useful sub-projects and varying states of maturity – from very stable and robust, to alpha and experimental. See individual projects contain README files for details.

43 lines (37 loc) 1.55 kB
define(['doh', '../../digests/_base', '../../digests/SHA384', "../../digests/_sha-64"], function(doh, ded, SHA384, sha64){ var message="abc"; var vector = [ 0xcb00753f, 0x45a35e8b, 0xb5a03d69, 0x9ac65007, 0x272c32ab, 0x0eded163, 0x1a8b605a, 0x43ff5bed, 0x8086072b, 0xa1e7cc23, 0x58baeca1, 0x34c825a7 ]; var base64="ywB1P0WjXou1oD1pmsZQBycsMqsO3tFjGotgWkP/W+2AhgcroefMI1i67KE0yCWn"; var hex="cb00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7"; var hmacKey="Jefe"; var hmacData="what do ya want for nothing?"; var hmacHex="af45d2e376484031617f78d2b58a6b1b9c7ef464f5a01b47e42ec3736322445e8e2240ca5e69e2c78b3239ecfab21649"; console.log("Vector:", vector.map(function(item){ return ((item >> 16) & 0xffff).toString(16) + (item & 0xffff).toString(16); })); console.log(sha64.toHex(vector)); console.log(sha64.toBase64(vector)); console.log(sha64.toWord(message)); var test = SHA384(message, ded.outputTypes.Raw); console.log("Message: ", test.map(function(item){ return ((item >> 16) & 0xffff).toString(16) + (item & 0xffff).toString(16); })); console.log(sha64.toHex(test)); console.log(sha64.toBase64(test)); doh.register("dojox.encoding.tests.digests.SHA384", [ function testBase64Compute(t){ t.assertEqual(base64, SHA384(message)); }, function testHexCompute(t){ t.assertEqual(hex, SHA384(message, ded.outputTypes.Hex)); }, function testHmacCompute(t){ t.assertEqual(hmacHex, SHA384.hmac(hmacData, hmacKey, ded.outputTypes.Hex)); } ]); });