
vue中使用js进行AES加密及解密(含密钥和iv偏移量)、以及HMAC-SHA256加密方法对于签名加密的使用
一、AES加密解密1.下载安装npm install crypto-js --save-dev2.在utils文件夹下创建encryp.js文件进行aes加密解密工具类方法的封装import CryptoJS from 'crypto-js';export default {// 解密data:要加密解密的数据,AES_KEY:密钥,IV:偏移量decrypt(data, AES_KEY, IV)
·
一、AES加密解密
1.下载安装
npm install crypto-js --save-dev
2.在utils文件夹下创建encryp.js文件进行aes加密解密工具类方法的封装
import CryptoJS from 'crypto-js';
export default {
// 解密 data:要加密解密的数据,AES_KEY:密钥,IV:偏移量
decrypt(data, AES_KEY, IV) {
const key = CryptoJS.enc.Utf8.parse(AES_KEY);
const iv = CryptoJS.enc.Utf8.parse(IV);
const decrypt = CryptoJS.AES.decrypt(data, key, {
iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7,
}).toString(CryptoJS.enc.Utf8);
return decrypt;
},
// 加密
encrypt(data, AES_KEY, IV) {
const key = CryptoJS.enc.Utf8.parse(AES_KEY);
const iv = CryptoJS.enc.Utf8.parse(IV);
const encrypted = CryptoJS.AES.encrypt(data, key, {
iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7,
});
return encrypted.toString();
},
};
3.在vue中引用
import Crypto from "@/utils/encryp.js";
4.在js部分使用示例
var aseStr = {
name: "张三 ",
idNumber: "123456123456781234",
phoneNumber: "12345678910",
merchantId: "46bf791a432242c253365b623a4b45c5",
}; //加密前json
var key = "e4ea89835ad64eb1b8d76069e33908d4"; //加密密钥
var iv = "ff465fdecc764337"; //加密aesIV,偏移量
var time = Date.parse(new Date()).toString().substring(0, 10); //十位时间戳,精度是秒
// 加密
const newStr = Crypto.encrypt(JSON.stringify(aseStr), key, iv); //将json转成字符串再进行加密
console.log('加密后字符串',newStr);
// 解密
const oldStr = Crypto.decrypt(newStr, key, iv);
console.log('解密后字符串',oldStr);
4.打印结果
二、 HMAC-SHA256加密
1.下载安装
npm install crypto-js --save-dev
2.在vue中引用
import CryptoJS from "crypto-js";
3.在js方法中使用示例
let id = '46bf791a432242c253365b623a4b45c5'
let key = "e4ea89835ad64eb1b8d76069e33908d4"; //加密密钥
let time = Date.parse(new Date()).toString().substring(0, 10); //十位时间戳,精度是秒
let str = id + time + key;
let test = CryptoJS.HmacSHA256(str, key);
let testStr = CryptoJS.enc.Hex.stringify(test);
console.log('原字符串',str)
console.log('签名加密后字符串',testStr)
4.运行结果
点击阅读全文
更多推荐
活动日历
查看更多
直播时间 2025-02-26 16:00:00


直播时间 2025-01-08 16:30:00


直播时间 2024-12-11 16:30:00


直播时间 2024-11-27 16:30:00


直播时间 2024-11-21 16:30:00


目录
所有评论(0)