Blame view

yanshouban/src/utils/jiami.js 969 Bytes
8550d958   杨鑫   '最新'
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
  // 文本加密
  import { sm4 } from 'sm-crypto';
  const DEFAULT_KEY ="cda4442f102f6396cca76902e37ad7cb";
  const DEFAULT_IV = "8bd8a83221742166c7532b7275a7fe9c";
  export const encrypt = (str) => {
      if(!str) {
          return ''
      }
      const encryptStr = sm4.encrypt(str, DEFAULT_KEY, {
          iv: DEFAULT_IV,
          mode: 'cbc',
          padding: 'pkcs#7'
          })
      return 'ENC(' + encryptStr + ')'
  }
  
  // 文本解密
  export const decrypt = (str) => {
      if(!str) {
          return ''
      }
      if(str.indexOf('ENC(') === -1) {
          return str
      }
      const str_ = str.replace('ENC(', '').replace(')', '')
      try {        
          const decryptStr = sm4.decrypt(str_, DEFAULT_KEY, {
              iv: DEFAULT_IV,
              mode: 'cbc',
              padding: 'pkcs#7'
          })
          return decryptStr
      } catch (error) {
          return '解密失败!'
      }
  }