AES是一种对称加密算法,加密解密使用相同的密钥。在前后端交互中,经常需要对数据进行加密,以保证数据传输的安全性。本文将介绍如何在vue项目中使用AES实现密码加密解密。

1、在vue项目中使用AES需要安装crypto-js这个库,可以通过npm安装:

npm install crypto-js

 2.创建配置文件encryp.js 路径可以按照这个src/utils/encryp.js

import CryptoJS from "crypto-js"; //引用AES源码js
var key = CryptoJS.enc.Utf8.parse("1954682168745975"); //十六位十六进制数作为秘钥
var iv = CryptoJS.enc.Utf8.parse("1954682168745975");//十六位十六进制数作为秘钥偏移量
//解密方法
export function Decrypt(decryptStr) {
  const decryptBase64Str = CryptoJS.enc.Base64.parse(decryptStr);
  const createCode = CryptoJS.lib.CipherParams.create({
    ciphertext: decryptBase64Str,
  });
  const decryptedData = CryptoJS.AES.decrypt(createCode, key, {
    iv: iv,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7,
  });
  const decryptedStr = CryptoJS.enc.Utf8.stringify(decryptedData).toString();
  return decryptedStr;
}
//加密方法
export function Encrypt(word) {
    var srcs = CryptoJS.enc.Utf8.parse(word);
    var encrypted = CryptoJS.AES.encrypt(srcs, key, {
        iv: iv,
        mode: CryptoJS.mode.CBC,
        padding: CryptoJS.pad.Pkcs7
    });
    return CryptoJS.enc.Base64.stringify(encrypted.ciphertext);
}
 

3、使用:直接使用即可

import { Encrypt } from "@/utils/encryption.js";





 login() {
      console.log("点击了登录");
      const pass = Encrypt("abc,123,1628671141279");
      console.log("明文", "abc,123,1628671141279");
      console.log("加密后", pass);
    },
GitHub 加速计划 / vu / vue
109
18
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:3 个月前 )
9e887079 [skip ci] 1 年前
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐