在Vue项目中使用jsencrypt.js对数据进行加密传输的方法


Posted in Javascript onApril 17, 2019

项目需求中需要对用户登录时的密码进行加密,在网上查询些许文章后,最终与后端协商使用jsencrypt.js。

jsencrypt.js的github地址: https://github.com/travist/js...

使用yarn安装至Vue项目

yarn add jsencrypt --dep

或者使用npm

npm install jsencrypt --dep

引入jsencrypt

import { JSEncrypt } from 'jsencrypt'

可封装为全局混合,便于调用

公钥为后端提供,如前端需要解密数据,则需要后端提供私钥。此处只封装了加密。

methods: {
 // 加密
 encryptedData(publicKey, data) {
  // 新建JSEncrypt对象
  let encryptor = new JSEncrypt();
  // 设置公钥
  encryptor.setPublicKey(publicKey);
  // 加密数据
  return encryptor.encrypt(data);
 }
 }

调用函数加密,此处的公钥是我从后端那获取的,然后加密密码

encryptedPassword = this.encryptedData(publicKey, password);

即完成加密。

更多使用可查阅官方文档 http://travistidwell.com/jsen...

PS:下面看下jsencrypt 配置对密码进行加密(vue)

安装

npm i node-jsencrypt

在script下导入

// 引入加密模块,对密码进行处理
const JSEncrypt = require('jsencrypt');

引用

一般情况下,后台会给一个获取公钥的接口来进行转换

methods: {
  init() {
   // 发送请求,获取公钥
   getKey().then(res => {
    this.gongKey = res.data.data; // 获取到公钥
    // 传入所请求回来的公钥,对密码进行处理
    // 实例化加密对象
    var crypt = new JSEncrypt.JSEncrypt({
     default_key_size: 1024
    });
    crypt.setPublicKey(this.gongKey);
    // 拿到加密明文
    let passWord = crypt.encrypt(obj.value);
   });
  }
 }

总结

以上所述是小编给大家介绍的在Vue项目中使用jsencrypt.js对数据进行加密传输的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
在次封装easyui-Dialog插件实现代码
Nov 14 Javascript
JS小功能(checkbox实现全选和全取消)实例代码
Nov 28 Javascript
chrome不支持form.submit的解决方案
Apr 28 Javascript
浅谈javascript中return语句
Jul 15 Javascript
js钢琴按钮波浪式图片排列效果代码分享
Aug 26 Javascript
html5 canvas 详细使用教程
Jan 20 Javascript
js实现3D图片环展示效果
Mar 09 Javascript
JS正则替换去空格的方法
Mar 24 Javascript
Angular中ng-bind和ng-model的区别实例详解
Apr 10 Javascript
vue-cli webpack 开发环境跨域详解
May 18 Javascript
浅谈vue方法内的方法使用this的问题
Sep 15 Javascript
Nuxt升级2.0.0时出现的问题(小结)
Oct 08 Javascript
js的继承方法小结(prototype、call、apply)(推荐)
Apr 17 #Javascript
详解JavaScript的内存空间、赋值和深浅拷贝
Apr 17 #Javascript
Vue源码探究之虚拟节点的实现
Apr 17 #Javascript
ES6知识点整理之数组解构和字符串解构的应用示例
Apr 17 #Javascript
ES6知识点整理之对象解构赋值应用示例
Apr 17 #Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
Apr 17 #Javascript
仿vue-cli搭建属于自己的脚手架的方法步骤
Apr 17 #Javascript
You might like
自己做矿石收音机
2021/03/02 无线电
PHP小程序自动提交到自助友情连接
2009/11/24 PHP
发款php蜘蛛统计插件只要有mysql就可用
2010/10/12 PHP
更改localhost为其他名字的方法
2014/02/10 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
PHP设计模式之迭代器模式
2016/06/17 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
js计数器代码
2006/11/04 Javascript
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
2010/11/25 Javascript
javascript使用window.open提示“已经计划系统关机”的原因
2014/08/15 Javascript
Egret引擎开发指南之视觉编程
2014/09/03 Javascript
常见的jQuery选择器汇总
2014/11/24 Javascript
深入分析jQuery的ready函数是如何工作的(工作原理)
2015/12/17 Javascript
jQuery抛物线运动实现方法(附完整demo源码下载)
2016/01/08 Javascript
很酷的星级评分系统原生JS实现
2016/08/25 Javascript
Vue学习笔记进阶篇之vue-cli安装及介绍
2017/07/18 Javascript
JS中Map和ForEach的区别
2018/02/05 Javascript
JavaScript求一组数的最小公倍数和最大公约数常用算法详解【面向对象,回归迭代和循环】
2018/05/07 Javascript
OpenLayers实现图层切换控件
2020/09/25 Javascript
vue中重定向redirect:‘/index‘,不显示问题、跳转出错的完美解决
2020/09/28 Javascript
Python 加密的实例详解
2017/10/09 Python
python 文本单词提取和词频统计的实例
2018/12/22 Python
python读取目录下最新的文件夹方法
2018/12/24 Python
Python字典的概念及常见应用实例详解
2019/10/30 Python
python pyenv多版本管理工具的使用
2019/12/23 Python
python3 sorted 如何实现自定义排序标准
2020/03/12 Python
numpy实现RNN原理实现
2021/03/02 Python
酒店司机岗位职责
2013/12/14 职场文书
食堂员工工作职责
2013/12/18 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
2015年新学期寄语
2015/02/26 职场文书
2015年健康教育工作总结
2015/04/10 职场文书
2015年端午节活动方案
2015/05/05 职场文书
学会掌握自己命运的十条黄金法则:
2019/08/08 职场文书
python实现简单的名片管理系统
2021/04/26 Python
elasticSearch-api的具体操作步骤讲解
2021/06/28 Java/Android