| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- import CryptoJS from 'crypto-js'
- export const formatGetParams = (params) => {
- const entries = Object.entries(params).filter(arr => {
- return (arr[1] - 0) === 0 || arr[1]
- }).map(arr => {
- return `${arr[0]}=${arr[1]}`
- })
- return entries.join('&')
- }
- // export const formatGetParams = (params) => {
- // const p = []
- // for (const key in params) {
- // if (Array.isArray(params[key])) {
- // params[key].forEach(i => {
- // p.push(key + '=' + i)
- // })
- // } else {
- // p.push(key + '=' + params[key])
- // }
- // }
- // return p.join('&')
- // }
- const desKey = 'fnFACVwC'
- const key = CryptoJS.enc.Hex.parse('TgxRS8DG65EjK8cpKTiPAw==') // 密钥
- const iv = CryptoJS.enc.Hex.parse('') // 偏移量
- // aes加密
- export function encrypt (word) {
- let encrypted = ''
- if (typeof word === 'string') {
- const key = CryptoJS.enc.Utf8.parse(desKey)
- console.log(word, desKey, 'aaaa')
- encrypted = CryptoJS.DES.encrypt(word, key, {
- mode: CryptoJS.mode.ECB,
- padding: CryptoJS.pad.Pkcs7
- })
- return encrypted.toString()
- // const srcs = CryptoJS.enc.Hex.parse(word)
- // // var encryptedBase64Str = CryptoJS.enc.Base64.stringify(srcs)
- // encrypted = CryptoJS.AES.encrypt(srcs, key, {
- // mode: CryptoJS.mode.ECB,
- // padding: CryptoJS.pad.ZeroPadding
- // })
- } else if (typeof word === 'object') {
- // 对象格式的转成json字符串
- const data = JSON.stringify(word)
- const srcs = CryptoJS.enc.Utf8.parse(data)
- encrypted = CryptoJS.AES.encrypt(srcs, key, {
- iv: iv,
- mode: CryptoJS.mode.ECB,
- padding: CryptoJS.pad.Pkcs7
- })
- }
- return encrypted.ciphertext.toString()
- }
- // aes解密
- export function decrypt (word) {
- const encryptedHexStr = CryptoJS.enc.Hex.parse(word)
- const srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr)
- const decrypt = CryptoJS.AES.decrypt(srcs, key, {
- iv: iv,
- mode: CryptoJS.mode.CBC,
- padding: CryptoJS.pad.Pkcs7
- })
- const decryptedStr = decrypt.toString(CryptoJS.enc.Utf8)
- return decryptedStr.toString()
- }
|