guoshipeng
2023-08-18 f4dec5e5b3a400a6c0fe8cc7fade6b6a01621bfa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import CryptoJS from 'crypto-js'
// ����
export function Encrypt(word) {
  let key = 'AD42F7787B035B7580000EF93BE20BAD'
  let iv = 'AD42F7787B035B75'
 
  key = CryptoJS.enc.Utf8.parse(key)
  iv = CryptoJS.enc.Utf8.parse(iv)
 
  const srcs = CryptoJS.enc.Utf8.parse(word)
  // ����ģʽΪCBC�����뷽ʽΪPKCS5Padding��Ҳ����PKCS7��
  const encrypted = CryptoJS.AES.encrypt(srcs, key, {
    iv: iv,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7
  })
 
  // ����base64
  return CryptoJS.enc.Base64.stringify(encrypted.ciphertext)
}
// ����
export function Decrypt(word) {
  let key = 'AD42F7787B035B7580000EF93BE20BAD'
  let iv = 'AD42F7787B035B75'
 
  key = CryptoJS.enc.Utf8.parse(key)
  iv = CryptoJS.enc.Utf8.parse(iv)
 
  const base64 = CryptoJS.enc.Base64.parse(word)
 
  const src = CryptoJS.enc.Base64.stringify(base64)
 
  // ����ģʽΪCBC�����뷽ʽΪPKCS5Padding��Ҳ����PKCS7��
  const decrypt = CryptoJS.AES.decrypt(src, key, {
    iv: iv,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7
  })
 
  const decryptedStr = decrypt.toString(CryptoJS.enc.Utf8)
  return decryptedStr.toString()
}