nodejs aes 加解密实例


Posted in NodeJs onOctober 10, 2018

如下所示:

'use strict';
const crypto = require('crypto');

/**
 * AES加密的配置 
 * 1.密钥 
 * 2.偏移向量 
 * 3.算法模式CBC 
 * 4.补全值
 */
var AES_conf = {
  key: getSecretKey(), //密钥
  iv: '1012132405963708', //偏移向量
  padding: 'PKCS7Padding' //补全值
}

/**
 * 读取密钥key
 * 更具当前客户端的版本vid、平台platform获取对应的key
 */
function getSecretKey(){
  return "abcdabcdabcdabcd";
}

/**
 * AES_128_CBC 加密 
 * 128位 
 * return base64
 */
function encryption(data) {
  let key = AES_conf.key;
  let iv = AES_conf.iv;
  // let padding = AES_conf.padding;

  var cipherChunks = [];
  var cipher = crypto.createCipheriv('aes-128-cbc', key, iv);
  cipher.setAutoPadding(true);
  cipherChunks.push(cipher.update(data, 'utf8', 'base64'));
  cipherChunks.push(cipher.final('base64'));
  return cipherChunks.join('');
}


/**
 * 解密
 * return utf8
 */
function decryption(data){

  let key = AES_conf.key;
  let iv = AES_conf.iv;
  // let padding = AES_conf.padding;

  var cipherChunks = [];
  var decipher = crypto.createDecipheriv('aes-128-cbc', key, iv);
  decipher.setAutoPadding(true);
  cipherChunks.push(decipher.update(data, 'base64', 'utf8'));
  cipherChunks.push(decipher.final('utf8'));
  return cipherChunks.join('');
}


console.log(encryption('aaaaa4')); 
console.log(decryption('VuoXtyUolFyPrK50JnNUdw=='));

以上这篇nodejs aes 加解密实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
nodejs 实现模拟form表单上传文件
Jul 14 NodeJs
Nodejs异步回调的优雅处理方法
Sep 25 NodeJs
nodejs调用cmd命令实现复制目录
May 04 NodeJs
在windows上用nodejs搭建静态文件服务器的简单方法
Aug 11 NodeJs
详解nodejs 文本操作模块-fs模块(一)
Dec 22 NodeJs
初探nodeJS
Jan 24 NodeJs
nodejs结合socket.io实现websocket通信功能的方法
Jan 12 NodeJs
nodejs实现超简单生成二维码的方法
Mar 17 NodeJs
NodeJS加密解密及node-rsa加密解密用法详解
Oct 12 NodeJs
nodejs一个简单的文件服务器的创建方法
Sep 13 NodeJs
nodeJS与MySQL实现分页数据以及倒序数据
Jun 05 NodeJs
nodejs中的异步编程知识点详解
Jan 17 NodeJs
nodejs读取本地中文json文件出现乱码解决方法
Oct 10 #NodeJs
nodejs require js文件入口,在package.json中指定默认入口main方法
Oct 10 #NodeJs
nodejs更新package.json中的dependencies依赖到最新版本的方法
Oct 10 #NodeJs
nodejs中用npm初始化来创建package.json的实例讲解
Oct 10 #NodeJs
nodejs初始化init的示例代码
Oct 10 #NodeJs
webpack打包nodejs项目的方法
Sep 26 #NodeJs
Nodejs把接收图片base64格式保存为文件存储到服务器上
Sep 26 #NodeJs
You might like
PHP 压缩文件夹的类代码
2009/11/05 PHP
php比较多维数组中值的大小排序实现代码
2012/09/08 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
2020/03/27 PHP
javascript call和apply方法
2008/11/24 Javascript
js里的prototype使用示例
2010/11/19 Javascript
获取select元素被选中的文本内容的js代码
2014/01/29 Javascript
jquery中的常用事件bind、hover、toggle等示例介绍
2014/07/21 Javascript
Jquery幻灯片特效代码分享--鼠标点击按钮时切换(1)
2015/08/15 Javascript
Angularjs 动态改变title标题(兼容ios)
2016/12/29 Javascript
微信小程序 tabs选项卡效果的实现
2017/01/05 Javascript
node.js利用redis数据库缓存数据的方法
2017/03/01 Javascript
Angularjs2不同组件间的通信实例代码
2017/05/06 Javascript
js canvas实现简单的图像扩散效果
2020/06/28 Javascript
解决vue的变量在settimeout内部效果失效的问题
2018/08/30 Javascript
Iview Table组件中各种组件扩展的使用
2018/10/20 Javascript
深入解析ES6中的promise
2018/11/08 Javascript
JavaScript使用类似break机制中断forEach循环的方法
2018/11/13 Javascript
Vue.js自定义指令学习使用详解
2019/10/19 Javascript
下载糗事百科的内容_python版
2008/12/07 Python
Python 内置变量和函数的查看及说明介绍
2019/12/25 Python
django admin 添加自定义链接方式
2020/03/11 Python
Python 为什么推荐蛇形命名法原因浅析
2020/06/18 Python
加拿大领先的优质厨具产品在线购物网站:Golda’s Kitchen
2017/11/17 全球购物
Gtech官方网站:地毯清洁器、吸尘器及园艺设备
2018/05/23 全球购物
意大利奢侈品综合电商网站:MODES
2019/12/14 全球购物
物流仓储实习自我鉴定
2013/09/25 职场文书
毕业生医学检验求职信
2013/10/16 职场文书
社会实践自我鉴定
2013/11/07 职场文书
社区居务公开实施方案
2014/03/27 职场文书
公司节能减排方案
2014/05/16 职场文书
水污染治理工程专业求职信
2014/06/14 职场文书
党支部党的群众路线对照检查材料
2014/09/24 职场文书
新闻稿标题
2015/07/18 职场文书
值班管理制度范本
2015/08/06 职场文书
2016年第32个教师节致辞
2015/11/26 职场文书
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python