node通过crypto加密解密

MD5摘要算法

var crypto = require('crypto');
// 添加「utf-8」避免出现中文加密不致的情况 注:一个crypto实例只能调用一次
var md5Sign = function (data) {
    var md5 = crypto.createHash('md5').update(data, 'utf-8').digest('hex');
    return md5;
}

AES对称加密解密

const crypto = require('crypto');
//AES对称加密
var secretkey = 'password'; //唯一(公共)秘钥
function encrypt(a) {
  var content = a;
  var cipher = crypto.createCipher('aes192', secretkey); //使用aes192加密
  var enc = cipher.update(content, 'utf8', 'hex'); //编码方式从utf-8转为hex;
  return (enc += cipher.final('hex')); //编码方式转为hex;
}
// encrypt('花样百出');
function decrypt() {
  let enc = encrypt('花样百出');
  console.log(enc);
  //AES对称解密
  var decipher = crypto.createDecipher('aes192', secretkey);
  var dec = decipher.update(enc, 'hex', 'utf8');
  dec += decipher.final('utf8');
  console.log('AES对称解密结果:' + dec);
}
decrypt();

参考:《NodeJS开发教程14-Crypto加密与解密》

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值