wxmp-rsa
1、简介
前端rsa加解密工具。
- 基于jsencrypt修改扩展功能。
- 兼容小程序环境,压缩后60kb左右的大小,节省小程序空间。
- 支持超长文本加解密。
- 支持中文字符的加解密。
仓库地址
https://github.com/jiayc4215/wxmp-rsa2、安装
npm i wxmp-rsa -S3、使用方式
(小程序使用之前需先使用开发者工具构建npm)
// 导入包importWxmpRsafrom'wxmp-rsa'// 实例化rsaconstrsa=newWxmpRsa()// 定义待加密的字符串conststr='{"name":"neo"}'// 定义公钥constpublicKey=`-----BEGIN PUBLIC KEY----- MIGeMA0GCSqGSIb3DQEBAQUAA4GMADCBiAKBgFnWSUwsmGawhMJ30z6y5li2jcf1 m7rPMZcwZOS3To8bk3OBaMGhVEc1F8GtJBbc1rn/HCLNL9zrCy21EefJON8tRFcY HnpseZSzh+349lIhS+MFw9x4JUddwSPDyxwha929cKzMuVoftu3CJ+kqDBVvxLk7 iDBzUMqW3Kgehk2TAgMBAAE= -----END PUBLIC KEY-----`// 设置公钥rsa.setPublicKey(publicKey)// 加密constcryptStr=rsa.encryptLong(str)console.log('加密后的结果:',cryptStr)// 定义私钥constprivateKey=`-----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgFnWSUwsmGawhMJ30z6y5li2jcf1m7rPMZcwZOS3To8bk3OBaMGh VEc1F8GtJBbc1rn/HCLNL9zrCy21EefJON8tRFcYHnpseZSzh+349lIhS+MFw9x4 JUddwSPDyxwha929cKzMuVoftu3CJ+kqDBVvxLk7iDBzUMqW3Kgehk2TAgMBAAEC gYBRChPeyk/EOrHX912xLpLKLguh+LY9g1B50ScChzUvtTGDPZaxLQYoogVHKhfn I9nzuOS5pBzsDX9tAO0hCQzqfHgqRjn+vEgm1Ui+f0E3BVRnhobcJKZpZqlvCBR5 Gu2+zlrY4SeGq3AuQSr/A5FiB5k0RgsvNycDTjqyg7TXGQJBAJoZ8Yr0zakxT1I8 lVqsFbeNPtt8FNG2UgIlIs9RL7aXhw+Y3sWtk/kbaOXafSofu0NcQYx4Km3M3kiP lcNfTJ8CQQCVPcaRpu+mprRgHS6s76Z668NaFsjX04CUUa0kCrey+Nf/SJJ3BkRH M7GllZWuI/RSXs/F5N38p5bfkn7QZqaNAkBy3dHJZW8DpgjdYOFnhAxwFK39BwGx zHhWtv26kWbCcTKwsp+jtB4vunm3k+RmiN6aeGM35L6jt+kdJ0JYLmo7AkBJpRZb wZj5D8Jqu3vQ8uGgPr9DsYKinkgQ6M0bv/4uXwWXf+Rmv7zpteSv5UTbjfp+uzKk YO/6QWj+InhZto3xAkAOA0i702dLHm5elLWvht7UEYIDEW1+rYGdbthmJBvT9sZh VKL954Y9hDzBWepjYsBiJnmIkgeladPnU5025/G/ -----END RSA PRIVATE KEY-----`// 设置私钥rsa.setPrivateKey(privateKey)// 解密constoriginalStr=rsa.decryptLong(cryptStr)console.log('解密后的原始数据:',originalStr)其他api参考jsencrypt插件
4、注意事项
- 填空方式默认
pkcs1,目前暂不支持其它填空方式。
5、更新提示
- 之前偶现的加密异常的问题已于v2.0.0+版本中修复。
- 之前偶现的解密后部分中文乱码的问题已于v2.1.0+版本中修复。
6、测试对比
推荐两个第三方rsa工具,仅供参考。
- 在线生成rsa公私钥:http://travistidwell.com/jsencrypt/demo/ (推荐1024长度的密钥)
- 在线rsa加解密:http://www.toolzl.com/tools/testrsa.html (117超长加密,128超长解密)