美文网首页
前端数据加解密

前端数据加解密

作者: 香蕉不拿呢 | 来源:发表于2022-02-10 17:41 被阅读0次
前言

没有使用https协议时,数据没有加密,入网安全测评不通过
这里记录一下数据加解密。

一、封装加解密方法

secret.js文件

import CryptoJS from 'crypto-js'

//解密方法
export function Decrypt(word) {
    var key = CryptoJS.enc.Utf8.parse("bda#p*!xf0000000");
    let decrypt = CryptoJS.AES.decrypt(word, key, {mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 });
    let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
    return decryptedStr.toString();
}

//加密方法
export function Encrypt(word) {
    let srcs = word
    let key = CryptoJS.enc.Utf8.parse("bda#p*!xf0000000");
    let encrypted = CryptoJS.AES.encrypt(srcs, key,{
    //iv: key,
    mode: CryptoJS.mode.ECB,
    padding: CryptoJS.pad.Pkcs7,
  });
  return encrypted.toString();
}
二、参数加解密
import axios from 'axios'
import {Decrypt,Encrypt} from './secret.js'
const request = axios.create({
    baseURL: '',
    timeout: 60000, // 请求超时时间
});
request.interceptors.request.use((config) => {
    // 加解密
    config.data = {data:Encrypt(JSON.stringify(config.data))}
    return config;
});
request.interceptors.response.use((res) => {
    res.data = JSON.parse(Decrypt(res.data))
    return res;
})
export default request
  • 数据加密前


    加密前
  • 数据加密后
    把加密的数据放在keydata的对象里面
    加密后

相关文章

网友评论

      本文标题:前端数据加解密

      本文链接:https://www.haomeiwen.com/subject/tlswkrtx.html