jsencrypt长文本解密失败解决办法

 

// 解密
export function decrypt(string) {
const encryptor = new JSEncrypt()
encryptor.setPrivateKey(privateKey) // 设置私钥
//var maxLength = (((encryptor.getKey().n.bitLength()+7)>>3)-11);

var k = encryptor.getKey(),
maxLength = (((k.n.bitLength()+7)>>3)-11);
console.log("获取长度",maxLength);
var maxLength = ((k.n.bitLength()+7)>>3)*2;
try {
var hexString = b64tohex(string);
var decryptedString = "";
var rexStr=".{1," + maxLength + "}";
var rex =new RegExp(rexStr, 'g');
var subStrArray = hexString.match(rex);
if(subStrArray){
subStrArray.forEach(function (entry) {
decryptedString += k.decrypt(entry);
});
return decryptedString;
}
} catch (ex) {
return false;
}
// return encryptor.decrypt(string) // 对数据进行解密
}

 

参考来源:

https://blog.csdn.net/lionking1990/article/details/106092990/

本文由 我爱PHP169 作者:admin 发表,其版权均为 我爱PHP169 所有,文章内容系作者个人观点,不代表 我爱PHP169 对观点赞同或支持。如需转载,请注明文章来源。

发表回复