编写了一个node的加密解密demo,遇到编码问题,关于加密与解密分别使用的是createCipheriv与createDecipheriv方法
node版本
$ node -v
v8.11.3
代码编辑使用的Sublime Text 3 编码为 UTF-8
终端编码格式为 UTF-8
相关代码
let crypto = require('crypto');
let algorithm = 'aes-128-cbc';
let key = '9cd5b4cf89949207';
let iv = 'e6db271db12d4d47';
let data = 'hello world';
// 输入编码
let inputEncoding = 'utf8';
// 输出编码
let outputEncoding = 'hex';
let cipher = (algorithm, key, iv, data, callback) => {
let cip = crypto.createCipheriv(algorithm, key, iv);
let ciphertext = cip.update(data, inputEncoding, outputEncoding) + cip.final(outputEncoding);
callback(ciphertext);
};
let decipher = (algorithm, key, iv, ciphertext,