AES(CBC模式)字段加密相关----
/**
* @word 要加密的内容
* @keyStr String 服务器随机返回的密钥
* @ivStr String 服务器随机返回的向量
* */
// 加密
function aesEncrypt(word, keyStr, ivStr) {
keyStr = keyStr ? keyStr : "absoietlj32fai12";
ivStr = ivStr ? ivStr : "absoietlj32fai12";
let key = CryptoJS.enc.Utf8.parse(keyStr);
let iv = CryptoJS.enc.Utf8.parse(ivStr);
let srcs = CryptoJS.enc.Utf8.parse(word);
let encrypted = CryptoJS.AES.encrypt(srcs, key, {
iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.ZeroPadding
});
return encrypted.toString();
}
/**
* @word 要解密的内容
* @keyStr String 服务器随机返回的密钥
* @ivStr String 服务器随机返回的向量
* */
// 解密
function aesDncrypt(word, keyStr, ivStr) {
keyStr = keyStr ? keyStr : "absoietlj32fai12";
ivStr = ivStr ? ivStr : "absoietlj32fai12";
var key = CryptoJS.enc.Utf8.parse(keyStr);
let iv = CryptoJS.enc.Utf8.parse(ivStr);
var decrypt = CryptoJS.AES.decrypt(word, key, {
iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.ZeroPadding
});
return decrypt.toString(CryptoJS.enc.Utf8);
}
使用的话还需要使用命令npm install crypto-js --save-dev 去下载crypto-js
然后就可以传参使用了