JavaScript RSA 超长字符加解密
来源:互联网 发布:电子表格数据样板 编辑:程序博客网 时间:2024/05/29 07:36
刚刚接触到RSA当时不了解,RSA加解密是有字符串长度限制的,加密最大字符长度是117位,解密最大长度是128位。
用到的JS库JSEncrypt,刚开始找了好几个,发现就这个好用一些,换回来了(途中遇到很多坑,一步一个坑过来的)。
这个库的缺陷:没法用公钥解密只能加密,私钥没法加密只能解密(可能是我没找到方法吧)
附链接:http://travistidwell.com/jsencrypt/
分段加密方法:
// The right encryption codeJSEncrypt.prototype.encryptLong = function(string) { var k = this.getKey(); var maxLength = (((k.n.bitLength()+7)>>3)-11); // var maxLength = 117; try { var lt = ""; var ct = ""; if (string.length > maxLength) { lt = string.match(/.{1,117}/g); lt.forEach(function(entry) { var t1 = k.encrypt(entry); ct += t1 ; }); return hex2b64(ct); } var t = k.encrypt(string); var y = hex2b64(t); return y; } catch (ex) { return false; }};
分段解密方法:
附:如有不明白或者问题可以在下方留言// The error decryption codeJSEncrypt.prototype.decryptLong = function(string) { var k = this.getKey(); var maxLength = ((k.n.bitLength()+7)>>3); // var maxLength = 128; try { var string = b64tohex(string); var ct = ""; if (string.length > maxLength) { var lt = string.match(/.{1,128}/g); lt.forEach(function(entry) { var t1 = k.decrypt(entry); ct += t1; }); } var y = k.decrypt(b64tohex(string)); return y; } catch (ex) { return false; }};
阅读全文
2 0
- JavaScript RSA 超长字符加解密
- rsa加解密的内容超长的问题解决
- rsa加解密的内容超长的问题解决
- RSA-RSA加解密运算
- RSA加解密原理
- RSA加解密源码
- openssl rsa加解密
- RSA加解密算法
- java RSA 加解密
- RSA加解密
- RSA 加解密算法
- java RSA 加解密
- java RSA 加解密
- rsa 加解密
- android RSA加解密
- RSA 加解密算法
- android RSA加解密
- RSA加解密
- 02.任务队列和中间人
- CSS常见布局代码片段
- cocos2d-x项目打包成android apk过程中所遇到的错误
- tomcat8w.exe起到问题
- ELK日志系统介绍
- JavaScript RSA 超长字符加解密
- 下拉列表
- Hadoop
- activemq的几种基本通信方式总结
- 51NOD1320 合法尾数序列
- Maven常用命令
- Python3爬虫小程序——爬取各类天气信息(3)
- idea 创建 springMVC 项目中 dispatcher-servlet.xml文件的基本配置
- 直接设置下鼠标事件onmousedown