密码加密|jsencrypt|md5|加密解密的两种方式
一、md5
npm install md5
二、JSEncrypt
2.1 介绍
JSEncrypt属于RSA加密,RSA加密算法是一种非对称加密算法;
2.2 使用
- 安装:
npm install jsencrypt --dev
- 封装工具:
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) // 对数据进行解密(解密之前拿公钥加密的内容)
}
- 使用,如登录:
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)
密码加密|jsencrypt|md5|加密解密的两种方式的更多相关文章
- C#MD5加密的两种方式
在开发过程当中,我们经常会用到MD5加密,下面介绍MD5加密的两种方式: /// <summary> /// MD5字符串加密 /// </summary> /// <p ...
- 对Java代码加密的两种方式,防止反编译
使用Virbox Protector对Java项目加密有两种方式,一种是对War包加密,一种是对Jar包加密.Virbox Protector支持这两种文件格式加密,可以加密用于解析class文件的j ...
- Android中EditText显示明文与密码的两种方式
效果图如下所述: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:and ...
- Linux两种方式rd.break和init重置root管理员密码
centos7/rhel7进入单用户方式和重置密码方式发生了较大变化,GRUB由b引导变成了ctrl+x引导. 重置密码主要有rd.break和init两种方法. rd.break方法: 1.启动的时 ...
- web.config文件中配置数据库连接的两种方式
web.config文件中配置数据库连接的两种方式 标签: 数据库webconfig 2015-04-28 18:18 31590人阅读 评论(1)收藏举报 分类: 数据库(74) 在网站开发 ...
- Express全系列教程之(四):获取Post参数的两种方式
一.关于POST请求 post方法作为http请求很重要的一部分,几乎所有的网站都有用到它,与get不同,post请求更像是在服务器上做修改操作,它一般用于数据资源的更新.相比于get请求,post所 ...
- 使用Python和AWK两种方式实现文本处理的长拼接案例
最近由于业务系统新需求的需要,我们平台需要将供应商G提供一类数据转换格式后提供给客户K.比较头疼是供应商G提供的数据都是在Windows下使用Excel存储的,而客户K先前与我们相关对接人员商定的数据 ...
- Git提交代码仓库的两种方式
目录 一: 两种本地与远程仓库同步 1 git 远程仓库 提交本地版本库操作 提交到远程版本库操作 1.Git 全局设置: 2.增加一个远程仓库地址 3.查询当前存在的远程仓库 5.本地版本库内容提交 ...
- 《连载 | 物联网框架ServerSuperIO教程》- 10.持续传输大块数据流的两种方式(如:文件)
1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...
- 第二节:SSL证书的申请、配置(IIS通用)及跳转Https请求的两种方式
一. 相关概念介绍 1. SSL证书服务 SSL证书服务由"服务商"联合多家国内外数字证书管理和颁发的权威机构.在xx云平台上直接提供的服务器数字证书.您可以在阿里云.腾讯云等平台 ...
随机推荐
- 21. C++快速入门--协程 Coroutine 入门
参考: https://www.cnblogs.com/blizzard8204/p/17563217.html https://www.bennyhuo.com/2022/03/09/cpp-cor ...
- 探索Python @dataclass的内部原理
之前写过一篇介绍Python中dataclass的文章:<掌握python的dataclass,让你的代码更简洁优雅>. 那篇侧重于介绍dataclass的使用,今天想探索一下这个有趣的特 ...
- Solution -「AGC 058D」Yet Another ABC String
\[\mathfrak{Defining~\LaTeX~macros\dots} \newcommand{\chr}[1]{\underline{\texttt{#1}}} \] \(\mathscr ...
- runoob-Lua 教程
https://www.runoob.com/lua/lua-tutorial.html Lua 特性 轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里. ...
- 在linux系统通过OpenSSL工具自签https证书
工具介绍 OpenSSL是SSL/TLS协议的实现工具 key是私钥文件,用于对发送给客户端的数据加密,以及对从客户端接收的数据进行解密. csr是证书签名请求文件,用于提交给证书颁发机构(CA)对证 ...
- 利用坦克PWA3快速为应用配置域名:以Gogs为例
全文概述 本文介绍了如何利用坦克PWA3平台快速为Gogs应用配置域名的过程.随着互联网技术的发展,自托管Git服务变得越来越受欢迎,其中Gogs凭借其轻量级和易于安装的特点受到众多开发者的青睐.为提 ...
- py并发编程
并发编程(并发,并行,同步,异步) 通俗理解并发编程中的相关核心概念 核心概念:进程.线程 CPU的作用 计算机的核心是CPU,它承担了所有的计算任务.它就像一座工厂,时刻在运行. CPU的核数(多核 ...
- 语音处理 开源项目 EchoSharp
开源项目 EchoSharp(https://github.com/sandrohanea/echosharp),专为近乎实时的音频处理而设计,可为各种音频分析范围无缝编排不同的 AI 模型.Echo ...
- 基于生成式AI的访问控制, 迁移传统安全策略到基于LLM的风险分类器
基于规则的风险分类 风险分类是网络安全系统的核心能力之一,它将访问请求和命令映射到其风险级别/类别:高(High).中(Medium).低(Low).目前,即便是在大规模环境中,风险分类器仍主要采用基 ...
- 首个“全4K”运动会,上云!
采用"全4K"超高清制作标准的世-界级赛事--成都世界大学生运动会,可以用手机看.用电视看,甚至用VR沉浸式观看,并且既高清又流畅--在"2023数字科技生态大会&quo ...