vue使用AES加解密

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

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

npm install crypto-js

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

const CryptoJS = require('crypto-js'); //引用AES源码js
var key = CryptoJS.enc.Utf8.parse("1954682168745975"); //十六位十六进制数作为秘钥
var iv = CryptoJS.enc.Utf8.parse("1954682168745975");//十六位十六进制数作为秘钥偏移量
//解密方法
export function Decrypt(word) {
    var encryptedHexStr = CryptoJS.enc.Hex.parse(word);
    var srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr);
    var decrypt = CryptoJS.AES.decrypt(srcs, key, {
        iv: iv,
        mode: CryptoJS.mode.CBC,
        padding: CryptoJS.pad.Pkcs7
    });
    var decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
    return decryptedStr.toString();
}
//加密方法
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);
    },

你可能感兴趣的:(vue.js,前端,javascript)