From 532702b6b8bf148f2ebdc59f54073e016df5e2ef Mon Sep 17 00:00:00 2001 From: Jiajun Chen Date: Sun, 21 Jun 2020 23:20:09 +0800 Subject: [PATCH] fix: length of the result buffer --- test/index.js | 4 +++- withPublic.js | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/test/index.js b/test/index.js index 85b32e3..3aa88fe 100644 --- a/test/index.js +++ b/test/index.js @@ -47,16 +47,18 @@ function _testIt (keys, message, t) { var pub = keys.public var priv = keys.private t.test(message.toString(), function (t) { - t.plan(8) + t.plan(10) var myEnc = myCrypto.publicEncrypt(pub, message) var nodeEnc = nodeCrypto.publicEncrypt(pub, message) + t.equals(myEnc.length, nodeEnc.length, 'my public encrypted length node public encrypted length') t.equals(myCrypto.privateDecrypt(priv, myEnc).toString('hex'), message.toString('hex'), 'my decrypter my message') t.equals(myCrypto.privateDecrypt(priv, nodeEnc).toString('hex'), message.toString('hex'), 'my decrypter node\'s message') t.equals(nodeCrypto.privateDecrypt(priv, myEnc).toString('hex'), message.toString('hex'), 'node decrypter my message') t.equals(nodeCrypto.privateDecrypt(priv, nodeEnc).toString('hex'), message.toString('hex'), 'node decrypter node\'s message') myEnc = myCrypto.privateEncrypt(priv, message) nodeEnc = nodeCrypto.privateEncrypt(priv, message) + t.equals(myEnc.length, nodeEnc.length, 'my public private length node private encrypted length') t.equals(myCrypto.publicDecrypt(pub, myEnc).toString('hex'), message.toString('hex'), 'reverse methods my decrypter my message') t.equals(myCrypto.publicDecrypt(pub, nodeEnc).toString('hex'), message.toString('hex'), 'reverse methods my decrypter node\'s message') t.equals(nodeCrypto.publicDecrypt(pub, myEnc).toString('hex'), message.toString('hex'), 'reverse methods node decrypter my message') diff --git a/withPublic.js b/withPublic.js index 417a1bf..b145f27 100644 --- a/withPublic.js +++ b/withPublic.js @@ -6,7 +6,7 @@ function withPublic (paddedMsg, key) { .toRed(BN.mont(key.modulus)) .redPow(new BN(key.publicExponent)) .fromRed() - .toArray()) + .toArray('be', key.modulus.byteLength())) } module.exports = withPublic