当前位置: 首页 > article >正文

登录的时候密码使用crypto-js加密解密

首先要下载插件

npm install crypto-js

然后新建一个js文件 crypto.js

// 导入 CryptoJS 模块
import CryptoJS from 'crypto-js';
const secretKey="pZsgDSvzaeHWDkhLDxvrrrYvBlAsIHmZ";//一般是后端提供的
/**
 * @description: 加解密函数
 * @param {*} data 需要加密的数据
 * @param {*} key 加密密钥
 * @return {*} 返回加密后的数据
 */

// 加密函数
function encrypt(data) {
  let key = CryptoJS.enc.Utf8.parse(secretKey);
  let srcs = CryptoJS.enc.Utf8.parse(data);
  let encrypted = CryptoJS.AES.encrypt(srcs, key, {
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7,
  });
  return encrypted.toString();

}

// 解密函数
function decrypt(encryptStr) {
  let key = CryptoJS.enc.Utf8.parse(secretKey);
  let decrypt = CryptoJS.AES.decrypt(encryptStr, key, {
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7,
  });
  return CryptoJS.enc.Utf8.stringify(decrypt).toString();
}

export { encrypt, decrypt };

最后在页面导入之后使用

import { encrypt, decrypt } from '@/utils/crypto';

加密

encrypt(loginForm.password)

解密

decrypt(loginForm.password)

http://www.kler.cn/a/372044.html

相关文章:

  • selenium学习日记
  • 推荐系统中的AB测试
  • 基于uniapp微信小程序的旅游系统
  • ES6 变量的解构赋值
  • PHP免杀详细讲解PHP免杀详细讲解
  • ---synchronized 关键字---
  • 【毕业论文+源码】基于SSM(Spring + Spring MVC + MyBatis)的房屋租赁系统
  • Solidity智能合约中的异常处理error、require、assert
  • 物联网智能项目实战:智能温室监控系统
  • 嵌入式学习-网络-Day05
  • OpenCV 3D点到2D图像平面的投影
  • Spring Cache-基于注解的缓存
  • 【话题讨论】把握鸿蒙机遇:开发者的策略与实践
  • Manus在虚拟现实仿真模拟中的应用案例分享
  • 计算机网络和网络安全
  • SpringAOP:对于同一个切入点,不同切面不同通知的执行顺序
  • Linux系统用户和权限
  • 云舟观测:基于eBPF监控主机的TCP网络连接
  • AI与低代码的碰撞:企业数字化转型的新引擎
  • 54页可编辑PPT | 大型集团企业数据治理解决方案
  • 基于用户体验的在线相册管理平台创新设计与实现
  • OpenAI低调发布多智能体工具Swarm:让多个智能体协同工作!
  • 论文翻译 | PROMPTING GPT-3 TO BE RELIABLE
  • Java中的数组
  • PyTorch nn.Conv2d 空洞卷积
  • Git 企业级开发模型