import CryptoJS from "crypto-js"; // 导入setting import setting from "@/config/settings"; //十六位十六进制数作为密钥 const key = CryptoJS.enc.Utf8.parse(setting.aeskey); //十六位十六进制数作为密钥偏移量 const iv = CryptoJS.enc.Utf8.parse(setting.aesiv); /* 加密 */ export function Encrypt(word) { let srcs = CryptoJS.enc.Utf8.parse(word); let encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return encrypted.ciphertext.toString().toUpperCase(); } /* 解密 */ export function Decrypt(word) { let encryptedHexStr = CryptoJS.enc.Hex.parse(word); let srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr); let decrypt = CryptoJS.AES.decrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8); return decryptedStr.toString(); }