现在,我正在开发从Node.js到Python 3.6的hmac 512迁移。两个代码产生不同的结果。 Node.js结果正确。目标是产生Python 3.6代码。我该在哪里解决该问题?
((1)Node.js
var crypto = require('crypto');
var data = {
'request' : '/api/v1/account/balances',
'nonce' : 1589963590749
};
secret = "SECRET";
data = JSON.stringify(data);
payload = Buffer.from(data).toString('base64');
signature = crypto.createHmac('sha512', secret).update(payload).digest('hex');
console.log(signature);
“” 94e40c0ad3d14746e7a15c31d3b4f8e4060d4cec81cbc529bce2ae02a45bf2b0b8ed3ad0a7842b6b3d26fe9bec045a3cedc8b546bb1c4a921416f03ed98815fb“]
((2)Python3.6
import hmac, hashlib, json, base64
data = {
'request': '/api/v1/account/balances',
'nonce' : 1589963590749
}
secret = "SECRET"
data = json.dumps(data)
payload = base64.b64encode(data.encode())
secret = secret.encode()
signature = hmac.new(secret, payload, hashlib.sha512).hexdigest()
print(signature)
“ 9aaa9f01dd2ab21bfc46bb1e369748afc5f638fa157578078472219b9bc615f4796d7a9502efcf7c4fdc5208a52470c5b850257d0c36050c9b2650d277fa8f8c”]
现在,我正在开发从Node.js到Python 3.6的hmac 512迁移。两个代码产生不同的结果。 Node.js结果正确。目标是产生Python 3.6代码。我应该在哪里做某事...
您可以逐步找到问题: