aes.js 1.03 KB
import CryptoJS from 'crypto-js'
/**
 * 使用ase加密
 * @param word 需要加密的参数
 * @param keyStr 加密的key
 */
const _encrypt = (word, keyStr) => {
  keyStr = keyStr || '8751276152370123'
  const key = CryptoJS.enc.Utf8.parse(keyStr)
  const iv = CryptoJS.enc.Utf8.parse('0000000000000000')
  const src = CryptoJS.enc.Utf8.parse(word)
  const encrypted = CryptoJS.AES.encrypt(src, key, {
    iv: iv,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.ZeroPadding
  })
  return encrypted.toString()
}
/**
 * 使用ase解密
 * @param word 需要解密的参数
 * @param keyStr 解密的key
 */
const _decrypt = (word, keyStr) => {
  keyStr = keyStr || '8751276152370123'
  const key = CryptoJS.enc.Utf8.parse(keyStr)
  const iv = CryptoJS.enc.Utf8.parse('0000000000000000')
  const decrypt = CryptoJS.AES.decrypt(word, key, {
    iv: iv,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.ZeroPadding
  })
  return CryptoJS.enc.Utf8.stringify(decrypt).toString()
}

export default {
  encrypt: _encrypt,
  decrypt: _decrypt
}