Я пытаюсь порт следующий код PHP в JavaScript на Node.js:Шифрование в nodejs
$mac = hash_hmac('SHA256', 'string', 'secret', true);
$coded = base64_encode($mac);
Я попытался следующие:
var Crypto = require('crypto');
var code = Crypto.util.bytesToBase64(Crypto.HMAC(Crypto.SHA256, 'string', 'secret', { asBytes: true }));
Я получаю ошибка:
TypeError: Object #Object has no method 'HMAC'
Я новичок в node.js, wh я делаю неправильно?
Update:
var code = Crypto.createHmac('SHA256', secret_key).update(to_encode).digest('base64');
Спасибо. Я получаю «Должен указывать строку hashtype в качестве аргумента». – Alex
@Alex Извините, документы не так уж велики, поэтому я не мог понять, что именно он хотел. Надеюсь, это поможет вам в правильном направлении. – Tesserex
Crypto.SHA256 должен быть «SHA256». Благодаря! – Alex