¿No tiene node.js codificación base64 incorporada todavía?
La razón por la que pido es que final()
a partir crypto
pueden los datos sólo hexagonales de salida, ASCII o binarios. Por ejemplo:
var cipher = crypto.createCipheriv('des-ede3-cbc', encryption_key, iv);
var ciph = cipher.update(plaintext, 'utf8', 'hex');
ciph += cipher.final('hex');
var decipher = crypto.createDecipheriv('des-ede3-cbc', encryption_key, iv);
var txt = decipher.update(ciph, 'hex', 'utf8');
txt += decipher.final('utf8');
Según los documentos, update()
puede generar datos codificados en base64. Sin embargo, final()
no es compatible con base64. Lo intenté y se romperá.
Si hago esto:
var ciph = cipher.update(plaintext, 'utf8', 'base64');
ciph += cipher.final('hex');
Entonces, ¿qué debo usar para descifrar? Hex o base64?
Por lo tanto, estoy buscando una función para codificar en base64 mi salida hexadecimal cifrada.
cipher.final('base64')
funciona