diff options
author | Nils Kenneweg <nk@ovt.me> | 2015-02-10 20:22:28 +0100 |
---|---|---|
committer | Nils Kenneweg <nk@ovt.me> | 2015-02-10 20:22:28 +0100 |
commit | a5d189cf36ce61e5e46f45d9c22c165362269bb5 (patch) | |
tree | 260c34089f6708e4112c3e9de9f4307ba96b2142 /core/ccmArrayBuffer.js | |
parent | c11cb7d29700665a654d5e509aaa8170b3e7774b (diff) | |
download | sjcl-a5d189cf36ce61e5e46f45d9c22c165362269bb5.zip sjcl-a5d189cf36ce61e5e46f45d9c22c165362269bb5.tar.gz sjcl-a5d189cf36ce61e5e46f45d9c22c165362269bb5.tar.bz2 |
progress for arraybuffer ccm.
Diffstat (limited to 'core/ccmArrayBuffer.js')
-rw-r--r-- | core/ccmArrayBuffer.js | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/core/ccmArrayBuffer.js b/core/ccmArrayBuffer.js index 66a17c5..a7b44b0 100644 --- a/core/ccmArrayBuffer.js +++ b/core/ccmArrayBuffer.js @@ -200,7 +200,7 @@ sjcl.arrayBuffer.ccm = { * @private */ _ctrMode: function(prf, data_buffer, iv, mac, tlen, L){ - var data, ctr, word0, word1, word2, word3, keyblock, i, w = sjcl.bitArray, xor = w._xor4; + var data, ctr, word0, word1, word2, word3, keyblock, i, w = sjcl.bitArray, xor = w._xor4, n = data_buffer.byteLength/50, p = n; ctr = new DataView(new ArrayBuffer(16)); //create the first block for the counter @@ -219,6 +219,10 @@ sjcl.arrayBuffer.ccm = { data = new DataView(data_buffer); //now lets encrypt the message for (i=0; i<data.byteLength;i+=16){ + if (i > n) { + sjcl.mode.ccm._callProgressListener(i/data_buffer.byteLength); + n += p; + } keyblock = prf.encrypt(ctr); word0 = data.getUint32(i); |