sha256簽名加密后輸出base64編碼:JS:
const crypto = require('crypto');
var sign = crypto.createHmac('sha256',secretKey).update('1234567890').digest('base64');
return sign //輸出gillOqwrSirL5cH4kiL7px1hSJ5tog/NfiY5J8T/Xq0=
python:
import hmac
mac = hmac.new(bytes(secretKey, encoding='utf8'), bytes('1234567890', encoding='utf-8'), digestmod='sha256')
d = mac.digest()
return base64.b64encode(d)//輸出9c1+B5qU/NXET8TuNIR0Yh92mIowEy20W44p7IHNpE=
同樣是sha256加密,兩個(gè)程序用來(lái)簽名的secretKey相同的,為什么輸出的加密結(jié)果不同?
1 回答

阿波羅的戰(zhàn)車
TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊
是一樣的。 測(cè)試結(jié)果
你確定使用的secretKey
是相同的字符串嗎?比如換行符、空格都會(huì)影響
我測(cè)試過(guò)nodeV0.12.0和nodeV8.11.1結(jié)果一致。 python為3.7
添加回答
舉報(bào)
0/150
提交
取消