Javascript 使用Node.JS加密/解密消息的正确方法?

Javascript 使用Node.JS加密/解密消息的正确方法?,javascript,node.js,encryption,aes,Javascript,Node.js,Encryption,Aes,我用它来加密一条消息: const CIPHER_ALGORITHM = 'aes256'; var cipherMessage = function(data, key) { try { var cipher = crypto.createCipher(CIPHER_ALGORITHM, key); var cipheredData = cipher.update(data, "binary", "hex"); cipheredData += ciph

我用它来加密一条消息:

const CIPHER_ALGORITHM = 'aes256';

var cipherMessage = function(data, key) {
  try {
    var cipher       = crypto.createCipher(CIPHER_ALGORITHM, key);
    var cipheredData = cipher.update(data, "binary", "hex");
    cipheredData += cipher.final("hex");
    return cipheredData;
  } catch(e) {
    return null;
  }
}
var decipherMessage = function(msg, key) {
  var ret = {};

  try {
    var decipher = crypto.createDecipher(CIPHER_ALGORITHM, key);
    var decipheredMessage = decipher.update(msg, 'hex', 'binary');
    decipheredMessage += decipher.final("binary");
    ret = JSON.parse(decipheredMessage);
  } catch(e) {
    return null;
  }

  return ret;
}
这是为了解开一条信息:

const CIPHER_ALGORITHM = 'aes256';

var cipherMessage = function(data, key) {
  try {
    var cipher       = crypto.createCipher(CIPHER_ALGORITHM, key);
    var cipheredData = cipher.update(data, "binary", "hex");
    cipheredData += cipher.final("hex");
    return cipheredData;
  } catch(e) {
    return null;
  }
}
var decipherMessage = function(msg, key) {
  var ret = {};

  try {
    var decipher = crypto.createDecipher(CIPHER_ALGORITHM, key);
    var decipheredMessage = decipher.update(msg, 'hex', 'binary');
    decipheredMessage += decipher.final("binary");
    ret = JSON.parse(decipheredMessage);
  } catch(e) {
    return null;
  }

  return ret;
}
我必须每秒给他们打多次电话,这样做对吗?
是否存在内存泄漏的可能性?

内存泄漏?如果不在容器中留下任何引用,请尝试codereview.stackexchange.com。请注意,您可能希望在发布之前指出您的用例和威胁模型。没有这些,它只是两段代码。