社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
提示:以下是本篇文章正文内容,下面案例可供参考
RSA加密是一种非对称加密。
可以在不直接传递密钥的情况下,完成解密。
这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。
RSA是由一对密钥来进行加解密的过程,分别称为公钥和私钥。
两者之间有数学相关,该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。
通常个人保存私钥,公钥是公开的(可能同时多人持有)。
一般是客户端初始化时访问服务端时,服务端会生成一对RSA对,及公钥和密钥。
首先引入jsencrypt
npm install jsencrypt --save
import JsEncrypt from 'jsencrypt'
Vue.prototype.$jsEncrypt = JsEncrypt
let publicKey = '这里是封装的公钥'
let privateKey = '这里是封装的私钥'
//加密方法
RSAencrypt(pas){
//实例化jsEncrypt对象
let jse = new JSEncrypt();
//设置公钥
jse.setPublicKey(publicKey);
console.log('加密:'+jse.encrypt(pas))
return jse.encrypt(pas);
},
//解密方法
RSAdecrypt(pas){
let jse = new JSEncrypt();
// 私钥
jse.setPrivateKey(privateKey)
console.log('解密:'+jse.decrypt(pas))
return jse.decrypt(pas);
},
我在项目中的使用如下图:
后端的使用Springboot对RSA进行加解密的过程可以看我的另一篇博客
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!