From e3980e0d13bf0ec656dbb7a1da846ae9ba490e76 Mon Sep 17 00:00:00 2001 From: Zane Yao Date: Sun, 10 Jan 2021 17:16:42 +0800 Subject: [PATCH 1/2] crypto.createDecipher -> crypto.createDecipheriv --- lib/Payment.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Payment.js b/lib/Payment.js index feb2ca0..f1a3e39 100644 --- a/lib/Payment.js +++ b/lib/Payment.js @@ -723,7 +723,7 @@ class Payment { const md5Key = utils.genMD5(this.getAPISignKey()); data = utils.createBufferFromBase64(data.req_info); let decoded; - const decipher = crypto.createDecipher('aes-256-ecb', md5Key); + const decipher = crypto.createDecipheriv('aes-256-ecb', md5Key, Buffer.alloc(0)); decipher.setAutoPadding(true); decoded = decipher.update(data, 'binary', 'utf8'); decoded += decipher.final('utf8'); From 2f879c7f2a7e56627dd7b6213602849692176420 Mon Sep 17 00:00:00 2001 From: Zane Yao Date: Sun, 10 Jan 2021 17:19:00 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E8=A7=A3=E5=AF=86=E5=90=8E=E7=9A=84XML?= =?UTF-8?q?=E9=9C=80=E8=BD=AC=E6=8D=A2=E4=B8=BAobject?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/Payment.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/Payment.js b/lib/Payment.js index f1a3e39..5a3fb93 100644 --- a/lib/Payment.js +++ b/lib/Payment.js @@ -727,10 +727,11 @@ class Payment { decipher.setAutoPadding(true); decoded = decipher.update(data, 'binary', 'utf8'); decoded += decipher.final('utf8'); - const ret = JSON.parse(decoded); - return Promise.resolve({ - parsedXMLData: originalData, - decryptedData: ret, + return utils.parseXML(decoded).then(ret =>{ + return Promise.resolve({ + parsedXMLData: originalData, + decryptedData: ret, + }); }); }); }