CryptoJS.MD5("数据").toString();
CryptoJS.SHA256("待加密数据").toString();
CryptoJS.HmacSHA256("待加密数据", "秘钥");
// 加密 写法1
var utf8Str = CryptoJS.enc.Utf8.parse("待加密字符串");
CryptoJS.enc.Base64.stringify(utf8Str);
// 加密 写法2
CryptoJS.enc.Utf8.parse("待加密字符串").toString(CryptoJS.enc.Base64);
// 解密
CryptoJS.enc.Base64.parse("带解密").toString(CryptoJS.enc.Utf8);
// CryptoJS.enc.Base64.stringify("字符串") 和 "字符串".toString(CryptoJS.enc.Base64) 是相同的含义
// 加密
CryptoJS.AES.encrypt('待加密字符串', '秘钥').toString();
// 解密
CryptoJS.AES.decrypt('待解密字符串', '秘钥').toString(CryptoJS.enc.Utf8);
const key = CryptoJS.enc.Base64.parse("秘钥"); //这里使用base64 或者 utf8 要看要求,加解密一致即可
const iv = CryptoJS.enc.Utf8.parse('偏移量'); //十六位十六进制数作为密钥偏移量
// 加密 1
function Encrypt(word) {
let srcs = CryptoJS.enc.Utf8.parse(word);
let encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
return encrypted.toString();
}
// 解密 1
function Decrypt(word) {
let decrypt = CryptoJS.AES.decrypt(word, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
return decryptedStr.toString();
}
// 加密 2
function Encrypt(word) {
let srcs = CryptoJS.enc.Utf8.parse(word);
let encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
return encrypted.ciphertext.toString();
}
// 解密 2
function Decrypt(word) {
let encryptedHexStr = CryptoJS.enc.Hex.parse(word);
let srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr);
let decrypt = CryptoJS.AES.decrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
return decryptedStr.toString();
}
if (!pm.globals.has("forgeJS")) {
pm.sendRequest("http://localhost:8080/forge.js", function (err, res) {
if (err) {
console.log(err);
} else {
pm.globals.set("forgeJS", res.text());
}
})
} else {
eval(pm.globals.get("forgeJS"))
// 加解密内容
}
参考资料