//引入crypto-js //const CryptoJS = require('crypto-js'); import CryptoJS from '@/utils/crypto-js.js'; // //十六位十六进制数作为密钥(秘钥为随机生成,必须与后端保持一致!) // const key = 'J4ny0Ja678Y7P2so'; // //十六位十六进制数作为密钥偏移量(秘钥为随机生成,必须与后端保持一致!) // const iv = 'pTNorfvZW2UZJbd0'; const key = CryptoJS.enc.Utf8.parse("J4ny0Ja678Y7P2so"); //十六位十六进制数作为密钥 const iv = CryptoJS.enc.Utf8.parse('pTNorfvZW2UZJbd0'); //十六位十六进制数作为密钥偏移量 //解密方法 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(); } //加密方法 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 {Decrypt , Encrypt}