JavaScript-RSA加解密
RSA加密库
RSA前端加解密。是通过用jsencrypt.min.js来实现的,此js文件实现了对超长文本字段加密功能。写这个文件的大师很牛!膜拜一下��
RSA加密方法:
var encrypt = new JSEncrypt();
encrypt.setPublicKey("-----BEGIN PUBLIC KEY-----\
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDLFb8qp1vRFvi/qfgi1Wg7Mi8l\
LcpfAc+tgpyD7aFW9QquQVMm/jG1IJZVQ6LsdkI7TiDutMCzOMCBXbdSC9BCIAGA\
L2Sz3cYVlGb1kYSM0ZMcUMIK5eF4Bptke070XHvbi8wArtysJ0l71RHDd786tNbG\
W0hDSw3zAqTErbxFaQIDAQAB\
-----END PUBLIC KEY-----\
"); //设置公钥加密证书
var data = "123+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA123+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA123+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+哈哈哈";
var commonEncodeData = encrypt.encryptLong(data); //不含中文的
var cnEscapeData = window.btoa(window.encodeURIComponent(data2)); //包含中文
var encryptData = encrypt.encryptLong(cnEscapeData); //获取加密后数据。
RSA解密方法:
encrypt.setPrivateKey("-----BEGIN PRIVATE KEY-----\
MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAMsVvyqnW9EW+L+p\
+CLVaDsyLyUtyl8Bz62CnIPtoVb1Cq5BUyb+MbUgllVDoux2QjtOIO60wLM4wIFd\
t1IL0EIgAYAvZLPdxhWUZvWRhIzRkxxQwgrl4XgGm2R7TvRce9uLzACu3KwnSXvV\
EcN3vzq01sZbSENLDfMCpMStvEVpAgMBAAECgYAPmwAxmuKnUoiS0dDLfHKh+d09\
kiM24cC/qIW2bZA0Smgjs8lb+bSAIpzquGPQn9W/EOXe8ezM2NOSHU109ItwJkHA\
iHuKDDrhx82Z7n/pyKGjnu6ysxvi+S+RTD5QyoCpo0/a6QTUlI2PbuWeYbjf/o4t\
rwWON7z3tv11BOnoAQJBAPJrZB+Ay4eeOGCuveyBusKPin2CxXy+HiB33SbdrJrE\
ymBB7PnhfDd41EOIpr7d1Obm86jMWR6uEvDZOL0KTsECQQDWdj9UNR0DJbp/mGik\
tsIrtrIgZZ5hR6R4AT3vZ3ez0HoXvWh0IVVHwC9fqjDizjJjr1p28f1sq4tH0qm1\
yEipAkA0DUsaWJVbMWX5nIu7VL+9NwUNnh65gjkFz7b0uXRuZwLtWDqCDSCW6KLr\
PVRQd2FXkw+OlxIrvETk4j+El8oBAkA/tBItpjU++RcDzbbProXQzEzu+KBqDwjY\
qK3IDjjtTbDmmlmLnVcioACybvBkfpFTMQQzLsBzZiVSKU5F8/85AkA0L4+xRInJ\
VjFez8IHDRDgyM/D3uCJ/UEV8qYuP3noFer/uFNsMINXS1jwayhaYAG4+7ynUMXt\
dpba6zGedNEM\
-----END PRIVATE KEY-----");
var commonDecryptData = encrypt.decryptLong2(commonEncodeData); //不含中文
var cndecryptData = encrypt.decryptLong2(encryptData); //含中文
var cndecodeData = window.decodeURIComponent(window.atob(cndecryptData));
是不是很简单呢?都是大神的杰作。
demo传送门:https://download.csdn.net/download/u010464084/10594788
版权声明:本文为u010464084原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。