w-vue-middle
Version:
统一公共服务组件
32 lines (29 loc) • 968 B
JavaScript
/*
* @Author: Jason Liu
* @Date: 2023-06-29 15:17:09
* @Desc:
*/
import CryptoJS from 'crypto-js'
let keyStr = "Yv+A7casjhgCl9wzpb9AHzH/N1s7faCb"
let ivString = "5e8y6w45ju8w9jq8"
/**
* @Author: Jason Liu
* @description: AES加密
*/
export function encrypt(word) {
var key = CryptoJS.enc.Utf8.parse(keyStr); //Latin1 w8m31+Yy/Nw6thPsMpO5fg==
var srcs = CryptoJS.enc.Utf8.parse(word);
var iv = CryptoJS.enc.Utf8.parse(ivString);
var encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
return encrypted.toString();
}
/**
* @Author: Jason Liu
* @description: AES解密
*/
export function decrypt(word) {
var key = CryptoJS.enc.Utf8.parse(keyStr);
var iv = CryptoJS.enc.Utf8.parse(ivString);
var decrypt = CryptoJS.AES.decrypt(word, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
return CryptoJS.enc.Utf8.stringify(decrypt).toString();
}