新建文件 AES.ts
import CryptoJS from "crypto-js";
const secretKey = ""; // 确保使用安全的密钥32字节(256位)
const iv = CryptoJS.enc.Utf8.parse(""); // 固定IV
export const encrypt = (data:any) => {
let key = CryptoJS.enc.Base64.parse(secretKey);
let srcs = CryptoJS.enc.Utf8.parse(JSON.stringify(data));
let encrypted = CryptoJS.AES.encrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7,
});
return encrypted.toString(); // 只返回密文
};
export const decrypt = (data:any) => {
let key = CryptoJS.enc.Base64.parse(secretKey);
const decrypted = CryptoJS.AES.decrypt(data, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7,
});
return decrypted.toString(CryptoJS.enc.Utf8);
};
import { encrypt, decrypt } from '@/utils/AES'
let jiami = encrypt({
"fendian_id": 3233334,
"db": "mssql222",
"function": "app_get_weixin_message111"
})
console.log(jiami, '加密')
let jiemi = decrypt(jiami)
console.log(jiemi, '解密')