田源
2025-01-09 d7e3c8a813f8f85c89c06782f1e36e8089ffc31b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import CryptoJS from 'crypto-js';
import AES from 'crypto-js/aes';
import enc from 'crypto-js/enc-utf8';
 
// 解密方法
export function Decrypt(word, keyStr, ivStr) {
  const key = CryptoJS.enc.Utf8.parse(keyStr);
  const iv = CryptoJS.enc.Utf8.parse(ivStr);
  const encryptedHexStr = CryptoJS.enc.Hex.parse(word);
  const srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr);
  const decrypt = AES.decrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
  const decryptedStr = decrypt.toString(enc.Utf8);
  return decryptedStr;
}
//加密 Vue 代码
// const plaintext = 'your plaintext';
// const key = 'your encryption key';
// const iv = 'your initialization vector';
 
// const encrypted = CryptoJS.AES.encrypt(plaintext, key, { iv: iv });
// const ciphertext = encrypted.toString();
// console.log('ciphertext',ciphertext)