Left pad iv

This commit is contained in:
Andy Wang 2019-09-26 19:24:10 +01:00
parent cbb74037ad
commit b1edcffcc0
2 changed files with 12 additions and 0 deletions

View file

@ -84,6 +84,12 @@ Triple DES uses a key length of 24 bytes (192 bits).`);
const blockSize = decipher.mode.blockSize
var blockOutputs = forge.util.createBuffer();
var numBlocks = input.length % blockSize === 0 ? input.length >> 3 : (input.length >> 3) + 1
if (iv.length < blockSize) {
var ivLen = iv.length
for (var i=0; i < blockSize - ivLen; i++){
iv.unshift(0)
}
}
for (var i=0; i < numBlocks; i++) {
decipher.start({iv: iv})
decipher.update(forge.util.createBuffer().fillWithByte(0,blockSize))

View file

@ -83,6 +83,12 @@ Triple DES uses a key length of 24 bytes (192 bits).`);
const blockSize = cipher.mode.blockSize
var blockOutputs = forge.util.createBuffer();
var numBlocks = input.length % blockSize === 0 ? input.length >> 3 : (input.length >> 3) + 1
if (iv.length < blockSize) {
var ivLen = iv.length
for (var i=0; i < blockSize - ivLen; i++){
iv.unshift(0)
}
}
for (var i=0; i < numBlocks; i++) {
cipher.start({iv: iv})
cipher.update(forge.util.createBuffer().fillWithByte(0,blockSize))