一、md5

npm install md5 

二、JSEncrypt

2.1 介绍

JSEncrypt属于RSA加密,RSA加密算法是一种非对称加密算法;

2.2 使用

  1. 安装:
npm install jsencrypt --dev 
  1. 封装工具:

utils/jsencrypt.js

import JSEncrypt from 'jsencrypt/bin/jsencrypt.min'
// 密钥对生成 http://web.chacuo.net/netrsakeypair; 把下面生成的公钥、私钥换成自己生成的即可
// const publicKey = '' // 生成的公钥
// const privateKey = '' // 之前ssl生成的秘钥 privateKey
import {
  PUBLICKEY as publicKey,
  PRIVATEKEY as privateKey
} from '@/constant/index'

// 加密
export function encrypt(txt) {
  const encryptor = new JSEncrypt()
  encryptor.setPublicKey(publicKey) // 设置公钥
  return encryptor.encrypt(txt) // 对数据进行加密
}

// 解密
export function decrypt(txt) {
  const decryptor = new JSEncrypt()
  decryptor.setPrivateKey(privateKey) // 设置私钥(之前ssl生成的秘钥 privateKey)
  return decryptor.decrypt(txt) // 对数据进行解密(解密之前拿公钥加密的内容)
}
  1. 使用,如登录:

store/modules/user.js

// ...
import { encrypt, decrypt } from '@/utils/jsencrypt'
// ...

const state = {}

const mutations = {}

const actions = {
  login({ commit }, obj) {
    const { password } = obj
    return new Promise((resolve, reject) => {
      login({ password: encrypt(password) })
        .then((data) => {
          // ...保存data里的数据
          // ...路由跳转
          resolve(data)
        })
        .catch((err) => {
          reject(err)
        })
    })
  },
  // ...
}

const user = {
  namespaced: true,
  state,
  mutations,
  actions
}

export default user

参考链接

jsencrypt加密解密
前端vue项目加密-JSEncrypt(1)