前言上篇文章实现了JavaRSA的分段加解密。下面介绍如何在Vue项目中使用RSA分段解密。这里的加解密场景是:后端私钥分段加密-前端公钥分段解密前端如何使用公钥解密这里不再赘述。重点是分段解密。有需要的可以参考上一篇文章:RSA加密-Vue在src/libs/jsencrypt/lib/JSEncrypt.js中实现了一种新的解密方式decryptLong/***段解密*@paramstring*@returns{string|boolean}*/JSEncrypt.prototype.decryptLong=function(string){让k=this.getKey();letMAX_DECRYPT_BLOCK=128;//min段解密最大长度限制为128字节try{letct="";让t1;让bufTmp;让hexTmp;让str=bytesToHex(字符串);让buf=hexToBytes(str);让inputLen=buf.length;/起始长度letoffSet=0;//结束长度letendOffSet=MAX_DECRYPT_BLOCK;//分段解密while(inputLen-offSet>0){if(inputLen-offSet>MAX_DECRYPT_BLOCK){bufTmp=buf.slice(offSet,endOffSet);hexTmp=bytesToHex(bufTmp);t1=k.decrypt(hexTmp);ct+=t1;}else{bufTmp=buf.slice(offSet,inputLen);hexTmp=bytesToHex(bufTmp);t1=k.decrypt(hexTmp);ct+=t1;}offSet+=MAX_DECRYPT_BLOCK;endOffSet+=MAX_DECRYPT_BLOCK;{console.log("RSA段解密失败",ex)returnfalse;}};添加JSEncryptRSAassist.js到src/libs/jsencrypt/lib/目录/***RSA段解密辅助*@paramhex*@returns{[]}*//***十六进制转字节数组*/functionhexToBytes(hex){让字节=[];for(letc=0;c
