estoy tratando de portar el siguiente código php a javascript en Node.js:cifrado en nodejs
$mac = hash_hmac('SHA256', 'string', 'secret', true);
$coded = base64_encode($mac);
He intentado lo siguiente:
var Crypto = require('crypto');
var code = Crypto.util.bytesToBase64(Crypto.HMAC(Crypto.SHA256, 'string', 'secret', { asBytes: true }));
consigo el error:
TypeError: Object #Object has no method 'HMAC'
Soy nuevo en node.js, wh ¿Estoy haciendo algo mal?
Actualización:
var code = Crypto.createHmac('SHA256', secret_key).update(to_encode).digest('base64');
Gracias. Obtengo "Debe dar una cadena de tipo hash como argumento". – Alex
@Alex Disculpe, los documentos no son tan buenos, así que no pude entender qué es exactamente lo que quería. Espero que esto te lleve en la dirección correcta. – Tesserex
Crypto.SHA256 debe ser 'SHA256'. ¡Gracias! – Alex