87,994
社区成员
发帖
与我相关
我的任务
分享var key = "123412312341234"; var iv = [0xA,1,0xB,5,4,0xF,7,9,0x17,3,1,6,8,0xC,0xD,80]; var pazzword = '123456'; // var iv1 = CryptoJS.lib.WordArray.create(iv); // aes 加密 pazzword = encrypt(pazzword,key,iv);
function encrypt(data,key,iv) { //key,iv:16位的字符串
var key1 = CryptoJS.enc.Latin1.parse(key);
// var iv1 = CryptoJS.enc.Latin1.parse(CryptoJS.lib.WordArray(iv));
// var iv1=CryptoJS.enc.Hex.parse(iv);
// var iv1=CryptoJS.enc.Utf8.parse(iv);
var iv1 =CryptoJS.lib.WordArray.create(iv);
var encr=CryptoJS.AES.encrypt(data, key1, {
iv: iv1,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
}).toString();
return encr;
}
这是一个我找的关于JS AES256的加密方法。运行没问题,但是跟服务器端对接时发现服务器端的iv是字节数组,然后无法解密了。
有没有大神们遇到类似的情况