一、下载
npm i crypto-js -S
二、封装
创建encryption.js
import CryptoJs from 'crypto-js'
class Encryption {
constructor (keyStr) {
this.keyStr = keyStr || 'abcdefgabcdefg123456' // 秘钥
}
// AES加密
encrypt (word) {
let key = CryptoJs.enc.Utf8.parse(this.keyStr)
let text = CryptoJs.enc.Utf8.parse(word)
let encrypted = CryptoJs.AES.encrypt(text,key,{mode:CryptoJs.mode.ECB,padding:CryptoJs.pad.Pkcs7})
return encrypted.toString()
}
// AES解密
decrypt (word) {
let key = CryptoJs.enc.Utf8.parse(this.keyStr)
let decrypt = CryptoJs.AES.decrypt(word,key,{mode:CryptoJs.mode.ECB,padding:CryptoJs.pad.Pkcs7})
return CryptoJs.enc.Utf8.stringify(decrypt).toString()
}
}
export default new Encryption()
三、使用
import encryption from '../libs/encryption
// 加密
encryption.encrypt(123456) // zfdMWllSOhK4JzyeKryaPw==
// 解密
encryption.decrypt('zfdMWllSOhK4JzyeKryaPw==') // 解密 123456