blockbufs2buf
This commit is contained in:
parent
ae319ffcbc
commit
dfa190b5a5
|
@ -27,6 +27,18 @@ CBC.buf2blockbufs = function(buf, blocksize) {
|
||||||
return blockbufs;
|
return blockbufs;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CBC.blockbufs2buf = function(blockbufs, blocksize) {
|
||||||
|
var bytesize = blocksize / 8;
|
||||||
|
|
||||||
|
var last = blockbufs[blockbufs.length - 1];
|
||||||
|
last = CBC.pkcs7unpad(last);
|
||||||
|
blockbufs[blockbufs.length - 1] = last;
|
||||||
|
|
||||||
|
var buf = Buffer.concat(blockbufs);
|
||||||
|
|
||||||
|
return buf;
|
||||||
|
};
|
||||||
|
|
||||||
CBC.encrypt = function(messagebuf, ivbuf, blockcipher, cipherkeybuf) {
|
CBC.encrypt = function(messagebuf, ivbuf, blockcipher, cipherkeybuf) {
|
||||||
var blocksize = ivbuf.length * 8;
|
var blocksize = ivbuf.length * 8;
|
||||||
var blockbufs = CBC.buf2blockbufs(messagebuf, blocksize);
|
var blockbufs = CBC.buf2blockbufs(messagebuf, blocksize);
|
||||||
|
|
|
@ -34,6 +34,26 @@ describe('CBC', function() {
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('@buf2blockbufs', function() {
|
||||||
|
|
||||||
|
it('should convert this buffer into one block and back into the same buffer', function() {
|
||||||
|
var buf = new Buffer(16 - 1);
|
||||||
|
buf.fill(0);
|
||||||
|
var blockbufs = CBC.buf2blockbufs(buf, 16 * 8);
|
||||||
|
var buf2 = CBC.blockbufs2buf(blockbufs, 16 * 8);
|
||||||
|
buf2.toString('hex').should.equal(buf.toString('hex'));
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should convert this buffer into two blocks and back into the same buffer', function() {
|
||||||
|
var buf = new Buffer(16);
|
||||||
|
buf.fill(0);
|
||||||
|
var blockbufs = CBC.buf2blockbufs(buf, 16 * 8);
|
||||||
|
var buf2 = CBC.blockbufs2buf(blockbufs, 16 * 8);
|
||||||
|
buf2.toString('hex').should.equal(buf.toString('hex'));
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
describe('@encrypt', function() {
|
describe('@encrypt', function() {
|
||||||
|
|
||||||
it('should return this known value', function() {
|
it('should return this known value', function() {
|
||||||
|
|
Loading…
Reference in New Issue