一、安装crypto-js
npm install crypto-js --save
二、配置
- 在src目录下得components里创建utils.js、代码如下:
const CryptoJS = require('crypto-js'); //引用AES源码js
const key = CryptoJS.enc.Utf8.parse("1234123412ABCDEF"); //十六位十六进制数作为密钥
const iv = CryptoJS.enc.Utf8.parse('ABCDEF1234123412'); //十六位十六进制数作为密钥偏移量
//加密方法
export function Encrypt(word) {
let srcs = CryptoJS.enc.Utf8.parse(word);
let encrypted = CryptoJS.AES.encrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return encrypted.ciphertext.toString().toUpperCase();
// 如果不需要解密.ciphertext.toString().toUpperCase();将这段代码删除
}
//解密方法
export function Decrypt(word) {
let encryptedHexStr = CryptoJS.enc.Hex.parse(word);
let srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr);
let decrypt = CryptoJS.AES.decrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
// console.log(Decrypt)
return decryptedStr.toString();
}
export default {
Decrypt ,
Encrypt
}
三、使用
- 在需要使用得组件内引用与实现、代码如下:
import { Encrypt, Decrypt } from "@/utils.js";
//简单demo
mounted() {
var a = '123456789'
var b = Encrypt(a)
var v = Decrypt(b)
console.log('加密后:', b)
console.log('解密后:', v)
},
效果如下: