vue项目使用jsencrypt加密

2 篇文章 0 订阅

一.使用jsencrypt进行RSA加密-非全局

1.安装依赖

npm install jsencrypt

2.@/libs/encrypt.js

//引入
import { JSEncrypt } from 'jsencrypt'
/**
 * 加密
 * @param {String}  需要加密的参数
 */
export function passwordEncryption (param) {
  // 后台给的公钥
  let publicKey = 'MIIBIjANBgkqhkiGB......'
  let encryptor = new JSEncrypt() // 新建JSEncrypt对象
  encryptor.setPublicKey(publicKey) // 设置公钥
  let passwordEncryp = encryptor.encrypt(param) // 对密码进行加密
  return passwordEncryp
}

// 解密
export function decrypt (msg) {
  const privateKey = ''
  let decrypt = new JSEncrypt()
  decrypt.setPrivateKey(privateKey)
  var decryptMsg = decrypt.decrypt(msg)
  return decryptMsg
}

3.在忘记密码页面使用,给接口传的参数加密后传给后端

<script>
    //引入加密文件
    import { passwordEncryption } from '@/libs/encrypt'
    resetPass () {
          let obj = {
            checkCode: this.form.checkCode,//验证码
            password: passwordEncryption(this.form.password),//加密后的密码
            phone: this.form.phone,//手机号
          }
          resetPassword(obj).then(res => {
            if (res.status === 200) {
              this.$Message.success('密码修改成功')
            } else {
              this.$Message.warning(res.msg)
            }
          })
    },
</script>

二.使用jsencrypt进行RSA加密-全局

1.安装,
npm install jsencrypt

2.在main.js引入  
import { JSEncrypt } from 'jsencrypt'

3.挂载全局方法
Vue.prototype.$encryption = function(password){
  //password是要加密的对象
  let encryptor = new JSEncrypt() // 新建JSEncrypt对象
  encryptor.setPublicKey('此处填写后端给的公钥') // 设置公钥
  let passwordEncryp = encryptor.encrypt(password) // 对密码进行加密
  return passwordEncryp
}

4.使用方法
let passwordEncryp = this.$encryption(this.password) 

三.使用md5加密

1.安装依赖 npm install md5

2.main.js引入 import md5 from 'js-md5'

3.Vue.prototype.$md5 = md5;

4.使用方法

let password = this.$md5(this.password) 


 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值