当前位置: 首页 > news >正文

uni-app AES 加密

uni-app 官网没有 加密 API
我们 可以 安装 crypto-js

npm install crypto-js

他会保存到项目中 node_modules

在这里插入图片描述

import CryptoJS from '../node_modules/crypto-js' //引用AES源码js
const keyCode = '012345678' //密钥
const ivCode = '012345678' //偏移量

const key = CryptoJS.enc.Utf8.parse(keyCode);
const iv = CryptoJS.enc.Utf8.parse(ivCode);
const utils = {
	encodeAES(text) {
		const encrypted = CryptoJS.AES.encrypt(text, key, {
			iv: iv,
			mode: CryptoJS.mode.CBC,
			padding: CryptoJS.pad.Pkcs7
		});

		let enText = encrypted.toString()
		if (enText == '') {
			enText = text
		}
		console.log('enText: ', enText);
		return enText;
	},
	decodeAES(enText) {
		const decrypt = CryptoJS.AES.decrypt(enText, key, {
			iv: iv,
			mode: CryptoJS.mode.CBC,
			padding: CryptoJS.pad.Pkcs7
		})

		const decryptedStr = decrypt.toString(CryptoJS.enc.Utf8)
		let text = decryptedStr.toString()
		if (text == '') {
			text = enText
		}
		console.log('text: ', text);
		return text
	},
}

export default utils
http://www.dtcms.com/a/94777.html

相关文章:

  • 密码学——知识问答
  • 【今日半导体行业分析】2025年3月27日
  • Python 练习项目:MBTI 命令行测试工具
  • 6.2、认证主要产品与应用
  • visual studio 指令安装Nuget包
  • 前后端常见模型以及相关环境配置介绍
  • 五、小白学JAVA-数组
  • java同时使用两个不同版本的jar包,基于maven-shade-plugin,非自定义类加载器方法
  • LeetCode讲解篇之456. 132 模式
  • 【Excalidraw画图】低成本搭建团队手绘白板工具:Excalidraw本地部署与远程流畅使用
  • 备赛蓝桥杯之第十六届模拟赛第1期职业院校组第四题:世纪危机(人口增长推算)
  • Unity映射计算器:使用平面投影
  • 第十二篇《火攻篇》:一把火背后的战争哲学与生存智慧
  • CentOS(最小化)安装之后,快速搭建Docker环境
  • 设计模式(创建型)-建造者模式
  • 《Python实战进阶》No36: 使用 Hugging Face 构建 NLP 模型
  • 【数据库事务、消息队列事务、Redis 事务、Spring 事务 详细分析】
  • 【新手初学】读取服务器敏感文件数据
  • Scavenge算法的优缺点问题
  • K8S学习之基础五十八:部署nexus服务
  • Android 问真八字-v2.1.7[看八字APP]
  • 系统调用 与 中断
  • 【零基础入门】一篇掌握Python中的字典(创建、访问、修改、字典方法)【详细版】
  • 数据结构之优先级队列
  • 【SQL Server数据库备份详细教程】
  • SpringSecurity Web安全配置:HttpSecurity与WebSecurityConfigurerAdapter
  • 树莓派(4B)使用教程-小白之路(NO.1)
  • 游戏引擎学习第185天
  • 02. Linux嵌入式系统学习笔记(二)(编写C程序进行文件操作、模块化编程makefile的使用)
  • 3.28日职001:大阪樱花vs浦和红钻,樱花攻守失衡,红钻有望全取三分