JavaScript 加密解密函数 - 使用 CryptoJS 库
'getKeys'(){
var _0x26ded5='55cc5c42a943afdc';
var _0x590aa3='d11324dcscfe16c0';
return[CryptoJS.enc.Utf8.parse(_0x26ded5),CryptoJS.enc.Utf8.parse(_0x590aa3)];
},'decryptPackData'(_0x671add){
let[_0x51c696,_0x48abff]=this.getKeys();
var _0x95e934=CryptoJS.enc.Hex.parse(_0x671add);
var _0x2864b7=CryptoJS.enc.Base64.stringify(_0x95e934);
const _0x175606=CryptoJS.AES.decrypt(_0x2864b7,_0x51c696,{'iv':_0x48abff,'mode':CryptoJS.mode.CBC,'padding':CryptoJS.pad.Pkcs7});
return _0x175606.toString(CryptoJS.enc.Utf8);
},'encryptPackData'(_0x16eb06){
let[_0x2a1d3b,_0x56663e]=this.getKeys();
var _0x2cd5c3=CryptoJS.enc.Utf8.parse(_0x16eb06);
const _0x1924c3=CryptoJS.AES.encrypt(_0x2cd5c3,_0x2a1d3b,{'iv':_0x56663e,'mode':CryptoJS.mode.CBC,'padding':CryptoJS.pad.Pkcs7});
return _0x1924c3.ciphertext.toString().toUpperCase();
}
这段代码展示了使用 CryptoJS 库实现 JavaScript 加密解密功能的示例代码。代码包含 getKeys、decryptPackData 和 encryptPackData 函数,分别用于获取密钥、解密数据和加密数据。
代码解析:
getKeys函数:获取加密密钥和初始化向量 (IV)。decryptPackData函数:使用CryptoJS.AES.decrypt函数解密数据。数据首先使用CryptoJS.enc.Hex.parse函数解析为十六进制格式,然后使用CryptoJS.enc.Base64.stringify函数转换为 Base64 格式。解密过程使用CBC模式和Pkcs7填充。encryptPackData函数:使用CryptoJS.AES.encrypt函数加密数据。数据首先使用CryptoJS.enc.Utf8.parse函数解析为 UTF-8 格式。加密过程使用CBC模式和Pkcs7填充。
注意:
- 这段代码仅供参考,实际使用时需要根据具体需求进行调整。
- 为了安全起见,建议不要使用硬编码的密钥,而是使用更安全的密钥管理机制。
- 使用
CryptoJS库需要确保其已经包含在项目中。
示例使用:
// 加密数据
const encryptedData = encryptPackData('Hello World!');
// 解密数据
const decryptedData = decryptPackData(encryptedData);
console.log(decryptedData); // 输出 'Hello World!'
原文地址: https://www.cveoy.top/t/topic/l0iR 著作权归作者所有。请勿转载和采集!