vue项目中Des的加密解密
1、安装
npm install crypto-js --save-dev
也可以指定版本
npm install crypto-js@3.3.0 --save-dev
2、写js方法文件des.js
提供两种方式(加密结果有所不同)
方式一:
import cryptoJs from 'crypto-js'export const encryptDes = (message, key) => {let keyHex = cryptoJs.enc.Utf8.parse(key)let option = { mode: cryptoJs.mode.ECB, padding: cryptoJs.pad.Pkcs7 }let encrypted = cryptoJs.DES.encrypt(message, keyHex, option)return encrypted.ciphertext.toString()
}export const decryptDes = (message, key) => {let keyHex = cryptoJs.enc.Utf8.parse(key);let decrypted = cryptoJs.DES.decrypt({ciphertext: cryptoJs.enc.Hex.parse(message)},keyHex,{mode: cryptoJs.mode.ECB,padding: cryptoJs.pad.Pkcs7})return decrypted.toString(cryptoJs.enc.Utf8)
}
方式二:
import cryptoJs from 'crypto-js'export const encryptDes = (message, key) => {let keyHex = cryptoJs.enc.Utf8.parse(key);let encrypted = cryptoJs.DES.encrypt(message, keyHex, {mode: cryptoJs.mode.ECB,padding: cryptoJs.pad.Pkcs7,});return encrypted.toString();
}export const decryptDes = (message, key) => {let keyHex = cryptoJs.enc.Utf8.parse(key);let decrypted = cryptoJs.DES.decrypt({ciphertext: cryptoJs.enc.Base64.parse(message),},keyHex,{mode: cryptoJs.mode.ECB,padding: cryptoJs.pad.Pkcs7,});return decrypted.toString(cryptoJs.enc.Utf8);
}
3、引入。
在main.js中引入
import { encryptDes, decryptDes } from './utils/des'
Vue.prototype.encryptDes = encryptDes;
Vue.prototype.decryptDes = decryptDes;
4、使用
示例:
let obk = {ceshi:'ceshi1',a:'aa',b:'bb'
}
let key = 'ceshiKEY';
方式一使用结果:
//加密
let jiam = this.encryptDes(JSON.stringify(obk),key)
console.log(jiam)
//结果是:bb8d7d51ab6a47e0bff4a057181fb571472a8621281dd6c19673742c79d4e5a3f0aaabe9f77124e8
//解密
let jmJson= this.decryptDes(jiam,key);
console.log(jmJson)
//结果是(字符串):{"ceshi":"ceshi1","a":"aa","b":"bb"}
方式二结果:
//加密
let jiam = this.encryptDes(JSON.stringify(obk),key)
console.log(jiam)
//结果是:u419UatqR+C/9KBXGB+1cUcqhiEoHdbBlnN0LHnU5aPwqqvp93Ek6A==
//解密
let jmJson= this.decryptDes(jiam,key);
console.log(jmJson)
//结果是(字符串):{"ceshi":"ceshi1","a":"aa","b":"bb"}
注:
- 给对象等加密要先转成字符串;
- 方式一和方式二的加解密不能混用;
vue项目中Des的加密解密相关推荐
- vue rsa加密 php解密,Vue项目中的RSA加解密
一.安装jsencrypt 1 npm i jsencrypt node_modules文件夹中出现jsencrypt 二.引入jsencrypt 在main.js中import: 1 import ...
- Vue项目中的RSA加解密
前后端使用rsa加密: 一般是客户端初始化时访问登录服务时,服务端面动态生成一对RSA对,公钥传给客户端,客户端拿到后,用户输入密码后,点登录时用公钥加密返回给服务端,服务端用私钥解就行了 一.安装 ...
- 【土旦】vue项目中 使用 pako.js 解密 gzip加密字符串
前言 今天跟后台对接一个接口,接受到一个加密的值,说是通过gzip加密过的,然后就蒙蔽了, 赶紧上百度找了一下资料,通过一篇文章(原文在底部)发现有个js库可以解密,就下载轻松解密了 实现代码 pok ...
- 如何在vue项目中使用md5加密
npm安装: npm install --save js-md5 1.在需要使用的项目文件中引入: import md5 from 'js-md5'; 使用: md5('holle') // bce ...
- vue项目中加密和解密
Vue项目使用AES做加密 aes.js 文件内容如下: // test under node v6.11.1 const crypto = require("crypto"); ...
- vue.js中DES、RSA、SHA1、MD5这四种加密算法的使用
vue.js中DES.RSA.SHA1.MD5这四种加密算法的使用 DES RSA SHA1 MD5 DES 美国 数据加密标准(DES)是对称密码算法,就是加密密钥能够从解密密钥中推算出来,反过来也 ...
- 关于项目中数据库密码加密的使用
关于项目中数据库密码加密的使用 1 使用需求 2 使用步骤 1 准备一个SpringBoot项目环境 2 添加jasypt的jar包 3 创建一个测试类 4 修改配置文件 5 启动项目,访问忌口 6 ...
- vue项目中 五小一大六宫格拖拽排序,6宫格拖拽换位,矩阵拖拽排序
背景:项目中用到1.4.6.9.12.16宫格排序,拖拽换位等场景,项目是监控的视频矩阵,用户矩阵拖拽排序换位,之前已经实现1.4.9.12.16等矩阵式排列的拖拽排序,但是六宫格要求五小一大,之前的 ...
- vue项目中,兼容vue3.0 1.0 2.0 宫格拖拽排序,特殊五小一大六宫格拖拽
前端时间写了标准宫格拖拽排序的文章 1. 2.4.9.12等等标准宫格拖拽,基于vue-grid-layout 拖拽换位无刷新 vue项目中 基于vue-grid-layout开发的拖拽 ...
最新文章
- Go: 分布式学习利器(2)-- Go中的变量,常量 以及与其他语言变量之间的差异
- java akiba,Map集合的遍历(java)
- 2、异步HTTP编程
- python能不能用c打开文件_C/C++/Python等 使用二进制模式打开文件与不使用二进制模式的区别...
- 不修条地铁,都不好意思叫自己大城市
- 电子科大计算机2014级,电子科大-计算机-操作系统实验报告-2014级.docx
- python 员工考勤_用python写的考勤自动打卡程序
- 【转】Objective-C 属性特性(assign , retain , copy , readonly , readwrite , atomic , nonatomic)...
- Vue v-on v-model 组合使用
- VB 用zint 库生成PDF417及其他条码
- 软件测试结果分析和质量报告
- 独孤求败-小滴云架构大课十八式
- AR涂涂乐⭐八、(add)优化原代码“7”、正方形识别图改为矩形识别图、增加BGM和App 图标
- python如何压缩pdf_PDF怎么压缩?,懂得这些技巧就够了
- 十大宽带共享组网方式(转)
- Java NIO简介
- phpmyadmin 4.8.1 Remote File Inclusion Vulnerability (CVE-2018-12613)漏洞复现
- sv_labs学习笔记——sv_lab1(System Verilog)
- android 仿微信demo————微信消息界面实现(移动端)
- (五)R语言入门生物信息学——ORF和序列分析
热门文章
- Java遍历JsonObject对象
- 人工智能 | CIFAR10卷积神经网络实践
- 输出1900至2000年(包含1900年和2000年)间的所有闰年
- ajax如何隐藏请求参数,全面解析$.Ajax()方法参数(推荐)
- Windows Jenkins安装及配置
- 关乎谷歌浏览器打不开ftp的问题
- python3 爬虫相关学习7:使用 BeautifulSoup下载网页图片到本地文件夹
- Ubuntu离线安装Nvidia显卡驱动
- ubuntu16.04安装wechat
- 关于虚拟串口驱动专业版 Eltima Virtual Serial Port Driver Pro 注册原理