diff --git a/src/NodeRSA.js b/src/NodeRSA.js index a56d559..2b0cfb4 100644 --- a/src/NodeRSA.js +++ b/src/NodeRSA.js @@ -45,9 +45,9 @@ module.exports = (function() { */ NodeRSA.prototype.generateKeyPair = function(bits, exp) { bits = bits || 2048; - exp = 65537; + exp = exp || 65537; - if (bits % 8 != 0) { + if (bits % 8 !== 0) { throw Error('Key size must be a multiple of 8.'); } diff --git a/test/tests.js b/test/tests.js index d5de3d3..1e618e2 100644 --- a/test/tests.js +++ b/test/tests.js @@ -60,9 +60,17 @@ describe("NodeRSA", function(){ describe("Generating keys", function() { for (var size in keySizes) { (function(size){ - it("should make key pair " + size.b + "-bit length and public exponent is " + (size.e || 65537), function () { + it("should make key pair " + size.b + "-bit length and public exponent is " + size.e, function () { generatedKeys.push(new NodeRSA({b: size.b, e: size.e})); assert.instanceOf(generatedKeys[generatedKeys.length - 1].keyPair, Object); + + if (size.e != null && size.e != undefined) + { + assert.equal(generatedKeys[generatedKeys.length - 1].keyPair.e, size.e); + } else { + assert.equal(generatedKeys[generatedKeys.length - 1].keyPair.e, 65537); + } + assert.equal(generatedKeys[generatedKeys.length - 1].getKeySize(), size.b); assert.equal(generatedKeys[generatedKeys.length - 1].getMaxMessageSize(), (size.b / 8 - 11)); });