介绍
安全问题问题是一套程序中不可缺少的一部分,今天给大家分享个人最近使用的2款加密算法
安装依赖
cnpm install crypto-js --save-dev
使用
(1):创建文件来封装一下加解密函数方便后期全局使用
import CryptoJS from "crypto-js"; //引入依赖
const key = CryptoJS.enc.Utf8.parse("xxxx"); //十六位十六进制数作为密钥
const iv = CryptoJS.enc.Utf8.parse('xxxxx'); //十六位十六进制数作为密钥偏移量
export function Encrypt(word) { //加密 入参:JSON字符串
let srcs = CryptoJS.enc.Utf8.parse(word);
var encrypted = CryptoJS.AES.encrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
//注意这里的Pkcs7格式,这里是有其他格式的具体还是看后台使用的是什么格式
//如果格式和后端不一致,加密后的内容会和后端不一致
});
return encrypted.toString();
}
export function Decrypt(word) { //解密
var decrypt = CryptoJS.AES.decrypt(word, key, {
iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
//注意这里的Pkcs7格式,这里是有其他格式的具体还是看后台使用的是什么格式
//如果格式和后端不一致,解密出来无法转成JSON格式或者根本解不出来
});
return decrypt.toString(CryptoJS.enc.Utf8);
}
(2):引用封装好的js
import {Encrypt,Decrypt} from "xxxxx";
let query = {name:"liingot"}
Encrypt(JSON.stringify(query)) //加密
Decrypt(xxxxxx) //解密
2307

被折叠的 条评论
为什么被折叠?



