首次提交
This commit is contained in:
30
utils/encode.js
Normal file
30
utils/encode.js
Normal file
@@ -0,0 +1,30 @@
|
||||
import CryptoJS from 'crypto-js'
|
||||
import md5 from 'js-md5'
|
||||
let Base64 = require('js-base64').Base64
|
||||
var keyStr = 'qDfajQ*v@W1mCruZ'
|
||||
|
||||
export default {
|
||||
|
||||
/**
|
||||
* @param {*需要加密的字符串 注:对象转化为json字符串再加密} word
|
||||
* @param {*aes加密需要的key值,这个key值后端同学会告诉你} keyStr
|
||||
*/
|
||||
encrypt (word) { // 加密
|
||||
var key = CryptoJS.enc.Utf8.parse(keyStr)
|
||||
var srcs = CryptoJS.enc.Utf8.parse(word)
|
||||
var encrypted = CryptoJS.AES.encrypt(srcs, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }) // 加密模式为ECB,补码方式为PKCS5Padding(也就是PKCS7)
|
||||
return encrypted.toString()
|
||||
},
|
||||
decrypt (word) { // 解密
|
||||
var key = CryptoJS.enc.Utf8.parse(keyStr)
|
||||
var decrypt = CryptoJS.AES.decrypt(word, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 })
|
||||
return CryptoJS.enc.Utf8.stringify(decrypt).toString()
|
||||
},
|
||||
md5Salt (str) {
|
||||
return Base64.encode(md5(str + 'Do&9hY%l8e'))
|
||||
},
|
||||
md5NoSalt (str) {
|
||||
return md5(str)
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user