browserify-des
Advanced tools
Comparing version 1.0.1 to 1.0.2
11
index.js
var CipherBase = require('cipher-base') | ||
var des = require('des.js') | ||
var inherits = require('inherits') | ||
var Buffer = require('safe-buffer').Buffer | ||
@@ -28,2 +29,5 @@ var modes = { | ||
var key = opts.key | ||
if (!Buffer.isBuffer(key)) { | ||
key = Buffer.from(key) | ||
} | ||
if (modeName === 'des-ede' || modeName === 'des-ede-cbc') { | ||
@@ -33,2 +37,5 @@ key = Buffer.concat([key, key.slice(0, 8)]) | ||
var iv = opts.iv | ||
if (!Buffer.isBuffer(iv)) { | ||
iv = Buffer.from(iv) | ||
} | ||
this._des = mode.create({ | ||
@@ -41,6 +48,6 @@ key: key, | ||
DES.prototype._update = function (data) { | ||
return new Buffer(this._des.update(data)) | ||
return Buffer.from(this._des.update(data)) | ||
} | ||
DES.prototype._final = function () { | ||
return new Buffer(this._des.final()) | ||
return Buffer.from(this._des.final()) | ||
} |
{ | ||
"name": "browserify-des", | ||
"version": "1.0.1", | ||
"version": "1.0.2", | ||
"description": "", | ||
@@ -22,3 +22,4 @@ "main": "index.js", | ||
"des.js": "^1.0.0", | ||
"inherits": "^2.0.1" | ||
"inherits": "^2.0.1", | ||
"safe-buffer": "^5.1.2" | ||
}, | ||
@@ -25,0 +26,0 @@ "devDependencies": { |
33
test.js
@@ -46,4 +46,37 @@ var test = require('tape') | ||
}) | ||
t.test('run text: ' + i, function (t) { | ||
t.plan(2) | ||
var key = crypto.randomBytes(32).toString('base64').slice(0, modes[mode].key) | ||
var iv = crypto.randomBytes(32).toString('base64').slice(0, modes[mode].iv) | ||
var text = crypto.randomBytes(200) | ||
var ourEncrypt | ||
try { | ||
ourEncrypt = new DES({ | ||
mode: mode, | ||
key: key, | ||
iv: iv | ||
}) | ||
} catch (e) { | ||
t.notOk(e, e.stack) | ||
} | ||
var nodeEncrypt | ||
try { | ||
nodeEncrypt = crypto.createCipheriv(mode, key, iv) | ||
} catch (e) { | ||
t.notOk(e, e.stack) | ||
} | ||
var ourCipherText = Buffer.concat([ourEncrypt.update(text), ourEncrypt.final()]) | ||
var nodeCipherText = Buffer.concat([nodeEncrypt.update(text), nodeEncrypt.final()]) | ||
t.equals(nodeCipherText.toString('hex'), ourCipherText.toString('hex')) | ||
var ourDecrypt = new DES({ | ||
mode: mode, | ||
key: key, | ||
iv: iv, | ||
decrypt: true | ||
}) | ||
var plainText = Buffer.concat([ourDecrypt.update(ourCipherText), ourDecrypt.final()]) | ||
t.equals(text.toString('hex'), plainText.toString('hex')) | ||
}) | ||
} | ||
}) | ||
}) |
Sorry, the diff of this file is not supported yet
6267
153
4
+ Addedsafe-buffer@^5.1.2