1.npm install crypto-js
加密:
// AES加密
const key = CryptoJS.enc.Utf8.parse('reHlsdCrUOMeBIYiVtWEhJ3Q==') // 将密钥转Utf8
const val = ‘123456’
const srcs = CryptoJS.enc.Utf8.parse(JSON.stringify(val)) // 将val对转成Utf8
// 跟后端用同样的模式对密码进行AES加密
const encrypted = CryptoJS.AES.encrypt(srcs, key, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.ZeroPadding
})
// 将结果进行base64加密后
const signData = encrypted.ciphertext.toString(CryptoJS.enc.Base64)
解密:
// 密钥变成utf8形式
const aesKey = CryptoJS.enc.Utf8.parse('rHhHlseHKOMeBIYiVtWEhJ3Q==')
const resCon = ‘hHlseHKOMeBIYidsVtWEhJ3Q==’ // 带解密内容
// 采用与加密一样的模式进行解密
let decryAes = CryptoJS.AES.decrypt(resCon, aesKey, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.ZeroPadding
})
// 解密
const str = JSON.parse(CryptoJS.enc.Utf8.stringify(decryAes)) // str即为解密数据