AES加密工具的使用方法

简介: 日常开发中,数据请求的加解密是比较常见的场景,因为可以通过抓包软件看到接口请求的数据,甚至修改响应的数据, 客户端实际上接收到的数据并不是服务端返回的真实数据,可能是被修改过的数据,所以数据传输的安全是很必要的。AES是比较常见和常用的一种请求加密方案,AES属于对称加密的一种,优点是对数据没有长度限制,加解密速度快;实现方式简单;缺点是没那么安全:秘钥的传输及保管是个问题,任何一方的秘钥泄漏都将导致数据的不安全。

1. 安装 crypto-js

npm i -S crypto-js

2. 配置 utils 加密工具函数

importCryptoJSfrom'crypto-js';
// 默认的 KEY 与后台一致,十六位十六进制数作为密钥constKEY=CryptoJS.enc.Utf8.parse('与后台一直的密钥');
exportdefault {
// 加密EncryptData: data=> {
letsrcs=CryptoJS.enc.Utf8.parse(data);
letencrypted=CryptoJS.AES.encrypt(srcs, KEY, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7,
    });
returnencrypted.toString();
  },
// 解密DecryptData: data=> {
letdecrypt=CryptoJS.AES.decrypt(data, KEY, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7,
    });
returnJSON.parse(CryptoJS.enc.Utf8.stringify(decrypt).toString());
  },
};

3. 使用

在Vue工程或React工程中,通常是在请求工具(axios,umi-request/fetch或其他请求工具)中全局配置,以下已 umi-request  为例:

1. 在请求拦截器中对请求的数据体进行加密

request.interceptors.request.use((url, options) => {
if (process.env.NODE_ENV!=='development') {
if (options.method==='post'&&!url.includes('generatorToken')) {
/**          * 数据加密,如果是json,需要先转换成字符串         * 这里是对整个json进行加密,也可以对单个字段进行加密         */options.data=AESUtil.EncryptData(JSON.stringify(options.data));
     }
   }
return { url, options };
 });

2. 在响应拦截器中对返回的数据体进行解密

request.interceptors.response.use(asyncres=> {
constresData=awaitres.clone().json();
constresponse=res.clone();
response.data=resData;
if (process.env.NODE_ENV!=='development') {
if (response.data.data) {
// 数据解密response.data.data=AESUtil.DecryptData(response.data.data);
     }
   }
returnresponse.data;
 });
目录
相关文章
|
9月前
|
人工智能 安全 API
这款流行 AI 工具被盗用挖取加密货币,这些隐患你需要知道
Docker 镜像被注入挖矿脚本并不是个别现象,而是一个需要引起重视的安全问题,本文向大家分享下 Higress 防范此类风险的相关经验。
314 91
|
6月前
|
数据采集 监控 API
加密货币 Pump 监测刮刀工具开发原理及实现路径
开发Pump监测刮刀工具需综合运用高频数据采集、波动率建模、跨平台对冲三大核心技术,2025年的技术瓶颈已从基础数据获取转向超低延迟执行与合规适配。建议采用模块化开发策略,优先实现核心监控功能,再逐步接入AI决策与链上套利模块。代码示例需根据最新交易所API文档动态调整,并严格遵守所在地监管法规。
|
7月前
|
算法 安全 数据安全/隐私保护
基于AES的遥感图像加密算法matlab仿真
本程序基于MATLAB 2022a实现,采用AES算法对遥感图像进行加密与解密。主要步骤包括:将彩色图像灰度化并重置大小为256×256像素,通过AES的字节替换、行移位、列混合及轮密钥加等操作完成加密,随后进行解密并验证图像质量(如PSNR值)。实验结果展示了原图、加密图和解密图,分析了图像直方图、相关性及熵的变化,确保加密安全性与解密后图像质量。该方法适用于保护遥感图像中的敏感信息,在军事、环境监测等领域具有重要应用价值。
316 35
|
存储 安全 数据安全/隐私保护
浅谈对称加密(AES与DES)
浅谈对称加密(AES与DES)
412 1
|
9月前
|
人工智能 安全 API
这款流行 AI 工具被盗用挖取加密货币,这些隐患你需要知道
这款流行 AI 工具被盗用挖取加密货币,这些隐患你需要知道
|
数据安全/隐私保护
aes之ecb模式的加密解密
aes之ecb模式的加密解密
|
存储 安全 数据安全/隐私保护
安全升级!Python AES加密实战,为你的代码加上一层神秘保护罩
【9月更文挑战第12天】在软件开发中,数据安全至关重要。本文将深入探讨如何使用Python中的AES加密技术保护代码免受非法访问和篡改。AES(高级加密标准)因其高效性和灵活性,已成为全球最广泛使用的对称加密算法之一。通过实战演练,我们将展示如何利用pycryptodome库实现AES加密,包括生成密钥、初始化向量(IV)、加密和解密文本数据等步骤。此外,还将介绍密钥管理和IV随机性等安全注意事项。通过本文的学习,你将掌握使用AES加密保护敏感数据的方法,为代码增添坚实的安全屏障。
548 8
|
安全 测试技术 Go
Python 和 Go 实现 AES 加密算法的技术详解
Python 和 Go 实现 AES 加密算法的技术详解
706 0
|
安全 算法 数据安全/隐私保护
黑客克星!Python加密艺术大公开,AES、RSA双剑合璧,守护你的数字世界
在这个数据泛滥的时代,数字世界既充满了知识,也潜藏安全隐患。Python 作为强大的编程语言,以其独特的加密技术为我们的信息安全保驾护航。本文将介绍 AES 和 RSA 这两种加密算法,揭示它们如何协同工作,保护你的数字世界。AES(高级加密标准)以其高效、安全著称,能将敏感信息转化为难以破解的乱码。Python 的 `pycryptodome` 库让 AES 加密变得简单易行。然而,AES 面临密钥分发难题,此时 RSA(非对称加密算法)便大显身手,通过公钥加密、私钥解密的方式确保密钥传输安全。AES 与 RSA 在 Python 中交织成一道坚不可摧的防护网,共同守护我们的数字世界。
345 0
|
9月前
|
云安全 安全 数据建模
《数字证书:互联网世界的"身份证"与"防盗门"》 ——揭秘网络安全背后的加密江湖
在2023年某深夜,上海陆家嘴金融公司机房遭遇黑客攻击,神秘青铜大门与九大掌门封印的玉牌突现,阻止了入侵。此门象征数字证书,保障网络安全。数字证书如验钞机识别假币,保护用户数据。它通过SSL/TLS加密、CA认证和非对称加密,构建安全通信。证书分为DV、OV、EV三类,分别适合不同场景。忽视证书安全可能导致巨额损失。阿里云提供一站式证书服务,助力企业部署SSL证书,迎接未来量子计算和物联网挑战。