*AES加密解密在线网站 http://www.ip33.com/crypto/aes.html
uniapp实现AES加密解密(纯前端)-方法
一、页面中引入、调用
import tools from "../../static/js/tools.js";//tools.js的位置
//加密
let datajAes = tools.setAES('69703333'); // 4be4af2aa167c4bb6c07d5a7c8eae3ec
//解密
let dataresultAes = tools.decryptAES("4be4af2aa167c4bb6c07d5a7c8eae3ec"); // 69703333
二、AES 加密、解密
1、安装 crypto-js
// 如果npm无法安装,可以尝试 cnpm
npm i crypto-js -S
2、一般封装使用 tools.js
import CryptoJS from "crypto-js";
// import CryptoJS from "../../node_modules/crypto-js/crypto-js.js";//一般npm以后都是这个位置
let KEY = '自己的key'
let IV = '';//我感觉可以不写,反正我没有写(看你们需求)
let tools = {
/*aes加密*/
setAES(str) {
const data = CryptoJS.enc.Hex.parse(str);
const key = CryptoJS.enc.Hex.parse(KEY);
const iv = CryptoJS.enc.Hex.parse(IV);
var option = {
iv: iv,
mode: CryptoJS.mode['CBC'],//看需求变“CBC”
padding: CryptoJS.pad['ZeroPadding']//看需求变“ZeroPadding”
};
var encrypted = CryptoJS.AES.encrypt(data, key, option);
const words = encrypted.ciphertext;
var hex = CryptoJS.enc.Hex.stringify(words);
return hex
},
/*aes解密*/
decryptAES(str) {
console.log("str", str)
let data = CryptoJS.enc.Hex.parse(str);
const key = CryptoJS.enc.Hex.parse(KEY);
const iv = CryptoJS.enc.Hex.parse(IV);
var option = {
iv: iv,
mode: CryptoJS.mode['CBC'],//看需求变“CBC”
padding: CryptoJS.pad['ZeroPadding']//看需求变“ZeroPadding”
};
data = CryptoJS.enc.Base64.stringify(data);
const words = CryptoJS.AES.decrypt(data, key, option);
var hex = CryptoJS.enc.Hex.stringify(words);
return hex
}
};
export default tools;
有用就点个赞。,白嫖不灵的
*如果没用可以参考 https://blog.csdn.net/tjcjava/article/details/115708067
我是看着然后二改的