前端使用CryptoJS加密解密
1、安装crypto-js;
npm install crypto-js --save-dev
yarn add crypto-js --dev
2、新建unit.js写成公共方法 ;
const CryptoJS = require('crypto-js'); //16位十六进制数作为密钥(秘钥为随机生成,必须与后端保持一致!) const key = CryptoJS.enc.Utf8.parse("xxxxxxxxxxxxxx"); //16位十六进制数作为密钥偏移量(秘钥为随机生成,必须与后端保持一致!) const iv = CryptoJS.enc.Utf8.parse('xxxxxxxxxxxxxx'); //加密方法 function Encrypt(word) { const data = JSON.stringify(word); const srcs = CryptoJS.enc.Utf8.parse(data); /** * CipherOption, 加密的一些选项: * mode: 加密模式, 可取值(CBC, CFB, CTR, CTRGladman, OFB, ECB), 都在 CryptoJS.mode 对象下 * padding: 填充方式, 可取值(Pkcs7, AnsiX923, Iso10126, Iso97971, ZeroPadding, NoPadding), 都在 CryptoJS.pad 对象下 * iv: 偏移量, mode === ECB 时, 不需要 iv * 返回的是一个加密对象 */ let encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); //将结果进行base64加密 return encrypted.ciphertext.toString(CryptoJS.enc.Base64); } // aes解密 function decrypt(word) { const encryptedHexStr = CryptoJS.enc.Base64.parse(word); const srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr); const decrypt = CryptoJS.AES.decrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); const decryptedStr = decrypt.toString(CryptoJS.enc.Utf8); return decryptedStr.toString(); }
提供几个在线加密解密地址
MD5在线加密解密:https://www.sojson.com/md5/
AES在线加密解密 : https://www.mklab.cn/utils/aes
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码